IAAFCDCIDescriptor is DEPRECATED. More...
Public Member Functions | |
HRESULT | Initialize () |
Initializes a newly allocated, empty IAAFCDCIDescriptor-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. |
IAAFCDCIDescriptor is DEPRECATED.
Please use IAAFCDCIDescriptor2.
The IAAFCDCIDescriptor 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
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pBlackReferenceLevel will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pBlackReferenceLevel | [out] Address to store the integer value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pColorRange will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pColorRange | [out] Address to store the integer value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pColorSiting will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pColorSiting | [out] Address to store the color siting value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pComponentWidth will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pComponentWidth | [out] Address to store the number of bits. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pHorizontalSubsampling will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pHorizontalSubsampling | [out] Address to store the integer value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, pPaddingBits will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pPaddingBits | [out] Address to store the number of bits. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pVerticalSubsampling will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pVerticalSubsampling | [out] Address to store the integer value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, *pWhiteReferenceLevel will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pWhiteReferenceLevel | [out] Address to store the integer value. |
HRESULT IAAFCDCIDescriptor::Initialize | ( | ) |
Initializes a newly allocated, empty IAAFCDCIDescriptor-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
AAFRESULT_ALREADY_INITIALIZED
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
BlackReferenceLevel | [in] Integer value. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
ColorRange | [in] Integer value. |
HRESULT IAAFCDCIDescriptor::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:
If this method fails, the ColorSiting property will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
ColorSiting | [in] Color siting value. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
ComponentWidth | [in] Number of bits. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
HorizontalSubsampling | [in] Integer value. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
PaddingBits | [in] Number of bits. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
VerticalSubsampling | [in] Integer value. |
HRESULT IAAFCDCIDescriptor::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
AAFRESULT_NOT_INITIALIZED
WhiteReferenceLevel | [in] Integer value. |