AAFA Developer Support

Public Member Functions
IAAFCDCIDescriptor2 Interface Reference

The IAAFCDCIDescriptor2 interface is implemented by objects which describe video essence formatted with one luminance component and two color-difference components. More...

List of all members.

Public Member Functions

HRESULT Initialize ()
 Initializes a newly allocated, empty IAAFCDCIDescriptor2-supporting object.
HRESULT SetComponentWidth ([in] aafInt32 ComponentWidth)
 Sets the ComponentWidth property.
HRESULT GetComponentWidth ([out] aafInt32 *pComponentWidth)
 Gets the ComponentWidth property.
HRESULT SetHorizontalSubsampling ([in] aafUInt32 HorizontalSubsampling)
 Sets the HorizontalSubsampling property.
HRESULT GetHorizontalSubsampling ([out] aafUInt32 *pHorizontalSubsampling)
 Gets the HorizontalSubsampling property.
HRESULT SetVerticalSubsampling ([in] aafUInt32 VerticalSubsampling)
 Sets the VerticalSubsampling property.
HRESULT GetVerticalSubsampling ([out] aafUInt32 *pVerticalSubsampling)
 Gets the VerticalSubsampling property.
HRESULT SetColorSiting ([in] aafColorSiting_t ColorSiting)
 Sets the ColorSiting property.
HRESULT GetColorSiting ([out] aafColorSiting_t *pColorSiting)
 Gets the ColorSiting property.
HRESULT SetBlackReferenceLevel ([in] aafUInt32 BlackReferenceLevel)
 Sets the BlackReferenceLevel property.
HRESULT GetBlackReferenceLevel ([out] aafUInt32 *pBlackReferenceLevel)
 Gets the BlackReferenceLevel property.
HRESULT SetWhiteReferenceLevel ([in] aafUInt32 WhiteReferenceLevel)
 Sets the WhiteReferenceLevel property.
HRESULT GetWhiteReferenceLevel ([out] aafUInt32 *pWhiteReferenceLevel)
 Gets the WhiteReferenceLevel property.
HRESULT SetColorRange ([in] aafUInt32 ColorRange)
 Sets the ColorRange property.
HRESULT GetColorRange ([out] aafUInt32 *pColorRange)
 Gets the ColorRange property.
HRESULT SetPaddingBits ([in] aafInt16 PaddingBits)
 Sets the PaddingBits property.
HRESULT GetPaddingBits ([out] aafInt16 *pPaddingBits)
 Gets the PaddingBits property.
HRESULT SetAlphaSamplingWidth ([in] aafUInt32 alphaSamplingWidth)
 Sets the AlphaSamplingWidth property.
HRESULT GetAlphaSamplingWidth ([out] aafUInt32 *pAlphaSamplingWidth)
 Gets the AlphaSamplingWidth property.
HRESULT SetReversedByteOrder ([in] aafBoolean_t reversedByteOrder)
 Sets the ReversedByteOrder property.
HRESULT GetReversedByteOrder ([out] aafBoolean_t *pReversedByteOrder)
 Gets the ReversedByteOrder property.

Detailed Description

The IAAFCDCIDescriptor2 interface is implemented by objects which describe video essence formatted with one luminance component and two color-difference components.

In addition to the specific error results listed for each method, all methods in this interface may also return one of the following values:

AAFRESULT_NOMEMORY

IAAFDigitalImageDescriptor

Definition at line 39991 of file AAF.idl.


Member Function Documentation

HRESULT IAAFCDCIDescriptor2::GetAlphaSamplingWidth ( [out] aafUInt32 *  pAlphaSamplingWidth)

Gets the AlphaSamplingWidth property.

Succeeds if all of the following are true:

  • pAlphaSamplingWidth is a valid pointer
  • the property is present.

If this method fails, pAlphaSamplingWidth will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pAlphaSamplingWidth is NULL.

AAFRESULT_PROP_NOT_PRESENT

  • the property is not present.
Parameters:
pAlphaSamplingWidth[out] Optional.
HRESULT IAAFCDCIDescriptor2::GetBlackReferenceLevel ( [out] aafUInt32 *  pBlackReferenceLevel)

Gets the BlackReferenceLevel property.

Specifies the digital luminance component value associated with black.

For CCIR-601/2, the value is 16 for 8-bit video and 64 for 10-bit video. For YUV, the value is 0. These are typical values; other values will not be disallowed by the reference implementation.

The same value is used in CDCI and RGBA when standard colorspace conversion is used.

Succeeds if all of the following are true:

  • pBlackReferenceLevel is a valid pointer.

If this method fails, *pBlackReferenceLevel will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pBlackReferenceLevel arg is NULL.
Parameters:
pBlackReferenceLevel[out] Address to store the integer value.
HRESULT IAAFCDCIDescriptor2::GetColorRange ( [out] aafUInt32 *  pColorRange)

Gets the ColorRange property.

Specifies the range of allowable digital chrominance component values. Chrominance values are unsigned and the range is centered on 128 for 8-bit video and 512 for 10-bit video. This value is used for both chrominance components.

For CCIR-601/2, the range is 225 for 8-bit video and 897 for 10-bit video. For YUV, the range is 255 for 8-bit video and 1023 for 10-bit video. These are typical values; other values will not be disallowed by the reference implementation.

Succeeds if all of the following are true:

  • pColorRange is a valid pointer.

If this method fails, *pColorRange will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pColorRange arg is NULL.
Parameters:
pColorRange[out] Address to store the integer value.
HRESULT IAAFCDCIDescriptor2::GetColorSiting ( [out] aafColorSiting_t *  pColorSiting)

Gets the ColorSiting property.

Specifies how to compute subsampled chrominance values.

Valid values are:

kCoSiting - To calculate subsampled pixels, take the preceding's pixels color value, discard the other color values and cosite the color with the first luminance value.

kAveraging - To calculate subsampled pixels, take the average of the two adjacent pixels' color values and site the color in the center of the luminance pixels.

kThreeTap - To calculate subsampled pixels, take 25 percent of the the previous pixel's color value, 50 percent of the first value and 25 percent of the second value. For the first value in a row, use 75 percent of that value since there is no previous value. The kThreeTap value is only meaningful when the HorizontalSubsampling propert has a value of 2.

Succeeds if all of the following are true:

  • pColorSiting is a valid pointer.

If this method fails, *pColorSiting will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pColorSiting arg is NULL.
Parameters:
pColorSiting[out] Address to store the color siting value.
HRESULT IAAFCDCIDescriptor2::GetComponentWidth ( [out] aafInt32 *  pComponentWidth)

Gets the ComponentWidth property.

Specifies the number of bits used to store each component. Typical values can be 8, 10, 12, 14, or 16, but others are permitted by the reference implementation. Each component in a sample is packed contiguously; the sample is filled with the number of bits specified by the optional PaddingBits property. If the PaddingBits property is omitted, samples are packed contiguously.

Succeeds if all of the following are true:

  • pComponentWidth is a valid pointer.

If this method fails, *pComponentWidth will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pComponentWidth arg is NULL.
Parameters:
pComponentWidth[out] Address to store the number of bits.
HRESULT IAAFCDCIDescriptor2::GetHorizontalSubsampling ( [out] aafUInt32 *  pHorizontalSubsampling)

Gets the HorizontalSubsampling property.

Specifies the ratio of luminance sampling to chrominance sampling in the horizontal direction. For 4:2:2 video, the value is 2, which means that there are twice as many luminance values as there are color-difference values. Another typical value is 1; however other values are permitted by the reference implementation.

Succeeds if all of the following are true:

  • pHorizontalSubsampling is a valid pointer.

If this method fails, *pHorizontalSubsampling will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pHorizontalSubsampling arg is NULL.
Parameters:
pHorizontalSubsampling[out] Address to store the integer value.
HRESULT IAAFCDCIDescriptor2::GetPaddingBits ( [out] aafInt16 *  pPaddingBits)

Gets the PaddingBits property.

Specifies the number of bits padded to each pixel.

Succeeds if all of the following are true:

  • pPaddingBits is a valid pointer.

If this method fails, pPaddingBits will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pPaddingBits arg is NULL.
Parameters:
pPaddingBits[out] Address to store the number of bits.
HRESULT IAAFCDCIDescriptor2::GetReversedByteOrder ( [out] aafBoolean_t *  pReversedByteOrder)

Gets the ReversedByteOrder property.

Succeeds if all of the following are true:

  • pReversedByteOrder is a valid pointer
  • the property is present.

If this method fails, pReversedByteOrder will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pReversedByteOrder is NULL.

AAFRESULT_PROP_NOT_PRESENT

  • the property is not present.
Parameters:
pReversedByteOrder[out] Optional.
HRESULT IAAFCDCIDescriptor2::GetVerticalSubsampling ( [out] aafUInt32 *  pVerticalSubsampling)

Gets the VerticalSubsampling property.

Specifies the ratio of luminance sampling to chrominance sampling in the vertical direction. For 4:2:2 video, the value is 2, which means that there are twice as many luminance values as there are color-difference values. Another typical value is 1; however other values are permitted by the reference implementation.

Succeeds if all of the following are true:

  • pVerticalSubsampling is a valid pointer.

If this method fails, *pVerticalSubsampling will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pVerticalSubsampling arg is NULL.
Parameters:
pVerticalSubsampling[out] Address to store the integer value.
HRESULT IAAFCDCIDescriptor2::GetWhiteReferenceLevel ( [out] aafUInt32 *  pWhiteReferenceLevel)

Gets the WhiteReferenceLevel property.

Specifies the digital luminance component component value associated with white.

For CCIR-601/2, the value is 235 for 8-bit video and 940 for 10-bit video. For YUV, the value is 255 for 8-bit video and 1023 for 10-bit video. These are typical values; other values will not be disallowed by the reference implementation.

Succeeds if all of the following are true:

  • pWhiteReferenceLevel is a valid pointer.

If this method fails, *pWhiteReferenceLevel will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • pWhiteReferenceLevel arg is NULL.
Parameters:
pWhiteReferenceLevel[out] Address to store the integer value.
HRESULT IAAFCDCIDescriptor2::Initialize ( )

Initializes a newly allocated, empty IAAFCDCIDescriptor2-supporting object.

This method must be called after allocation, and before any other method can be called.

Succeeds if:

This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_ALREADY_INITIALIZED

HRESULT IAAFCDCIDescriptor2::SetAlphaSamplingWidth ( [in] aafUInt32  alphaSamplingWidth)

Sets the AlphaSamplingWidth property.

Succeeds if all of the following are true:

If this method fails, the AlphaSamplingWidth property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)
Parameters:
alphaSamplingWidth[in] Optional.
HRESULT IAAFCDCIDescriptor2::SetBlackReferenceLevel ( [in] aafUInt32  BlackReferenceLevel)

Sets the BlackReferenceLevel property.

Specifies the digital luminance component component value associated with black.

For CCIR-601/2, the value is 16 for 8-bit video and 64 for 10-bit video. For YUV, the value is 0. These are typical values; other values will not be disallowed by the reference implementation.

The same value is used in CDCI and RGBA when standard colorspace conversion is used.

This property is optional. The default value is 0.

If this method fails, the BlackReferenceLevel property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
BlackReferenceLevel[in] Integer value.
HRESULT IAAFCDCIDescriptor2::SetColorRange ( [in] aafUInt32  ColorRange)

Sets the ColorRange property.

Specifies the range of allowable digital chrominance component values. Chrominance values are unsigned and the range is centered on 128 for 8-bit video and 512 for 10-bit video. This value is used for both chrominance components.

For CCIR-601/2, the range is 225 for 8-bit video and 897 for 10-bit video. For YUV, the range is 255 for 8-bit video and 1023 for 10-bit video. These are typical values; other values will not be disallowed by the reference implementation.

This property is optional. The default value is the maximum unsigned integer value for component size.

Succeeds if all of the following are true:

If this method fails, the ColorRange property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
ColorRange[in] Integer value.
HRESULT IAAFCDCIDescriptor2::SetColorSiting ( [in] aafColorSiting_t  ColorSiting)

Sets the ColorSiting property.

Specifies how to compute subsampled chrominance values.

Valid values are:

kCoSiting - To calculate subsampled pixels, take the preceding's pixels color value, discard the other color values and cosite the color with the first luminance value.

kAveraging - To calculate subsampled pixels, take the average of the two adjacent pixels' color values and site the color in the center of the luminance pixels.

kThreeTap - To calculate subsampled pixels, take 25 percent of the the previous pixel's color value, 50 percent of the first value and 25 percent of the second value. For the first value in a row, use 75 percent of that value since there is no previous value. The kThreeTap value is only meaningful when the HorizontalSubsampling propert has a value of 2.

This property is optional. The default value is kCoSiting.

Succeeds if all of the following are true:

  • ColorSiting is valid

If this method fails, the ColorSiting property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
ColorSiting[in] Color siting value.
HRESULT IAAFCDCIDescriptor2::SetComponentWidth ( [in] aafInt32  ComponentWidth)

Sets the ComponentWidth property.

Specifies the number of bits used to store each component. Typical values can be 8, 10, 12, 14, or 16, but others are permitted by the reference implementation. Each component in a sample is packed contiguously; the sample is filled with the number of bits specified by the optional PaddingBits property. If the PaddingBits property is omitted, samples are packed contiguously.

If this method fails, the ComponentWidth property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
ComponentWidth[in] Number of bits.
HRESULT IAAFCDCIDescriptor2::SetHorizontalSubsampling ( [in] aafUInt32  HorizontalSubsampling)

Sets the HorizontalSubsampling property.

Specifies the ratio of luminance sampling to chrominance sampling in the horizontal direction. For 4:2:2 video, the value is 2, which means that there are twice as many luminance values as there are color-difference values. Another typical value is 1; however other values are permitted by the reference implementation.

If this method fails, the HorizontalSubsampling property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
HorizontalSubsampling[in] Integer value.
HRESULT IAAFCDCIDescriptor2::SetPaddingBits ( [in] aafInt16  PaddingBits)

Sets the PaddingBits property.

Specifies the number of bits padded to each pixel.

This property is optional. The default value is 0.

If this method fails, the PaddingBits property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
PaddingBits[in] Number of bits.
HRESULT IAAFCDCIDescriptor2::SetReversedByteOrder ( [in] aafBoolean_t  reversedByteOrder)

Sets the ReversedByteOrder property.

Succeeds if all of the following are true:

If this method fails, the ReversedByteOrder property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)
Parameters:
reversedByteOrder[in] Optional.
HRESULT IAAFCDCIDescriptor2::SetVerticalSubsampling ( [in] aafUInt32  VerticalSubsampling)

Sets the VerticalSubsampling property.

Specifies the ratio of luminance sampling to chrominance sampling in the vertical direction. For 4:2:2 video, the value is 2, which means that there are twice as many luminance values as there are color-difference values. Another typical value is 1; however other values are permitted by the reference implementation.

If this method fails, the VerticalSubsampling property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
VerticalSubsampling[in] Integer value.
HRESULT IAAFCDCIDescriptor2::SetWhiteReferenceLevel ( [in] aafUInt32  WhiteReferenceLevel)

Sets the WhiteReferenceLevel property.

Specifies the digital luminance component component value associated with white.

For CCIR-601/2, the value is 235 for 8-bit video and 940 for 10-bit video. For YUV, the value is 255 for 8-bit video and 1023 for 10-bit video. These are typical values; other values will not be disallowed by the reference implementation.

This property is optional. The default value is the maximum unsigned interger value for component size.

If this method fails, the WhiteReferenceLevel property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

Parameters:
WhiteReferenceLevel[in] Integer value.

Generated on Wed Jul 4 2012 22:13:26 for AAF COM API by doxygen 1.7.4