1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/mmf/devvideo/h263.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -0,0 +1,510 @@
1.4 +// Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 +// All rights reserved.
1.6 +// This component and the accompanying materials are made available
1.7 +// 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
1.8 +// which accompanies this distribution, and is available
1.9 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +// Constants and structs specific to H.263. See the DevVideo specs for more details.
1.18 +//
1.19 +//
1.20 +
1.21 +#ifndef __DEVVIDEO_H263_H__
1.22 +#define __DEVVIDEO_H263_H__
1.23 +
1.24 +#include <e32base.h>
1.25 +
1.26 +
1.27 +/**
1.28 +Specifies the H263 picture type.
1.29 +@publishedAll
1.30 +@released
1.31 +*/
1.32 +enum TH263PictureType
1.33 + {
1.34 + /**INTRA picture*/
1.35 + EH263PictureTypeI = 0x01,
1.36 + /**INTER picture*/
1.37 + EH263PictureTypeP = 0x02,
1.38 + /**B picture according to H.263 Annex O*/
1.39 + EH263PictureTypeB = 0x04,
1.40 + /**EI picture according to H.263 Annex O*/
1.41 + EH263PictureTypeEI = 0x08,
1.42 + /**EP picture according to H.263 Annex O*/
1.43 + EH263PictureTypeEP = 0x10
1.44 + };
1.45 +
1.46 +/**
1.47 +These enumerations can be used in codec capability indication and/or bitstream property indication.
1.48 +When used as part of an encoder capability indication, a signalled value indicates the capability
1.49 +of an encoder to produce such supplemental information to the bitstream and the additional meanings
1.50 +as specified below. When used as part of a decoder capability indication, a signalled value
1.51 +indicates the capability of a decoder to react to such supplemental information in a way as
1.52 +specified below. If a decoder does not have such capability, it shall be able to parse and discard
1.53 +the supplemental information. When used as part of a bitstream property indication, a non-signalled
1.54 +value indicates the absence of such information in the bitstream and a signalled value indicates
1.55 +the possibility of having such information in the bitstream.
1.56 +@publishedAll
1.57 +@released
1.58 +*/
1.59 +enum TH263SupplementalInformation
1.60 + {
1.61 + /**
1.62 + encoder capability: no meaning
1.63 + decoder capability: no meaning
1.64 + bitstream property: existence of FTYPE equal to 1
1.65 + */
1.66 + EH263SEIDoNothing = 0x00000001,
1.67 +
1.68 + /**
1.69 + encoder capability: no meaning
1.70 + decoder capability: capability to freeze displayed picture according to subclause L.4 of H.263capability to release frozen displayed picture as a response to bit 5 of PTYPE
1.71 + bitstream property: existence of FTYPE equal to 2
1.72 + */
1.73 + EH263SEIFullPictureFreeze = 0x00000002,
1.74 +
1.75 + /**
1.76 + encoder capability: no meaning
1.77 + decoder capability: capability to freeze displayed picture partially (subclause L.5 of H.263)
1.78 + bitstream property: existence of FTYPE equal to 3
1.79 + */
1.80 + EH263SEIPartialPictureFreeze = 0x00000004,
1.81 +
1.82 + /**
1.83 + encoder capability: no meaning
1.84 + decoder capability: capability to freeze and resize displayed picture partially (H.263 L.6)
1.85 + bitstream property: existence of FTYPE equal to 4
1.86 + */
1.87 + EH263SEIResizingPartialPictureFreeze = 0x00000008,
1.88 +
1.89 + /**
1.90 + encoder capability: no meaning
1.91 + decoder capability: capability to release partially frozen picture (subclause L.7 of H.263)
1.92 + bitstream property: existence of FTYPE equal to 5
1.93 + */
1.94 + EH263SEIPartialPictureFreezeRelease = 0x00000010,
1.95 +
1.96 + /**
1.97 + encoder capability: no meaning
1.98 + decoder capability: no meaning
1.99 + bitstream property: existence of FTYPE equal to 6
1.100 + */
1.101 + EH263SEIFullPictureSnapshotTag = 0x00000020,
1.102 +
1.103 + /**
1.104 + encoder capability: no meaning
1.105 + decoder capability: no meaning
1.106 + bitstream property: existence of FTYPE equal to 7
1.107 + */
1.108 + EH263SEIPartialPictureSnapshotTag = 0x00000040,
1.109 +
1.110 + /**
1.111 + encoder capability: no meaning
1.112 + decoder capability: no meaning
1.113 + bitstream property: existence of FTYPE equal to 8
1.114 + */
1.115 + EH263SEIVideoTimeSegmentStartTag = 0x00000080,
1.116 +
1.117 + /**
1.118 + encoder capability: no meaning
1.119 + decoder capability: no meaning
1.120 + bitstream property: existence of FTYPE equal to 9
1.121 + */
1.122 + EH263SEIVideoTimeSegmentEndTag = 0x00000100,
1.123 +
1.124 + /**
1.125 + encoder capability: no meaning
1.126 + decoder capability: no meaning
1.127 + bitstream property: existence of FTYPE equal to 10
1.128 + */
1.129 + EH263SEIProgressiveRefinementStartTag = 0x00000200,
1.130 +
1.131 + /**
1.132 + encoder capability: no meaning
1.133 + decoder capability: no meaning
1.134 + bitstream property: existence of FTYPE equal to 11
1.135 + */
1.136 + EH263SEIProgressiveRefinementEndTag = 0x00000400,
1.137 +
1.138 + /**
1.139 + encoder capability: no meaning
1.140 + decoder capability: operation according to sublause L.14 of H.263
1.141 + bitstream property: existence of FTYPE equal to 12
1.142 + */
1.143 + EH263SEIChromaKeying = 0x00000800,
1.144 +
1.145 + /**
1.146 + encoder capability: use of the fixed-point IDCT algorithm specified in Annex W of H.263
1.147 + decoder capability: use of the fixed-point IDCT algorithm specified in Annex W of H.263
1.148 + bitstream property: existence of FTYPE equal to 13
1.149 + */
1.150 + EH263SEIFixedPointIDCT = 0x00001000,
1.151 +
1.152 + /**
1.153 + encoder capability: no meaning
1.154 + decoder capability: no meaning
1.155 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 0
1.156 + */
1.157 + EH263SEIArbitraryBinaryData = 0x00002000,
1.158 +
1.159 + /**
1.160 + encoder capability: no meaning
1.161 + decoder capability: no meaning
1.162 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 1
1.163 + */
1.164 + EH263SEIArbitraryText = 0x00004000,
1.165 +
1.166 + /**
1.167 + encoder capability: no meaning
1.168 + decoder capability: no meaning
1.169 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 2
1.170 + */
1.171 + EH263SEICopyrightText = 0x00008000,
1.172 +
1.173 + /**
1.174 + encoder capability: no meaning
1.175 + decoder capability: capability of display caption text as specified in subclause W.6.3.5 of H.263
1.176 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 3
1.177 + */
1.178 + EH263SEICaptionText = 0x00010000,
1.179 +
1.180 + /**
1.181 + encoder capability: no meaning
1.182 + decoder capability: no meaning
1.183 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 4
1.184 + */
1.185 + EH263SEIVideoDescriptionText = 0x00020000,
1.186 +
1.187 + /**
1.188 + encoder capability: no meaning
1.189 + decoder capability: no meaning
1.190 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 5
1.191 + */
1.192 + EH263SEIUniformResourceIdentifierText = 0x00040000,
1.193 +
1.194 + /**
1.195 + encoder capability: capability to repeat the current picture header (subclause W.6.3.7 of H.263)
1.196 + decoder capability: capability to recover a corrupted picture header with a repeated one
1.197 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 6
1.198 + */
1.199 + EH263SEICurrentPictureHeaderRepetition = 0x00080000,
1.200 +
1.201 + /**
1.202 + encoder capability: capability to repeat the previous picture header (subclause W.6.3.8 of H.263)
1.203 + decoder capability: capability to recover a corrupted or lost picture header with a repeated one
1.204 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 7
1.205 + */
1.206 + EH263SEIPreviousPictureHeaderRepetition = 0x00100000,
1.207 +
1.208 + /**
1.209 + encoder capability: capability to repeat the next picture header (W.6.3.9 of H.263)
1.210 + decoder capability: capability to recover a corrupted or lost picture header with a repeated one
1.211 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 8
1.212 + */
1.213 + EH263SEINextPictureHeaderRepetitionReliableTR = 0x00200000,
1.214 +
1.215 + /**
1.216 + encoder capability: capability to repeat the next picture header (W.6.3.10 of H.263)
1.217 + decoder capability: capability to recover a corrupted or lost picture header with a repeated one
1.218 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 9
1.219 + */
1.220 + EH263SEINextPictureHeaderRepetitionUnreliableTR = 0x00400000,
1.221 +
1.222 + /**
1.223 + encoder capability: capability to encode top fields of interlaced pictures
1.224 + decoder capability: capability to decode and display top fields of interlaced pictures (W.6.3.11of H.263)
1.225 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 10
1.226 + */
1.227 + EH263SEITopInterlacedFieldIndication = 0x00800000,
1.228 +
1.229 + /**
1.230 + encoder capability: capability to encode bottom fields of interlaced pictures
1.231 + decoder capability: capability to decode and display bottom fields of interlaced pictures (W.6.3.11of H.263)
1.232 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 10
1.233 + */
1.234 + EH263SEIBottomInterlacedFieldIndication = 0x01000000,
1.235 +
1.236 + /**
1.237 + encoder capability: capability to transmit picture numbers (subclause W.6.3.12 of H.263)
1.238 + decoder capability: capability to indicate reference picture losses from missing picture numbers
1.239 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 12
1.240 + */
1.241 + EH263SEIPictureNumber = 0x02000000,
1.242 +
1.243 + /**
1.244 + encoder capability: capability to generate spare reference picture information (W.6.3.13 of H.263)
1.245 + decoder capability: capability to use a spare reference picture in absence of real reference picture
1.246 + bitstream property: existence of FTYPE equal to 14 and MTYPE equal to 13
1.247 + */
1.248 + EH263SEISpareReferencePictures = 0x04000000
1.249 + };
1.250 +
1.251 +
1.252 +/**
1.253 +H.263 picture header.
1.254 +@publishedAll
1.255 +@released
1.256 +*/
1.257 +class TH263PictureHeader
1.258 + {
1.259 +public:
1.260 + /**
1.261 + Indicates the temporal reference. iTemporalReference is equal to the value of TR or the value
1.262 + of (ETR << 8) + TR if ETR is present in the picture header.
1.263 + */
1.264 + TUint iTemporalReference;
1.265 +
1.266 + /**
1.267 + iLongTermPicture equal to ETrue indicates that the picture has been marked as a long-term
1.268 + picture according to the memory management control operation (MMCO) commands as specified
1.269 + in Annex U of H.263. Otherwise the picture is not a long-term picture.
1.270 + */
1.271 + TBool iLongTermPicture;
1.272 +
1.273 + /**
1.274 + iSplitScreen is equal to the value of bit 3 of PTYPE.
1.275 + */
1.276 + TBool iSplitScreen;
1.277 +
1.278 + /**
1.279 + iDocumentCamera is equal to the value of bit 4 of PTYPE.
1.280 + */
1.281 + TBool iDocumentCamera;
1.282 +
1.283 + /**
1.284 + iFreezePictureRelease is equal to the value of bit 5 of PTYPE.
1.285 + */
1.286 + TBool iFreezePictureRelease;
1.287 +
1.288 + /**
1.289 + Indicates the picture coding type. iPictureType is set according to the picture header as one
1.290 + of the values defined in TH263PictureType.
1.291 + */
1.292 + TH263PictureType iPictureType;
1.293 +
1.294 + /**
1.295 + Indicates the initial value of the quantization parameter. iPQuant is equal to the value of
1.296 + the PQUANT syntax element.
1.297 + */
1.298 + TUint iPQuant;
1.299 +
1.300 + /**
1.301 + Indicates the presence of the extended PTYPE field in the picture layer. The extended PTYPE
1.302 + field is specified in ITU-T Recommendation H.263 version 2 and later. iPlusPType is equal to 1
1.303 + if bits 6 - 8 of PTYPE are equal to '111'. Otherwise, iPlusPType is equal to 0.
1.304 + */
1.305 + TBool iPlusPType;
1.306 +
1.307 + /**
1.308 + Indicates the presence of the full extended PTYPE field in the picture layer. If iPlusPType is
1.309 + EFalse, the value of of iUpdateFullExtendedPType is not valid. Otherwise,
1.310 + iUpdateFullExtendedPType is equal to the value of the UFEP syntax element.
1.311 + */
1.312 + TBool iUpdateFullExtendedPType;
1.313 +
1.314 + /**
1.315 + Pixel aspect ratio numerator and denominator respectively. The pixel aspect ratio is defined as
1.316 + iAspectRatioNum/iAspectRatioDenom, where the values are positive integers and relatively prime.
1.317 + If iPlusPType is equal to 0, or iPlusPType is ETrue and iUpdateFullExtendedPType is ETrue and
1.318 + bits 1 - 3 of the OPPTYPE syntax element are not equal to '110', iAspectRatioNum shall be equal
1.319 + to 12 and iAspectRatioDenom shall be equal to 11 (as specified in subclause 4.1 of ITU-T
1.320 + Recommendation H.263). If iPlusPType is ETrue and iUpdateFullExtendedPType is ETrue and bits
1.321 + 1 - 3 of the OPPTYPE syntax element are equal to '110', the values of iAspectRatioNum and
1.322 + iAspectRatioDenom are set as specified in subclauses 5.1.5 and 5.1.6 of ITU-T Recommendation
1.323 + H.263. Otherwise (iPlusPType is ETrue and iUpdateFullExtendedPType is EFalse), the values of
1.324 + iAspectRatioNum and iAspectRatioDenom are not valid.
1.325 + */
1.326 + TUint iAspectRatioNum;
1.327 +
1.328 + /**
1.329 + Pixel aspect ratio numerator and denominator respectively. The pixel aspect ratio is defined as
1.330 + iAspectRatioNum/iAspectRatioDenom, where the values are positive integers and relatively prime.
1.331 + If iPlusPType is equal to 0, or iPlusPType is ETrue and iUpdateFullExtendedPType is ETrue and
1.332 + bits 1 - 3 of the OPPTYPE syntax element are not equal to '110', iAspectRatioNum shall be equal
1.333 + to 12 and iAspectRatioDenom shall be equal to 11 (as specified in subclause 4.1 of ITU-T
1.334 + Recommendation H.263). If iPlusPType is ETrue and iUpdateFullExtendedPType is ETrue and bits
1.335 + 1 - 3 of the OPPTYPE syntax element are equal to '110', the values of iAspectRatioNum and
1.336 + iAspectRatioDenom are set as specified in subclauses 5.1.5 and 5.1.6 of ITU-T Recommendation
1.337 + H.263. Otherwise (iPlusPType is ETrue and iUpdateFullExtendedPType is EFalse), the values of
1.338 + iAspectRatioNum and iAspectRatioDenom are not valid.
1.339 + */
1.340 + TUint iAspectRatioDenom;
1.341 +
1.342 + /**
1.343 + Picture clock frequency numerator and denominator respectively. The picture clock frequency
1.344 + for temporal reference is defined as iPictureClockFrequencyRate / iPictureClockFrequencyScale
1.345 + in floating point arithmetic and where the values are positive integers and relatively prime.
1.346 + If iPlusPType is equal to 0, or iPlusPType is equal to 1 and iUpdateFullExtendedPType is equal
1.347 + to 1 and bit 4 of the OPPTYPE syntax element is equal to 0, iPictureClockFrequencyRate shall be
1.348 + equal to 30000 and iPictureClockFrequencyScale shall be equal to 1001 (as specified in subclause
1.349 + 4.1 of ITU-T Recommendation H.263). If iPlusPType is equal to 1 and iUpdateFullExtendedPType is
1.350 + equal to 1 and bit 4 of the OPPTYPE syntax element is equal to 1, the values of
1.351 + iPictureClockFrequencyRate and iPictureClockFrequencyScale are set as specified in subclause
1.352 + 5.1.7 of ITU-T Recommendation H.263. Otherwise (iPlusPType is equal to 1 and
1.353 + iUpdateFullExtendedPType is equal to 0), the values of iPictureClockFrequencyRate and
1.354 + iPictureClockFrequencyScale are not valid.
1.355 + */
1.356 + TUint iPictureClockFrequencyRate;
1.357 +
1.358 + /**
1.359 + Picture clock frequency numerator and denominator respectively. The picture clock frequency
1.360 + for temporal reference is defined as iPictureClockFrequencyRate / iPictureClockFrequencyScale
1.361 + in floating point arithmetic and where the values are positive integers and relatively prime.
1.362 + If iPlusPType is equal to 0, or iPlusPType is equal to 1 and iUpdateFullExtendedPType is equal
1.363 + to 1 and bit 4 of the OPPTYPE syntax element is equal to 0, iPictureClockFrequencyRate shall be
1.364 + equal to 30000 and iPictureClockFrequencyScale shall be equal to 1001 (as specified in subclause
1.365 + 4.1 of ITU-T Recommendation H.263). If iPlusPType is equal to 1 and iUpdateFullExtendedPType is
1.366 + equal to 1 and bit 4 of the OPPTYPE syntax element is equal to 1, the values of
1.367 + iPictureClockFrequencyRate and iPictureClockFrequencyScale are set as specified in subclause
1.368 + 5.1.7 of ITU-T Recommendation H.263. Otherwise (iPlusPType is equal to 1 and
1.369 + iUpdateFullExtendedPType is equal to 0), the values of iPictureClockFrequencyRate and
1.370 + iPictureClockFrequencyScale are not valid.
1.371 + */
1.372 + TUint iPictureClockFrequencyScale;
1.373 + };
1.374 +
1.375 +/**
1.376 +This class is used to signal decoder or encoder capabilities or bitstream properties.
1.377 +@publishedAll
1.378 +@released
1.379 +*/
1.380 +class TH263VideoCapability
1.381 + {
1.382 +public:
1.383 + /**
1.384 + When part of a codec capability indication, iProfileLevel[ProfileNumber] indicates the
1.385 + maximum processing level that a decoder or an encoder supports for a particular profile
1.386 + indicated by ProfileNumber. A negative value indicates that the profile is not supported.
1.387 + When part of a stream property indication, iProfileLevel[ProfileNumber] indicates the maximum
1.388 + processing level that is present in the stream for a particular profile indicated by
1.389 + ProfileNumber. A negative value indicates that the stream does not contain data coded according
1.390 + to the indicated profile.
1.391 + */
1.392 + TInt iProfileLevel[9];
1.393 +
1.394 + /**
1.395 + When equal to ETrue, indicating that it is allowed to use PLUSPTYPE (specified in the 1998
1.396 + version of H.263) to indicate custom picture sizes or clock frequencies. When equal to EFalse,
1.397 + PLUSPTYPE shall not be used.
1.398 + */
1.399 + TBool iPLUSPTYPEAllowed;
1.400 +
1.401 + /**
1.402 + iSupplementalInformationCap indicates the supported supplemental enhancement functions. The
1.403 + value is a binary OR of values from TH263SupplementalInformation.
1.404 + */
1.405 + TUint32 iSupplementalInformationCap;
1.406 + };
1.407 +
1.408 +
1.409 +/**
1.410 +This class is used to set the encoder operation mode.
1.411 +@publishedAll
1.412 +@released
1.413 +*/
1.414 +class TH263VideoMode
1.415 + {
1.416 +public:
1.417 + /**
1.418 + Specifies the picture types allowed in the bitstream. The value is a binary OR of values from
1.419 + TH263PictureType. Signaled picture types that are not included in the prevailing coding profile
1.420 + are ignored.
1.421 + */
1.422 + TUint32 iAllowedPictureTypes;
1.423 +
1.424 + /**
1.425 + iForceRoundingTypeToZero equal to EFalse specifies that the value of the RTYPE bit (bit 6 of
1.426 + MPPTYPE) is not constrained. It is recommended to change the value of the RTYPE bit for each
1.427 + reference picture in error-free communication (subclause 5.1.4.3 of ITU-T H.263 Recommendation).
1.428 + iForceRoundingTypeToZero equal to ETrue specifies that the value of the RTYPE bit shall be equal
1.429 + to 0 or that the RTYPE field shall not be present in the picture layer. It is recommended to set
1.430 + iForceRoundingTypeToZero equal to ETrue (and consequently RTYPE equal to 0) in error-prone
1.431 + communication as recommended in section 4.2.6 of H.263 Appendix III [R6] and [R7].
1.432 + */
1.433 + TBool iForceRoundingTypeToZero;
1.434 +
1.435 + /**
1.436 + Specifies the frequency of picture header repetition as specified in this paragraph. If
1.437 + iPictureHeaderRepetition is equal to 0, picture headers are not repeated. Otherwise, a picture
1.438 + header is repeated, if the value of the GFID syntax element is not equal to the value of the
1.439 + GFID syntax element of the previous picture in bitstream order. If EDuRtpPayload data unit
1.440 + encapsulation is in use, a picture header is repeated the number of times indicated by the value
1.441 + of iPictureHeaderRepetition in those RTP payloads of the picture where the P bit according to
1.442 + RFC 2429 [R8] is set equal to 1 and which do not contain the original picture header. If
1.443 + EDuElementaryStream data unit encapsulation is in use, the picture header is repeated once in
1.444 + the supplemental enhancement information of the next picture as specified in subclause W.6.3.8
1.445 + of ITU-T Recommendation H.263 and section 4.2.6 of H.263 Appendix III [R6].
1.446 + */
1.447 + TUint iPictureHeaderRepetition;
1.448 +
1.449 + /**
1.450 + Specifies the interval of non-empty GOB headers in units of GOBs. The value of
1.451 + iGOBHeaderInterval is valid if no slice structured coding mode (Annex K or Annex V) is in use.
1.452 + If iGOBHeaderInterval is equal to 0 and an unlimited segment size is specified with the
1.453 + SetSegmentTargetSize method, the encoder should not generate GOB headers. If iGOBHeaderInterval
1.454 + is greater than 0 and an unlimited segment size is specified with the SetSegmentTargetSize
1.455 + method, the encoder should generate a non-empty GOB header for every iGOBHeaderInterval-th GOB.
1.456 + If SetSegmentTargetSize is used to set a limited segment size, the encoder should generate
1.457 + segments (i.e., insert non-empty GOB headers) so that the length of the segment is no larger
1.458 + than the target size in bytes and no larger than the GOB header frequency specified with the
1.459 + value of iGOBHeaderInterval.
1.460 + */
1.461 + TUint iGOBHeaderInterval;
1.462 + };
1.463 +
1.464 +/**
1.465 +H.263 HRD parameters.
1.466 +@publishedAll
1.467 +@released
1.468 +*/
1.469 +class TH263HrdParams
1.470 + {
1.471 +public:
1.472 + /**
1.473 + When iAnnexXConstraints is equal to EFalse, iBPPmaxKb, iB, and iRmax indicate the values of HRD
1.474 + parameters. When iAnnexXConstraints is equal to ETrue, the values of iBPPmaxKb, iB, and iRmax in
1.475 + this class are ignored but rather their values are specified in Annex X of ITU-T Recommendation
1.476 + H.263.
1.477 + */
1.478 + TBool iAnnexXConstraints;
1.479 +
1.480 + /**
1.481 + Signals the BPPmaxKb parameter of H.263. As specified in ITU-T Recommendation H.263. The number
1.482 + of bits created by coding any single picture shall not exceed a maximum value specified by the
1.483 + parameter BPPmaxKb that is measured in units of 1024 bits. The minimum value of BPPmaxKb is
1.484 + specified in Table 1 of ITU-T Recommendation H.263.
1.485 + */
1.486 + TUint iBPPmaxKb;
1.487 +
1.488 + /**
1.489 + Signals the B parameter of H.263 Annex B. As specified in Annex B of ITU-T Recommendation H.263.
1.490 + The value of B shall be equal to or greater than 4 * Rmax / PCF, where PCF is the picture clock
1.491 + frequency specified in subclause 5.1.7 of ITU-T Recommendation H.263. The HRD receiving buffer
1.492 + size is equal to (B + BPPmaxKb * 1024 bits).
1.493 + */
1.494 + TUint iB;
1.495 +
1.496 + /**
1.497 + Signals the maximum video bit rate in bits per second, i.e., the Rmax parameter of H.263 Annex B.
1.498 + */
1.499 + TUint iRmax;
1.500 + };
1.501 +
1.502 +/**
1.503 +H.263 redundant picture header.
1.504 +Points to a buffer to contain the redundant picture header in the orignal bitstream order. The
1.505 +buffer may be used by the MSL client in playback to pass the decapsulated redundant picture header
1.506 +from an RTP payload formatted according to RFC 2429, or used by the MSL client in recording to pass
1.507 +the picture header to the RTP encapsulator.
1.508 +@publishedAll
1.509 +@released
1.510 +*/
1.511 +typedef TPtr8* TH263RedundantPictureHeader;
1.512 +
1.513 +#endif