epoc32/include/mmf/devvideo/sorensonspark.h
branchSymbian2
changeset 2 2fe1408b6811
child 4 837f303aceeb
equal deleted inserted replaced
1:666f914201fb 2:2fe1408b6811
       
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // 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
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 // Constants and structs specific to Sorenson Spark.  See the DevVideo specs for more details.
       
    15 // 
       
    16 //
       
    17 
       
    18 #ifndef __DEVVIDEO_SORENSENSPARK_H__
       
    19 #define __DEVVIDEO_SORENSENSPARK_H__
       
    20 
       
    21 #include <e32base.h>
       
    22 
       
    23 /**
       
    24 Specifies the picture type.
       
    25 @publishedAll
       
    26 @released
       
    27 */
       
    28 enum TSparkPictureType
       
    29     {
       
    30     /**
       
    31     Indicates a keyframe
       
    32     */
       
    33     ESparkPictureTypeKey   = 0x01,
       
    34     /**
       
    35     Indicates a predicted or inter frame
       
    36     */
       
    37     ESparkPictureTypeP     = 0x02,
       
    38     /**
       
    39     Indicates a predicted frame that is disposable
       
    40     */
       
    41     ESparkPictureTypeDisp  = 0x04
       
    42     };
       
    43 
       
    44 /**
       
    45 Specifies action of deblocking filter
       
    46 @publishedAll
       
    47 @released
       
    48 */
       
    49 enum TSparkDeblocking
       
    50 	{
       
    51     /**
       
    52     Never deblock
       
    53     */
       
    54 	EDeblockNever		= 0x1,
       
    55     /**
       
    56     Always deblock
       
    57     */
       
    58 	EDeblockAlways		= 0x2,
       
    59     /**
       
    60     Apply deblocking as requested by video packet deblocking flag
       
    61     */
       
    62 	EDeblockAsIndicated = 0x4
       
    63 	};
       
    64 
       
    65 
       
    66 /**
       
    67 Settings to describe decompression
       
    68 @publishedAll
       
    69 @released
       
    70 */
       
    71 class TSparkDecompressSettings
       
    72 	{
       
    73 public:
       
    74 	/**
       
    75 	If this member is set to EDeblockNever the decompressor will never deblock the image even 
       
    76 	if the deblocking bit is set in the bitstream. If this member is set to EDeblockAlways the
       
    77 	decompressor will deblock the image even if the deblocking bit not set in the bitstream.
       
    78 	If this member is set to EDeblockAsIndicated then deblocking will only occur when the
       
    79 	deblocking bit in the bitstream is set to 1.
       
    80 	*/
       
    81     TSparkDeblocking iDeblockingMethod;
       
    82 	};
       
    83 
       
    84 
       
    85 /**
       
    86 Sorenson Spark video packet header
       
    87 @publishedAll
       
    88 @released
       
    89 */
       
    90 class TSparkPictureHeader
       
    91 	{
       
    92 public:
       
    93 	/**
       
    94 	Indicates the temporal reference, which is formed by incrementing the value in the previously transmitted
       
    95 	picture header by one, plus the number of non-transmitted pictures since the previously transmitted one.
       
    96 	*/
       
    97 	TUint iTemporalReference;
       
    98 	/**
       
    99 	Indicates the picture coding type. iPictureType is set according to the picture header as one of
       
   100 	the values defined in TSparkPictureType
       
   101 	*/
       
   102 	TSparkPictureType iPictureType;
       
   103 	/**
       
   104 	Requests use of deblocking filter
       
   105 	*/
       
   106 	TBool Deblocking;
       
   107 	/**
       
   108 	Indicates the initial value of the quantization parameter
       
   109 	*/
       
   110 	TUint iQuantizer;
       
   111 	};
       
   112 
       
   113 #endif