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

📄 umc_h264_defs.h

📁 这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数就可以编译该代码.
💻 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) 2003-2005 Intel Corporation. All Rights Reserved.////*/#ifndef __UMC_H264_DEFS_H__#define __UMC_H264_DEFS_H__#include "ippdefs.h"#include "ippvc.h"#include "ipps.h"namespace UMC{    typedef Ipp32s H264MBAddr;    ///////////////// H.264 Structures    struct H264MotionVector    {        Ipp16s  mvx;        Ipp16s  mvy;    };//4bytes    struct H264MacroblockRefIdxs    {        Ipp8s RefIdxs[16];                              // 16 bytes    };//16bytes    struct H264MacroblockMVFlags    {        Ipp8s MVFlags[16];                              // 16 bytes    };//16bytes    struct H264MacroblockMVs    {        H264MotionVector MotionVectors[16];      //64 bytes    };//64bytes    struct H264MacroblockCoeffsInfo    {        Ipp8u                numCoeff [24];            //24 bytes    };    struct H264MacroblockGlobalInfo    {        Ipp8u                sbtype[4];        Ipp16s               slice_id;        Ipp8u                mbtype;        Ipp8u                mb_aux_fields;    };//8 bytes    struct H264MacroblockLocalInfo    {        Ipp32u               cbp4x4;        Ipp32u               cbp_bits;        Ipp8u                sbdir[4];        Ipp8u                cbp;        Ipp8u                mbtypeBS;        Ipp8u                intra_chroma_mode;        Ipp8s                QP;    };//16 btytes    struct H264BlockLocation    {        Ipp32s              mb_num;        Ipp32s              block_num;    };//8 bytes    struct H264MacroblockNeighboursInfo    {        Ipp32s              mb_A;        Ipp32s              mb_B;        Ipp32s              mb_C;        Ipp32s              mb_D;    };//32 bytes    struct H264BlockNeighboursInfo    {        H264BlockLocation mbs_left[4];        H264BlockLocation mb_above;        H264BlockLocation mb_above_right;        H264BlockLocation mb_above_left;        H264BlockLocation mbs_left_chroma[2][2];        H264BlockLocation mb_above_chroma[2];        H264BlockLocation dummy[2];    };//128bytes    //this structure is present in each  frame    struct H264GlobalMacroblocksDescriptor    {        H264MacroblockMVs *MV[2];//MotionVectors L0 L1        H264MacroblockRefIdxs *RefIdxs[2];//Reference Indices L0 l1        H264MacroblockGlobalInfo *mbs;//macroblocks    };    //this structure is one for all    struct H264LocalMacroblockDescriptor    {        H264MacroblockMVs *MVDeltas[2];//MotionVectors Deltas L0 and L1        H264MacroblockMVFlags *MVFlags[2];//MotionVectors Flags L0 and L1        H264MacroblockCoeffsInfo *MacroblockCoeffsInfo; //info about num_coeffs in each block in the current  picture        H264MacroblockLocalInfo *mbs;//reconstuction info        H264MBAddr *active_next_mb_table;    };    struct H264CurrentMacroblockDescriptor    {        H264MacroblockMVs *MVs[4];//MV L0,L1, MVDeltas 0,1        H264MacroblockMVFlags *MVFlags[2];//MVFlags L0, L1        H264MacroblockRefIdxs *RefIdxs[2];//RefIdx L0, L1        H264MacroblockCoeffsInfo *MacroblockCoeffsInfo;        H264MacroblockNeighboursInfo CurrentMacroblockNeighbours;//mb neighbouring info        H264BlockNeighboursInfo CurrentBlockNeighbours;//block neighbouring info (if mbaff turned off remained static)        H264MacroblockGlobalInfo *GlobalMacroblockInfo;        H264MacroblockGlobalInfo *GlobalMacroblockPairInfo;        H264MacroblockLocalInfo *LocalMacroblockInfo;        H264MacroblockLocalInfo *LocalMacroblockPairInfo;    };    // The main decode loop over macroblocks is broken    // into two loops in the interest of cache localization,    // significantly improving performance on some systems.    // This define indicates how many macroblocks to process per loop    // iteration.} // end namespace UMC#endif // __UMC_H264_DEFS_H__

⌨️ 快捷键说明

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