williamr@2: // Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // Mda\Common\Video.h williamr@2: // This version forms part of the backwards compatible ImageConversion routines williamr@2: // williamr@2: // williamr@2: williamr@2: #ifndef __MDA_COMMON_VIDEO_H__ williamr@2: #define __MDA_COMMON_VIDEO_H__ williamr@2: williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: // Video data type Uid williamr@2: williamr@2: MDA_UID(KUidMdaMediaTypeVideo) williamr@2: MDA_UID(KUidMdaVideoFrameSettings) williamr@2: MDA_UID(KUidMdaVideoCurrentFrame) williamr@2: MDA_UID(KUidMdaDstPortSourceRect) williamr@2: MDA_UID(KUidMdaMbmClipFormat) williamr@2: MDA_UID(KUidMdaMbmCodec) williamr@2: MDA_UID(KUidMdaBmpClipFormat) williamr@2: MDA_UID(KUidMdaBmpCodec) williamr@2: MDA_UID(KUidMda1BppBmpCodec) williamr@2: MDA_UID(KUidMda4BppBmpCodec) williamr@2: MDA_UID(KUidMda8BppBmpCodec) williamr@2: MDA_UID(KUidMda24BppBmpCodec) williamr@2: MDA_UID(KUidMdaFbsBitmapDevice) williamr@2: MDA_UID(KUidMdaFbsBitmapHandle) williamr@2: MDA_UID(KUidMdaFbsBitmapMaskHandle) williamr@2: MDA_UID(KUidMdaJfifClipFormat) williamr@2: MDA_UID(KUidMdaJpgCodec) williamr@2: MDA_UID(KUidMdaJpgQTable) williamr@2: MDA_UID(KUidMdaJpgComment) williamr@2: MDA_UID(KUidMdaWbmpClipFormat) williamr@2: MDA_UID(KUidMdaWbmpCodec) williamr@2: MDA_UID(KUidMdaOtaClipFormat) williamr@2: MDA_UID(KUidMdaOtaCodec) williamr@2: MDA_UID(KUidMdaPngClipFormat) williamr@2: MDA_UID(KUidMdaPngCodec) williamr@2: MDA_UID(KUidMdaWmfClipFormat) williamr@2: MDA_UID(KUidMdaWmfApmClipFormat) williamr@2: MDA_UID(KUidMdaWmfClpClipFormat) williamr@2: MDA_UID(KUidMdaWmfCodec) williamr@2: MDA_UID(KUidMdaTiffLittleEndianClipFormat) williamr@2: MDA_UID(KUidMdaTiffBigEndianClipFormat) williamr@2: MDA_UID(KUidMdaTiffCodec) williamr@2: MDA_UID(KUidMdaIcoClipFormat) williamr@2: MDA_UID(KUidMdaIcoCodec) williamr@2: MDA_UID(KUidMdaGif87aClipFormat) williamr@2: MDA_UID(KUidMdaGif89aClipFormat) williamr@2: MDA_UID(KUidMdaGifCodec) williamr@2: williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@2: @released williamr@2: williamr@2: Video buffer settings. May be combined. williamr@2: */ williamr@2: enum TMdaVideoBufferSettings williamr@2: { williamr@2: /** Can only handle buffers whilst playing williamr@2: */ williamr@2: EMdaVideoBufferAtPlay = 0x0000000, williamr@2: /** Can handle buffers when primed williamr@2: */ williamr@2: EMdaVideoBufferAtPrime = 0x0000001, williamr@2: /** Must have two buffers for uninterrupted play williamr@2: */ williamr@2: EMdaVideoBufferDouble = 0x0000002, williamr@2: /** Will supply buffers for efficiency williamr@2: */ williamr@2: EMdaVideoBufferSupply = 0x0000004 williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Bmp Clip Format williamr@2: */ williamr@2: class TMdaBmpClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaBmpClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * 1 Bpp Bmp Codec williamr@2: */ williamr@2: class TMda1BppBmpCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMda1BppBmpCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * 4 Bpp Bmp Codec williamr@2: */ williamr@2: class TMda4BppBmpCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMda4BppBmpCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * 8 Bpp Bmp Codec williamr@2: */ williamr@2: class TMda8BppBmpCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMda8BppBmpCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * 24 Bpp Bmp Codec williamr@2: */ williamr@2: class TMda24BppBmpCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMda24BppBmpCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Jpeg settings williamr@2: */ williamr@2: class TMdaJpgSettings williamr@2: { williamr@2: public: williamr@2: inline TMdaJpgSettings(); // Defaults to EColor420 and 50 williamr@2: public: williamr@2: enum TColorSampling williamr@2: { williamr@2: EMonochrome, williamr@2: EColor420, williamr@2: EColor422, williamr@2: EColor444 williamr@2: }; williamr@2: public: williamr@2: TColorSampling iSampleScheme; williamr@2: TInt iQualityFactor; // 0 to 100 inclusive williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Jfif Clip Format williamr@2: */ williamr@2: class TMdaJfifClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaJfifClipFormat(); williamr@2: public: williamr@2: TMdaJpgSettings iSettings; williamr@2: }; williamr@2: williamr@2: williamr@2: /** @internalTechnology */ williamr@2: const TInt KMdaJpgQTableEntries = 64; williamr@2: williamr@2: class TMdaJpgQTable : public TMdaPackage williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Jpeg Quantization table - in direct format williamr@2: */ williamr@2: { williamr@2: public: williamr@2: inline TMdaJpgQTable(); williamr@2: public: williamr@2: enum TQTableIndex { ELumaTable = 0, EChromaTable = 1 }; williamr@2: public: williamr@2: TInt iTableIndex; williamr@2: TBuf8 iEntries; williamr@2: }; williamr@2: williamr@2: williamr@2: /** @deprecated */ williamr@2: const TInt KJpgCommentBufferSize = 256; williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Jpeg comment williamr@2: */ williamr@2: class TMdaJpgComment : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaJpgComment(); williamr@2: public: williamr@2: TInt iCommentIndex; // Comment block to set/query williamr@2: TInt iCommentBufferIndex; // Index of KJpgCommentBufferSize block within comment to set/query williamr@2: TInt iTotalCommentLength; // Total size of comment being queried williamr@2: TBuf8 iComment; // Comment to set/query williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Mbm Clip Format williamr@2: */ williamr@2: class TMdaMbmClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaMbmClipFormat(); williamr@2: public: williamr@2: TDisplayMode iDisplayMode; williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wbmp Clip Format williamr@2: */ williamr@2: class TMdaWbmpClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaWbmpClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wbmp Codec williamr@2: */ williamr@2: class TMdaWbmpCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaWbmpCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Ota Clip Format williamr@2: */ williamr@2: class TMdaOtaClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaOtaClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Ota Codec williamr@2: */ williamr@2: class TMdaOtaCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaOtaCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Png Clip Format williamr@2: */ williamr@2: class TMdaPngClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaPngClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Png Codec williamr@2: */ williamr@2: class TMdaPngCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaPngCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wmf Clip Format williamr@2: */ williamr@2: class TMdaWmfClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaWmfClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wmf Apm Clip Format williamr@2: */ williamr@2: class TMdaWmfApmClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaWmfApmClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wmf Clp Clip Format williamr@2: */ williamr@2: class TMdaWmfClpClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaWmfClpClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Wmf Codec williamr@2: */ williamr@2: class TMdaWmfCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaWmfCodec(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Gif87a Clip Format williamr@2: */ williamr@2: class TMdaGif87aClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaGif87aClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Gif89a Clip Format (Animated) williamr@2: */ williamr@2: class TMdaGif89aClipFormat : public TMdaClipFormat williamr@2: { williamr@2: public: williamr@2: inline TMdaGif89aClipFormat(); williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @deprecated williamr@2: * williamr@2: * Gif Codec williamr@2: */ williamr@2: class TMdaGifCodec : public TMdaPackage williamr@2: { williamr@2: public: williamr@2: inline TMdaGifCodec(); williamr@2: }; williamr@2: williamr@2: #include williamr@2: williamr@2: #endif