/* * * Copyright 2015 Rockchip Electronics Co. LTD * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef __AVSD_SYNTAX_H__ #define __AVSD_SYNTAX_H__ #include "rk_type.h" //!< cavs decoder picture parameters structure typedef struct _PicParams_Avsd { //!< sequence header RK_U32 profileId; RK_U32 levelId; RK_U32 progressiveSequence; RK_U32 horizontalSize; RK_U32 verticalSize; RK_U32 chromaFormat; RK_U32 aspectRatio; RK_U32 frameRateCode; RK_U32 bitRateValue; RK_U32 lowDelay; RK_U32 bbvBufferSize; //!< sequence display extension header RK_U32 videoFormat; RK_U32 sampleRange; RK_U32 colorDescription; RK_U32 colorPrimaries; RK_U32 transferCharacteristics; RK_U32 matrixCoefficients; RK_U32 displayHorizontalSize; RK_U32 displayVerticalSize; //!< picture header RK_U32 picCodingType; RK_U32 bbvDelay; RK_U16 bbvDelayExtension; RK_U8 timeCodeFlag; RK_U32 timeCode; RK_U32 pictureDistance; RK_U32 progressiveFrame; RK_U32 pictureStructure; RK_U32 advancedPredModeDisable; RK_U32 topFieldFirst; RK_U32 repeatFirstField; RK_U32 fixedPictureQp; RK_U32 pictureQp; RK_U32 pictureReferenceFlag; RK_U32 skipModeFlag; RK_U32 loopFilterDisable; RK_S32 alphaOffset; RK_S32 betaOffset; //!< weighting quant, AVS Plus stuff RK_U32 weightingQuantFlag; RK_U32 chromaQuantParamDisable; RK_S32 chromaQuantParamDeltaCb; RK_S32 chromaQuantParamDeltaCr; RK_U32 weightingQuantParamIndex; RK_U32 weightingQuantModel; RK_S32 weightingQuantParamDelta1[6]; RK_S32 weightingQuantParamDelta2[6]; RK_U32 weightingQuantParam[6]; // wqP[m][6] //!< advance entropy coding RK_U32 aecEnable; //!< picture enhance RK_U32 noForwardReferenceFlag; RK_U32 pbFieldEnhancedFlag; } PicParams_Avsd, *LP_PicParams_Avsd; typedef struct avsd_syntax_t { PicParams_Avsd pp; RK_U8 *bitstream; RK_U32 bitstream_size; } AvsdSyntax_t; #endif /*__AVSD_SYNTAX_H__*/