swdec_mbdesc.h

来自「freescale i.mx31 BSP CE5.0全部源码」· C头文件 代码 · 共 83 行

H
83
字号
/*------------------------------------------------------------------------------
--                                                                            --
--       This software is confidential and proprietary and may be used        --
--        only as expressly authorized by a licensing agreement from          --
--                                                                            --
--                            Hantro Products Oy.                             --
--                                                                            --
--      In the event of publication, the following notice is applicable:      --
--                                                                            --
--                   (C) COPYRIGHT 2004 HANTRO PRODUCTS OY                    --
--                            ALL RIGHTS RESERVED                             --
--                                                                            --
--         The entire notice above must be reproduced on all copies.          --
--                                                                            --
--------------------------------------------------------------------------------
--
-- MODULE NAME: SwDec_MbDesc
--
-- DESCRIPTION: definition of decMbDesc_t structure containing macro
-- block specific information
--
-------------------------------------------------------------------------------*/


/*------------------------------------------------------------------------------

    Table of contents
   
    1. Include headers
    2. Module defines
    3. Data types
    4. Function prototypes

------------------------------------------------------------------------------*/

#ifndef SWDEC_MBDESC_H
#define SWDEC_MBDESC_H

/*------------------------------------------------------------------------------
    1. Include headers
------------------------------------------------------------------------------*/

#include "basetype.h"
    
/*------------------------------------------------------------------------------
    2. Module defines
------------------------------------------------------------------------------*/

/* masks for reading and writing into flags member of the structure */
enum {
    USE_INTRA_DC_VLC_MASK = 0x80,
    AC_PRED_FLAG_MASK     = 0x40,
    INTER_MB_MASK         = 0x20
};

/*------------------------------------------------------------------------------
    3. Data types
------------------------------------------------------------------------------*/

typedef struct
{
    u8 codedBits;   /* bits [0,5] indicate whether each block is coded or not,
                     * bit 5 for block 0, bit 4 for block 1 etc */
    u8 typeOfMb;    /* inter,interq,inter4v,intra,intraq,stuffing */
    u8 errorStatus; /* bit 7 indicates whether mb is concealed or not
                       bit 1 indicates if whole macro block was lost
                       bit 0 indicates if macro block texture was lost
                       (in data partitioned packets) */
    u8 flags;       /* bit 7 for use_intra_dc_vlc
                       bit 6 for ac_pred_flag
                       bit 5 for intra/inter */
    i16 data[8];    /* storage for motion vectors (inter) or
                       dc coeffs (6) (intra) */
    u32 QP;
} decMbDesc_t;

/*------------------------------------------------------------------------------
    4. Function prototypes
------------------------------------------------------------------------------*/

#endif

⌨️ 快捷键说明

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