⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umc_vc1_enc_tables.h

📁 audio-video-codecs.rar语音编解码器
💻 H
字号:
/* /////////////////////////////////////////////////////////////////////////////
//
//                  INTEL CORPORATION PROPRIETARY INFORMATION
//     This software is supplied under the terms of a license agreement or
//     nondisclosure agreement with Intel Corporation and may not be copied
//     or disclosed except in accordance with the terms of that agreement.
//          Copyright(c) 2007 Intel Corporation. All Rights Reserved.
//
//
//          VC-1 (VC1) encoder, coding tables
//
*/
#include "umc_defs.h"

#if defined (UMC_ENABLE_VC1_VIDEO_ENCODER)

#ifndef _ENCODER_VC1_TABLES_H_
#define _ENCODER_VC1_TABLES_H_
#include "ippvc.h"
#include "umc_vc1_enc_def.h"

namespace UMC_VC1_ENCODER
{
extern const Ipp32u DCLumaLowMotionEncTableVLC   [120*2];
extern const Ipp32u DCLumaHighMotionEncTableVLC  [120*2];
extern const Ipp32u DCChromaLowMotionEncTableVLC [120*2];
extern const Ipp32u DCCromaHighMotionEncTableVLC [120*2];

extern const Ipp8u HighMotionIntraIndexLevelLast0[31];
extern const Ipp8u HighMotionIntraIndexLevelLast1[38];
extern const Ipp8u LowMotionIntraIndexLevelLast0 [21];
extern const Ipp8u LowMotionIntraIndexLevelLast1 [27];
extern const Ipp8u MidRateIntraIndexLevelLast0   [15];
extern const Ipp8u MidRateIntraIndexLevelLast1   [21];
extern const Ipp8u HighRateIntraIndexLevelLast0  [15];
extern const Ipp8u HighRateIntraIndexLevelLast1  [17];

extern const Ipp16u LowMotionIntraTableVLC    [133*2];
extern const Ipp16u HighMotionIntraTableVLC   [186*2];
extern const Ipp16u MidRateIntraTableVLC      [103*2];
extern const Ipp16u HighRateIntraTableVLC     [163*2];

extern const Ipp8u Mode3SizeConservativeVLC[12*2];
extern const Ipp8u Mode3SizeEfficientVLC   [12*2];

extern const Ipp8u  frameTypeCodesVLC[2][4*2];
extern const Ipp8u  MVRangeCodesVLC     [4*2];
extern const Ipp8u  ACTableCodesVLC     [3*2];

extern const Ipp8u  DCQuantValues       [32];
extern const Ipp8u  quantValue          [32];

extern const Ipp8u LowMotionIntraDeltaLevelLast0[21];
extern const Ipp8u LowMotionIntraDeltaLevelLast1[27];
extern const Ipp8u LowMotionIntraDeltaRunLast0  [16+1];
extern const Ipp8u LowMotionIntraDeltaRunLast1  [4+1];

extern const Ipp8u HighMotionIntraDeltaLevelLast0[31];
extern const Ipp8u HighMotionIntraDeltaLevelLast1[38];
extern const Ipp8u HighMotionIntraDeltaRunLast0  [20];
extern const Ipp8u HighMotionIntraDeltaRunLast1  [7];

extern const Ipp8u MidRateIntraDeltaLevelLast0  [15];
extern const Ipp8u MidRateIntraDeltaLevelLast1  [21];
extern const Ipp8u MidRateIntraDeltaRunLast0    [28] ;
extern const Ipp8u MidRateIntraDeltaRunLast1    [9] ;

extern const Ipp8u HighRateIntraDeltaLevelLast0 [15] ;
extern const Ipp8u HighRateIntraDeltaLevelLast1 [17] ;
extern const Ipp8u HighRateIntraDeltaRunLast0   [57] ;
extern const Ipp8u HighRateIntraDeltaRunLast1   [5] ;

extern const Ipp32u* DCTables[2][2];
extern const sACTablesSet ACTablesSet[8];

extern const Ipp8u HorPrediction[VC1_ENC_BLOCK_SIZE];
extern const Ipp8u VerPrediction[VC1_ENC_BLOCK_SIZE];
extern const Ipp8u NonPrediction[VC1_ENC_BLOCK_SIZE];

extern const Ipp8u MVModeP [4][4*2];

extern const Ipp8u Bitplane6TableVLC[64*2];
extern const Ipp8u QuantProfileTableVLC[12*2];

extern const Ipp16u   MVDiffTableVLC0[55*2];
extern const Ipp16u   MVDiffTableVLC1[55*2];
extern const Ipp16u   MVDiffTableVLC2[55*2];
extern const Ipp16u   MVDiffTableVLC3[55*2];

extern const Ipp16u*  MVDiffTablesVLC[4];

extern const Ipp8u    MVSizeOffset[VC1_ENC_MV_LIMIT*3];
extern const Ipp8u    longMVLength[4*2];
extern const Ipp16s   MVRange[4*2];
extern const Ipp16u   VLCTableCBPCY_I[64*2];

extern const    eCodingSet  LumaCodingSetsIntra[2][3];
extern const    eCodingSet  ChromaCodingSetsIntra[2][3];
extern const    eCodingSet  CodingSetsInter[2][3];

extern const Ipp16u VLCTableCBPCY_PB_0[64*2];
extern const Ipp16u VLCTableCBPCY_PB_1[64*2];
extern const Ipp16u VLCTableCBPCY_PB_2[64*2];
extern const Ipp16u VLCTableCBPCY_PB_3[64*2];

extern const Ipp16u* VLCTableCBPCY_PB[4];

extern const Ipp8u    BMVTypeVLC[2][3*2];
extern const Ipp8u    BFractionVLC[9][8*2];
extern const Ipp8u    BFractionScaleFactor[9][8];

extern const  Ipp16s TTMBVLC_HighRate[2][4][3*2];            /*PQUANT<5 */
extern const  Ipp16s TTMBVLC_MediumRate[2][4][3*2];          /*5<=PQUANT<13 */
extern const  Ipp16s TTMBVLC_LowRate[2][4][3*2];                 /* PQUANT>=13 */

extern const Ipp8u  TTBLKVLC_HighRate[4][3*2];
extern const Ipp8u  TTBLKVLC_MediumRate[4][3*2];
extern const Ipp8u  TTBLKVLC_LowRate[4][3*2];

extern const Ipp8u  SubPattern4x4VLC_HighRate[16*2];           /*PQUANT<5 */
extern const Ipp8u  SubPattern4x4VLC_MediumRate[16*2] ;        /*5<=PQUANT<13 */
extern const Ipp8u  SubPattern4x4VLC_LowRate[16*2] ;           /* PQUANT>=13 */

extern const Ipp8u SubPatternMask[4][2];
extern const Ipp8u SubPattern8x4_4x8VLC[3*2];

const extern Ipp8u* ZagTables_I[3];
const extern Ipp8u* ZagTables[4];
const extern Ipp8u* ZagTables_Adv[4];
const extern Ipp8u VC1_Inter_8x8_Scan[64];

const extern eTransformType BlkTransformTypeTabl[4];
}
#endif
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -