class CVideoDecoderInfo : public CBase |
This class contains information about a single video decoder. Although it mainly contains static data, it is defined as a complete CBase-derived class since the data is relatively complex and proper memory management is necessary.
The objects are created by the video decoder hardware devices, and used by the MSL video client code.
Private Member Functions | |
---|---|
CVideoDecoderInfo(TUid, TVersion, TBool, TBool, const TSize &, TUint, TBool, TBool) | |
void | ConstructL(const TDesC &, const TDesC &, const TArray< CCompressedVideoFormat * > &, const TArray< TPictureRateAndSize > &, const TDesC8 &, const TDesC8 &) |
CVideoDecoderInfo | ( | TUid | aUid, |
TVersion | aVersion, | ||
TBool | aAccelerated, | ||
TBool | aSupportsDirectDisplay, | ||
const TSize & | aMaxPictureSize, | ||
TUint | aMaxBitrate, | ||
TBool | aSupportsPictureLoss, | ||
TBool | aSupportsSliceLoss | ||
) | [private] |
IMPORT_C TBool | Accelerated | ( | ) | const |
Returns whether the decoder is hardware-accelerated. A hardware-accelerated decoder can run on an application DSP or dedicated hardware. "True if the decoder is hardware-accelerated."
IMPORT_C void | AddSupportedScreenL | ( | TInt | aScreenNo | ) |
Adds the screen number into the list of screens supported by the decoder. leave
"KErrNoMemory when there is no memory to expand the list of supported screens. KErrNotSupported if the secondary screen display is not supported in Multimedia Framework."
TInt aScreenNo |
IMPORT_C const TDesC8 & | CodingStandardSpecificInfo | ( | ) | const |
Returns coding-standard specific information about the decoder. "Coding-standard specific information about the decoder. The data format is coding-standard specific, and defined separately. The reference is valid until the CVideoDecoderInfo object is destroyed."
void | ConstructL | ( | const TDesC & | aManufacturer, |
const TDesC & | aIdentifier, | |||
const TArray< CCompressedVideoFormat * > & | aSupportedFormats, | |||
const TArray< TPictureRateAndSize > & | aMaxPictureRates, | |||
const TDesC8 & | aCodingStandardSpecificInfo, | |||
const TDesC8 & | aImplementationSpecificInfo | |||
) | [private] |
const TDesC & aManufacturer | |
const TDesC & aIdentifier | |
const TArray< CCompressedVideoFormat * > & aSupportedFormats | |
const TArray< TPictureRateAndSize > & aMaxPictureRates | |
const TDesC8 & aCodingStandardSpecificInfo | |
const TDesC8 & aImplementationSpecificInfo |
IMPORT_C void | GetSupportedScreensL | ( | RArray< TInt > & | aSupportedScreens | ) | const |
Lists the screens supported by the decoder. leave
"KErrNotSupported if the secondary screen display is not supported in Multimedia Framework. KErrNoMemory when there is no memory to expand the list."
IMPORT_C const TDesC & | Identifier | ( | ) | const |
Returns the codec device manufacturer-specific identifier. The combination of the manufacturer and identifier uniquely identifies the hardware device. "The identifier as a standard Symbian descriptor. The reference is valid until the CVideoDecoderInfo object is destroyed."
IMPORT_C const TDesC8 & | ImplementationSpecificInfo | ( | ) | const |
Returns implementation-specific information about the decoder. "Implementation- specific information about the decoder. The data format is implementation-specific, and defined separately by the decoder supplier. The reference is valid until the CVideoDecoderInfo object is destroyed."
IMPORT_C const TDesC & | Manufacturer | ( | ) | const |
Returns the codec device manufacturer. "The manufacturer name as a standard Symbian descriptor. The reference is valid until the CVideoDecoderInfo object is destroyed."
IMPORT_C TUint | MaxBitrate | ( | ) | const |
Returns the maximum bit-rate supported by the decoder.
Note that if the decoder reports that it supports a certain profile and level, then it shall support all bitstreams corresponding to that profile/level. This method can be used to specify capabilities that are beyond the standard levels (for example some MPEG-4 bitstreams are encoded with bit rates that are higher than those specified by the profile/level of the bitstream).
"Maximum bit-rate supported, in bits per second. KMaxTUint32 can be used if the decoder has no bit-rate restrictions."
IMPORT_C const RArray< TPictureRateAndSize > & | MaxPictureRates | ( | ) | const |
Returns the maximum picture size/rate combinations supported by the decoder.
Video decoders can have different maximum picture rate limitations depending on the picture size used. Note that if the decoder reports that it supports a certain profile and level, then it shall support all bitstreams corresponding to that profile/level. This method can be used to specify capabilities that are beyond the standard levels (for example some MPEG-4 bitstreams are encoded with picture rates that are beyond those specified by the profile/level of the bitstream).
"A reference to an array of picture size/rate combinations. The reference remains valid until this object is deleted."
IMPORT_C const TSize & | MaxPictureSize | ( | ) | const |
Returns the maximum picture size the decoder supports.
Note that if the decoder reports that it supports a certain profile and level, then it shall support all bitstreams corresponding to that profile/level. This method can be used to specify capabilities that are beyond the standard levels (for example some MPEG-4 bitstreams are encoded with picture sizes that are larger than those specified by the profile/level of the bitstream).
"The maximum picture size supported. The reference is valid until the CVideoDecoderInfo object is destroyed."
IMPORT_C CVideoDecoderInfo * | NewL | ( | TUid | aUid, |
const TDesC & | aManufacturer, | |||
const TDesC & | aIdentifier, | |||
TVersion | aVersion, | |||
const TArray< CCompressedVideoFormat * > & | aSupportedFormats, | |||
TBool | aAccelerated, | |||
TBool | aSupportsDirectDisplay, | |||
const TSize & | aMaxPictureSize, | |||
TUint | aMaxBitrate, | |||
const TArray< TPictureRateAndSize > & | aMaxPictureRates, | |||
TBool | aSupportsPictureLoss, | |||
TBool | aSupportsSliceLoss, | |||
const TDesC8 & | aCodingStandardSpecificInfo = KNullDesC8 , | |||
const TDesC8 & | aImplementationSpecificInfo = KNullDesC8 | |||
) | [static] |
Creates and returns a new CVideoDecoderInfo object.
"A new CVideoDecoderInfo object."
leave
"This method may leave with one of the system-wide error codes."
TUid aUid | "The uid of the decoder." |
const TDesC & aManufacturer | "The video decoder manufacturer." |
const TDesC & aIdentifier | "The manufacturer-specific identifier for this video decoder." |
TVersion aVersion | "The version of this video decoder." |
const TArray< CCompressedVideoFormat * > & aSupportedFormats | "An array of the formats supported by the decoder. A copy will be taken of the array and the referenced CCompressedVideoFormat objects" @param "aAccelerated" "Whether this decoder is accelerated or not." @param "aSupportsDirectDisplay" "Whether this decoder supports direct display or not." @param "aMaxPictureSize" "The maximum picture size supported by the decoder." @param "aMaxBitrate" "The maximum bit rate supported by the decoder. Use KMaxTUint32 if there are no bit-rate restrictions." @param "aMaxPictureRates" "An array of the maximum picture size/rate combinations supported by the decoder." @param "aSupportsPictureLoss" "Whether the decoder supports picture loss indications." @param "aSupportsSliceLoss" "Whether the decoder supports slice loss indications." @param "aCodingStandardSpecificInfo" "Coding-standard specific information about the decoder." @param "aImplementationSpecificInfo" "Implementation-specific information about the decoder." |
TBool aAccelerated | |
TBool aSupportsDirectDisplay | |
const TSize & aMaxPictureSize | |
TUint aMaxBitrate | |
const TArray< TPictureRateAndSize > & aMaxPictureRates | |
TBool aSupportsPictureLoss | |
TBool aSupportsSliceLoss | |
const TDesC8 & aCodingStandardSpecificInfo = KNullDesC8 | |
const TDesC8 & aImplementationSpecificInfo = KNullDesC8 |
IMPORT_C void | SetSupportsContentProtected | ( | const TBool | aSetting | ) |
Sets a flag indicating whether the Decoder supports per picture content protection. E.g. Where content protection within a video stream can alter.
const TBool aSetting | "Set to TRUE to indicate decoder supports content protection. TVideoPicture::TVideoPictureOptions::EContentProtected TVideoInputBuffer::TVideoBufferOptions::EContentProtected |
IMPORT_C const RPointerArray< CCompressedVideoFormat > & | SupportedFormats | ( | ) | const |
Lists the video formats, including submodes, supported by the decoder. "A RPointerArray table of supported video formats (CCompressedVideoFormat). The reference is valid until the CVideoDecoderInfo object is destroyed."
IMPORT_C TBool | SupportsContentProtected | ( | ) | const |
Returns whether the Decoder supports per picture content protection. E.g. Where content protection within a video stream can alter. "True if the Decoder supports Content Protection." TVideoPicture::TVideoPictureOptions::EContentProtected TVideoInputBuffer::TVideoBufferOptions::EContentProtected
IMPORT_C TBool | SupportsDirectDisplay | ( | ) | const |
Returns whether the hardware device supports output directly to the screen. Output to memory buffers is always supported. "True if the hardware device supports direct screen output."
IMPORT_C TBool | SupportsFormat | ( | const CCompressedVideoFormat & | aFormat | ) | const |
Checks if the decoder supports the given format. "ETrue if the codec supports the given format, EFalse if not."
const CCompressedVideoFormat & aFormat | "The format to check. The reference is not used after the method returns." |
IMPORT_C TBool | SupportsPictureLoss | ( | ) | const |
Returns whether the decoder supports picture loss indications. If true, the decoder indicates lost pictures by calling MdvpoPictureLoss().
"True if the decoder supports picture loss indications."
IMPORT_C TBool | SupportsSliceLoss | ( | ) | const |
Returns whether the decoder supports slice loss indications. If true, the decoder indicates lost macroblocks by calling MdvpoSliceLoss().
"True if the decoder supports slice loss indications."
RArray< TPictureRateAndSize > | iMaxPictureRates | [private] |
RPointerArray< CCompressedVideoFormat > | iSupportedFormats | [private] |