Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: devvideorecord.h
Link against: devvideo.lib

This item is not part of the S60 3rd Edition SDK for Symbian OS, Feature Pack 2.

Class CVideoEncoderInfo

class CVideoEncoderInfo : public CBase;

Description

This class contains information about a video encoder hardware device and its capabilities. 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 encoder devices, and used by the MSL video client code.

Derivation

Members

Defined in CVideoEncoderInfo:
Accelerated(), CodingStandardSpecificInfo(), Identifier(), ImplementationSpecificInfo(), Manufacturer(), MaxBitrate(), MaxBitrateLayers(), MaxInLayerScalabilitySteps(), MaxPictureRates(), MaxPictureSize(), MaxUnequalErrorProtectionLevels(), NewL(), SupportedDataUnitEncapsulations(), SupportedDataUnitTypes(), SupportedInputFormats(), SupportedOutputFormats(), SupportedPictureOptions(), SupportsDirectCapture(), SupportsInputFormat(), SupportsOutputFormat(), SupportsPictureLoss(), SupportsSliceLoss(), SupportsSupplementalEnhancementInfo(), Uid(), Version(), ~CVideoEncoderInfo()

Inherited from CBase:
Delete(), Extension_(), operator new()


Construction and destruction


NewL()

static IMPORT_C CVideoEncoderInfo *NewL(TUid aUid, const TDesC &aManufacturer, const TDesC &aIdentifier, TVersion aVersion, TBool aAccelerated, TBool aSupportsDirectCapture, const TArray< TUncompressedVideoFormat > &aSupportedInputFormats, const TArray< CCompressedVideoFormat * > &aSupportedOutputFormats, const TSize &aMaxPictureSize, TUint32 aSupportedDataUnitTypes, TUint32 aSupportedDataUnitEncapsulations, TUint aMaxBitrateLayers, TBool aSupportsSupplementalEnhancementInfo, TUint aMaxUnequalErrorProtectionLevels, TUint aMaxBitRate, const TArray< TPictureRateAndSize > &aMaxPictureRates, TUint aMaxInLayerScalabilitySteps, TUint32 aSupportedPictureOptions, TBool aSupportsPictureLoss, TBool aSupportsSliceLoss, const TDesC8 &aCodingStandardSpecificInfo, const TDesC8 &aImplementationSpecificInfo);

Description

Creates and returns a new CVideoEncoderInfo object. All data passed in is copied on construction of the object.

Parameters

TUid aUid

The uid of the encoder.

const TDesC &aManufacturer

The video encoder manufacturer.

const TDesC &aIdentifier

The manufacturer-specific identifier for this encoder.

TVersion aVersion

The version of this encoder.

TBool aAccelerated

Whether this encoder is accelerated.

TBool aSupportsDirectCapture

Whether this encoder supports direct capture.

const TArray< TUncompressedVideoFormat > &aSupportedInputFormats

An array of the supported input formats.

const TArray< CCompressedVideoFormat * > &aSupportedOutputFormats

An array of the supported output formats.

const TSize &aMaxPictureSize

The maximum supported picture size.

TUint32 aSupportedDataUnitTypes

The supported data unit types.

TUint32 aSupportedDataUnitEncapsulations

The supported data unit encapsulations.

TUint aMaxBitrateLayers

The maximum number of bitrate layers supported.

TBool aSupportsSupplementalEnhancementInfo

Whether supplemental enhancement info is supported.

TUint aMaxUnequalErrorProtectionLevels

The maximum unequal error protection level supported.

TUint aMaxBitRate

The maximum bit rate supported.

const TArray< TPictureRateAndSize > &aMaxPictureRates

An array of the maximum picture size/rates supported.

TUint aMaxInLayerScalabilitySteps

The maximum in-layer scalability steps supported.

TUint32 aSupportedPictureOptions

The picture options supported.

TBool aSupportsPictureLoss

TBool aSupportsSliceLoss

const TDesC8 &aCodingStandardSpecificInfo

Coding standard specific info.

const TDesC8 &aImplementationSpecificInfo

Implementation specific info.

Return value

CVideoEncoderInfo *

A new CVideoEncoderInfo object.

Leave codes

This

method may leave with one of the system-wide error codes.


~CVideoEncoderInfo()

IMPORT_C ~CVideoEncoderInfo();

Description

Destructor.

[Top]


Member functions


Uid()

IMPORT_C TUid Uid() const;

Description

Returns the encoder UID.

Return value

TUid

"The encoder UID."


Version()

IMPORT_C TVersion Version() const;

Description

Returns the encoder version.

Return value

TVersion

"The encoder version."


Manufacturer()

IMPORT_C const TDesC &Manufacturer() const;

Description

Returns the encoder hardware device manufacturer.

Return value

const TDesC &

"The manufacturer name. The reference is valid until the CVideoEncoderInfo object is destroyed."


Identifier()

IMPORT_C const TDesC &Identifier() const;

Description

Returns the encoder hardware device manufacturer-specific identifier. The combination of the manufacturer and identifier uniquely identifies the plug-in.

Return value

const TDesC &

"The identifier. The reference is valid until the CVideoEncoderInfo object is destroyed."


Accelerated()

IMPORT_C TBool Accelerated() const;

Description

Returns whether the encoder is hardware-accelerated. Hardware-accelerated encoders can run on an application DSP or dedicated hardware.

Return value

TBool

"True if the encoder is hardware-accelerated."


SupportsDirectCapture()

IMPORT_C TBool SupportsDirectCapture() const;

Description

Returns whether the encoder supports direct capture. Encoders supporting direct capture can get the input pictures directly from a camera, possibly using an efficient hardware-dependent data path.

Return value

TBool

"True if the encoder supports direct capture."


SupportsInputFormat()

IMPORT_C TBool SupportsInputFormat(const TUncompressedVideoFormat &aFormat) const;

Description

Returns whether the encoder supports the given input format.

Parameters

const TUncompressedVideoFormat &aFormat

"The format to check."

Return value

TBool

"True if the encoder supports the given input format."


SupportedInputFormats()

IMPORT_C const RArray< TUncompressedVideoFormat > &SupportedInputFormats() const;

Description

Returns the input formats that the encoder supports.

Return value

const RArray< TUncompressedVideoFormat > &

"An RArray table of supported video formats (TUncompressedVideoFormat). The reference is valid until the CVideoEncoderInfo object is destroyed."


SupportsOutputFormat()

IMPORT_C TBool SupportsOutputFormat(const CCompressedVideoFormat &aFormat) const;

Description

Returns whether the encoder supports the given output format.

Parameters

const CCompressedVideoFormat &aFormat

"The format to check."

Return value

TBool

"True if the encoder supports the given output format."


SupportedOutputFormats()

IMPORT_C const RPointerArray< CCompressedVideoFormat > &SupportedOutputFormats() const;

Description

Returns the output formats that the encoder supports.

Return value

const RPointerArray< CCompressedVideoFormat > &

"An RArray table of supported video formats (CCompressedVideoFormat). The reference is valid until the CVideoEncoderInfo object is destroyed."


MaxPictureSize()

IMPORT_C const TSize &MaxPictureSize() const;

Description

Returns the maximum picture size the encoder supports.

Return value

const TSize &

"The maximum picture size supported. The reference is valid until the CVideoEncoderInfo object is destroyed."


SupportedDataUnitTypes()

IMPORT_C TUint32 SupportedDataUnitTypes() const;

Description

Returns the data unit types supported by the encoder.

Return value

TUint32

"Supported data unit types. The value is a binary OR of values from TVideoDataUnitType."


SupportedDataUnitEncapsulations()

IMPORT_C TUint32 SupportedDataUnitEncapsulations() const;

Description

Returns the data unit encapsulation types that the encoder supports.

Return value

TUint32

"Supported data unit encapsulation types. The value is a binary OR of values from TVideoDataUnitEncapsulation."


MaxBitrateLayers()

IMPORT_C TUint MaxBitrateLayers() const;

Description

Returns the maximum number of bit-rate scalability layers supported.

Return value

TUint

"Maximum number of bit-rate scalability layers supported, one (1) if layered scalability is not supported."


SupportsSupplementalEnhancementInfo()

IMPORT_C TBool SupportsSupplementalEnhancementInfo() const;

Description

Returns whether the encoder implements SendSupplementalInfoL(). If SendSupplementalInfoL() is implemented, the client can send supplemental enhancement information messages as binary strings using that method. If SendSupplementalInfoL() is not implemented, this is not possible, but the encoder can still generate and send coding standard or implementation specific supplemental enhancement information automatically.

Return value

TBool

"True if the encoder supports supplemental enhancement information."


MaxUnequalErrorProtectionLevels()

IMPORT_C TUint MaxUnequalErrorProtectionLevels() const;

Description

Returns the maximum number of unequal error protection levels supported.

Return value

TUint

"Maximum number of unequal error protection levels supported, one (1) if unequal error protection is not supported."


MaxBitrate()

IMPORT_C TUint MaxBitrate() const;

Description

Returns the maximum bit-rate supported by the encoder.

Return value

TUint

"Maximum bit-rate supported, in bits per second. KMaxTUint32 can be used if the encoder has no bit-rate restrictions."


MaxPictureRates()

IMPORT_C const RArray< TPictureRateAndSize > &MaxPictureRates() const;

Description

Returns the maximum picture size/rate combinations supported by the encoder. Video encoders can have different maximum picture rate limitations depending on the picture size used.

Return value

const RArray< TPictureRateAndSize > &

"A reference to an array of picture size/rate combinations. The reference remains valid until this object is deleted."


MaxInLayerScalabilitySteps()

IMPORT_C TUint MaxInLayerScalabilitySteps() const;

Description

Returns the maximum number of in-layer scalability steps supported.

Return value

TUint

"Maximum number of in-layer scalability steps supported, one (1) if in-layer scalability is not supported."


SupportedPictureOptions()

IMPORT_C TUint32 SupportedPictureOptions() const;

Description

Returns the input picture options that the encoder supports.

Return value

TUint32

"Supported input picture options, a bitwise OR of values from TVideoPicture::TVideoPictureOptions."


SupportsPictureLoss()

IMPORT_C TBool SupportsPictureLoss() const;

Description

Returns whether the encoder supports picture loss indications. If true, the encoder implements PictureLoss(), and recovers lost picture contents when it receives the indication.

Return value

TBool

"True if the encoder supports picture loss indications."


SupportsSliceLoss()

IMPORT_C TBool SupportsSliceLoss() const;

Description

Returns whether the encoder supports slice loss indications. If true, the encoder implements SliceLoss(), and recovers lost or damaged macroblocks when it receives the indication.

Return value

TBool

"True if the encoder supports slice loss indications."


CodingStandardSpecificInfo()

IMPORT_C const TDesC8 &CodingStandardSpecificInfo() const;

Description

Returns coding-standard specific information about the encoder.

Return value

const TDesC8 &

"Coding-standard specific information about the encoder. The data format is coding-standard specific, and defined separately. The reference is valid until the CVideoEncoderInfo object is destroyed."


ImplementationSpecificInfo()

IMPORT_C const TDesC8 &ImplementationSpecificInfo() const;

Description

Returns implementation-specific information about the encoder.

Return value

const TDesC8 &

"Implementation-specific information about the encoder. The data format is implementation-specific, and defined separately by the encoder supplier. The reference is valid until the CVideoEncoderInfo object is destroyed."