亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mbuffer.h

?? h.264 jm90 代碼,包括了所有的編解碼程序
?? H
字號:

/*!
 ***********************************************************************
 *  \file
 *      mbuffer.h
 *
 *  \brief
 *      Frame buffer functions
 *
 *  \author
 *      Main contributors (see contributors.h for copyright, address and affiliation details)
 *      - Karsten S黨ring          <suehring@hhi.de>
 ***********************************************************************
 */
#ifndef _MBUFFER_H_
#define _MBUFFER_H_

#include "global.h"

#define MAX_LIST_SIZE 33

//! definition a picture (field or frame)
typedef struct storable_picture
{
  PictureStructure structure;

  int         poc;
  int         top_poc;
  int         bottom_poc;
  int         frame_poc;
  int         order_num;
  int64       ref_pic_num        [MAX_NUM_SLICES][6][MAX_LIST_SIZE];
  int64       frm_ref_pic_num    [MAX_NUM_SLICES][6][MAX_LIST_SIZE];
  int64       top_ref_pic_num    [MAX_NUM_SLICES][6][MAX_LIST_SIZE];
  int64       bottom_ref_pic_num [MAX_NUM_SLICES][6][MAX_LIST_SIZE];
  unsigned    frame_num;
  int         pic_num;
  int         long_term_pic_num;
  int         long_term_frame_idx;

  int         is_long_term;
  int         used_for_reference;
  int         is_output;
  int         non_existing;

  int         max_slice_id;

  int         size_x, size_y, size_x_cr, size_y_cr;
  int         chroma_vector_adjustment;
  int         coded_frame;
  int         MbaffFrameFlag;
  unsigned    PicWidthInMbs;
  unsigned    PicSizeInMbs;

  imgpel **     imgY;          //!< Y picture component
  imgpel ***    imgUV;         //!< U and V picture components

  byte *      mb_field;      //!< field macroblock indicator

  int  **     slice_id;      //!< reference picture   [mb_x][mb_y]

  int  ***    ref_idx;       //!< reference picture   [list][subblock_x][subblock_y]

  int64 ***    ref_pic_id;    //!< reference picture identifier [list][subblock_x][subblock_y]
                             //   (not  simply index) 

  int64 ***    ref_id;    //!< reference picture identifier [list][subblock_x][subblock_y]
                             //   (not  simply index) 

  int  ****   mv;            //!< motion vector       [list][subblock_x][subblock_y][component]
  
  byte **     moving_block;
  byte **     field_frame;         //!< indicates if co_located is field or frame.
  
  struct storable_picture *top_field;     // for mb aff, if frame for referencing the top field
  struct storable_picture *bottom_field;  // for mb aff, if frame for referencing the bottom field
  struct storable_picture *frame;         // for mb aff, if field for referencing the combined frame

  int         slice_type;
  int         idr_flag;
  int         no_output_of_prior_pics_flag;
  int         long_term_reference_flag;
  int         adaptive_ref_pic_buffering_flag;

  int         frame_mbs_only_flag;
  int         frame_cropping_flag;
  int         frame_cropping_rect_left_offset;
  int         frame_cropping_rect_right_offset;
  int         frame_cropping_rect_top_offset;
  int         frame_cropping_rect_bottom_offset;
  int         qp;
  int         slice_qp_delta;
  DecRefPicMarking_t *dec_ref_pic_marking_buffer;                    //!< stores the memory management control operations

} StorablePicture;


//! definition a picture (field or frame)
typedef struct colocated_params
{
//  byte *      mb_field;      //!< field macroblock indicator
  int         mb_adaptive_frame_field_flag;
  int         size_x, size_y;

  int64       ref_pic_num[6][MAX_LIST_SIZE];  

  int  ***    ref_idx;       //!< reference picture   [list][subblock_x][subblock_y]
  int64 ***    ref_pic_id;    //!< reference picture identifier [list][subblock_x][subblock_y]
  int  ****   mv;            //!< motion vector       [list][subblock_x][subblock_y][component]  
  byte **     moving_block;

  // Top field params
  int64       top_ref_pic_num[6][MAX_LIST_SIZE];  
  int  ***    top_ref_idx;       //!< reference picture   [list][subblock_x][subblock_y]
  int64 ***    top_ref_pic_id;    //!< reference picture identifier [list][subblock_x][subblock_y]
  int  ****   top_mv;            //!< motion vector       [list][subblock_x][subblock_y][component]  
  byte **     top_moving_block;

  // Bottom field params
  int64       bottom_ref_pic_num[6][MAX_LIST_SIZE];  
  int  ***    bottom_ref_idx;       //!< reference picture   [list][subblock_x][subblock_y]
  int64 ***    bottom_ref_pic_id;    //!< reference picture identifier [list][subblock_x][subblock_y]
  int  ****   bottom_mv;            //!< motion vector       [list][subblock_x][subblock_y][component] 
  byte **     bottom_moving_block;
  
  int         is_long_term;
  byte **     field_frame;         //!< indicates if co_located is field or frame.
  //struct colocated_params *top_field;     // for mb aff, if frame for referencing the top field
  //struct colocated_params *bottom_field;  // for mb aff, if frame for referencing the bottom field
  //struct colocated_params *frame;         // for mb aff, if field for referencing the combined frame

} ColocatedParams;

//! Frame Stores for Decoded Picture Buffer
typedef struct frame_store
{
  int       is_used;                //!< 0=empty; 1=top; 2=bottom; 3=both fields (or frame)
  int       is_reference;           //!< 0=not used for ref; 1=top used; 2=bottom used; 3=both fields (or frame) used
  int       is_long_term;           //!< 0=not used for ref; 1=top used; 2=bottom used; 3=both fields (or frame) used
  int       is_orig_reference;      //!< original marking by nal_ref_idc: 0=not used for ref; 1=top used; 2=bottom used; 3=both fields (or frame) used

  int       is_non_existent;

  unsigned  frame_num;
  int       frame_num_wrap;
  int       long_term_frame_idx;
  int       is_output;
  int       poc;

  StorablePicture *frame;
  StorablePicture *top_field;
  StorablePicture *bottom_field;

} FrameStore;


//! Decoded Picture Buffer
typedef struct decoded_picture_buffer
{
  FrameStore  **fs;
  FrameStore  **fs_ref;
  FrameStore  **fs_ltref;
  unsigned      size;
  unsigned      used_size;
  unsigned      ref_frames_in_buffer;
  unsigned      ltref_frames_in_buffer;
  int           last_output_poc;
  int           max_long_term_pic_idx;

  int           init_done;
  int           num_ref_frames;

  FrameStore   *last_picture;
} DecodedPictureBuffer;


extern DecodedPictureBuffer dpb;
extern StorablePicture **listX[6];
extern int listXsize[6];

void             init_dpb();
void             free_dpb();
FrameStore*      alloc_frame_store();
void             free_frame_store(FrameStore* f);
StorablePicture* alloc_storable_picture(PictureStructure type, int size_x, int size_y, int size_x_cr, int size_y_cr);
void             free_storable_picture(StorablePicture* p);
void             store_picture_in_dpb(StorablePicture* p);
void             flush_dpb();

void             dpb_split_field(FrameStore *fs);
void             dpb_combine_field(FrameStore *fs);

void             init_lists(int currSliceType, PictureStructure currPicStructure);
void             reorder_ref_pic_list(StorablePicture **list, int *list_size, 
                                      int num_ref_idx_lX_active_minus1, int *remapping_of_pic_nums_idc, 
                                      int *abs_diff_pic_num_minus1, int *long_term_pic_idx);

void             init_mbaff_lists();
void             alloc_ref_pic_list_reordering_buffer(Slice *currSlice);
void             free_ref_pic_list_reordering_buffer(Slice *currSlice);

void             fill_frame_num_gap(ImageParameters *img);

ColocatedParams* alloc_colocated(int size_x, int size_y,int mb_adaptive_frame_field_flag);
void free_collocated(ColocatedParams* p);
void compute_collocated(ColocatedParams* p, StorablePicture **listX[6]);

#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区在线观看免费| 成人美女在线视频| 国产网站一区二区| 日韩av一二三| 亚洲午夜羞羞片| 日韩二区三区四区| 国产suv精品一区二区三区| 国产精品麻豆久久久| 91精品在线一区二区| 激情六月婷婷久久| 国产精品久久99| 日韩欧美一级精品久久| 欧美日韩精品免费观看视频| 成人app在线| 亚洲一区二区五区| 中文字幕精品一区| 91精品国产综合久久精品app | 欧美视频一区二区三区在线观看 | 亚洲欧洲99久久| 国产成人午夜视频| 奇米在线7777在线精品| 亚洲欧美成人一区二区三区| 精品欧美一区二区久久| 亚洲日本一区二区三区| 亚洲激情中文1区| 日本欧美一区二区| 成人精品视频一区| 曰韩精品一区二区| 91麻豆精品国产91久久久久| 国产一区二区三区在线看麻豆| 国产午夜精品久久久久久免费视 | 日韩一级高清毛片| 欧美精彩视频一区二区三区| 91浏览器在线视频| 蜜桃av噜噜一区| 国产精品久久久久永久免费观看| 欧美日韩在线一区二区| 国产成人av电影在线播放| 亚洲乱码国产乱码精品精的特点| 欧美精品久久99久久在免费线 | 成人在线视频首页| 亚洲成a天堂v人片| 中文在线免费一区三区高中清不卡| 日韩av高清在线观看| 国产精品麻豆99久久久久久| 欧美美女一区二区在线观看| 不卡的电视剧免费网站有什么| 午夜电影一区二区三区| 中文字幕在线观看不卡视频| 日韩一级在线观看| 91成人在线精品| 成人午夜又粗又硬又大| 麻豆国产精品777777在线| 亚洲综合久久av| 中文字幕不卡的av| 国产精品18久久久久| 日韩av电影免费观看高清完整版| 亚洲欧洲日本在线| 国产丝袜在线精品| 欧美电视剧免费全集观看| 欧美日韩小视频| 99re热这里只有精品视频| 国产精品中文字幕欧美| 青青青爽久久午夜综合久久午夜| 亚洲欧美aⅴ...| 国产精品第13页| 国产日韩亚洲欧美综合| 国产成人高清视频| 精品一二三四在线| 麻豆国产精品一区二区三区| 午夜伦理一区二区| 亚洲亚洲精品在线观看| 亚洲精品国产品国语在线app| 国产日韩欧美不卡在线| 久久久99精品免费观看不卡| 日韩区在线观看| 5858s免费视频成人| 欧美日韩日本视频| 欧美日韩国产免费一区二区| 日本va欧美va瓶| 亚洲电影在线免费观看| 亚洲一二三四在线观看| 一区二区三区在线观看动漫| 亚洲美女屁股眼交| 一区二区视频在线| 亚洲成年人影院| 午夜精品一区在线观看| 日韩精品一级二级| 毛片不卡一区二区| 国产精品一级在线| 高清不卡一二三区| 亚洲成人tv网| 五月婷婷久久综合| 免费xxxx性欧美18vr| 韩国成人在线视频| 岛国一区二区三区| 91香蕉视频在线| 欧美三级中文字| 欧美日韩免费观看一区二区三区| 欧美色图12p| 日韩欧美久久一区| 中文字幕成人在线观看| 亚洲视频一二区| 亚洲一区在线观看视频| 免费看日韩a级影片| 免费看欧美女人艹b| 国产精品福利一区| 一区二区三区精品| 轻轻草成人在线| 国产精品综合视频| 色综合天天性综合| 欧美一区二区三区四区在线观看| 久久久亚洲精品一区二区三区 | 国产精品水嫩水嫩| 亚洲欧美另类图片小说| 日韩电影在线观看一区| 国产精品一级黄| 91官网在线免费观看| 日韩视频永久免费| 国产精品视频在线看| 日产国产欧美视频一区精品| 岛国av在线一区| 欧美精品日韩精品| 国产日产欧美一区二区三区| 亚洲综合久久av| 国产一区二区不卡| 欧美色图在线观看| 欧美国产日韩一二三区| 樱桃国产成人精品视频| 国产综合色在线视频区| 欧亚洲嫩模精品一区三区| 91精品国产综合久久精品性色| 国产精品女主播av| 日本不卡一二三区黄网| 99v久久综合狠狠综合久久| 欧美电影免费观看高清完整版在 | 久久国产精品99精品国产| 成人国产电影网| 日韩一级二级三级精品视频| 国产精品嫩草影院com| 奇米色777欧美一区二区| 91女神在线视频| 久久久久国产精品人| 日韩精品欧美成人高清一区二区| 成人动漫视频在线| 精品国产乱码91久久久久久网站| 亚洲欧美视频一区| 成人午夜私人影院| 久久久99精品免费观看| 精品夜夜嗨av一区二区三区| 欧美日韩一区二区三区四区| www.日本不卡| 国产清纯在线一区二区www| 毛片一区二区三区| 91精品国产综合久久久蜜臀图片 | 一区二区三区精品在线| 国产+成+人+亚洲欧洲自线| 精品久久久网站| 日韩黄色小视频| 欧美丝袜丝交足nylons图片| 综合久久久久久久| 成人午夜在线视频| 亚洲欧洲精品天堂一级| 国产成人av资源| 欧美国产视频在线| 成人永久看片免费视频天堂| 成人国产精品视频| 国产精品无码永久免费888| 国产一区在线精品| 久久久亚洲高清| 国产一区二区剧情av在线| 亚洲精品一区二区三区99| 久99久精品视频免费观看| 精品国精品国产尤物美女| 韩国av一区二区三区四区| www国产精品av| 国产精品一区在线观看你懂的| 精品久久人人做人人爽| 精品一区二区免费| 国产亚洲一区二区三区四区| 福利视频网站一区二区三区| 色婷婷综合久久久| 亚洲高清免费在线| 337p亚洲精品色噜噜| 免费人成在线不卡| 久久久午夜电影| 成年人午夜久久久| 亚洲精品国产视频| 制服丝袜一区二区三区| 国产在线看一区| 国产精品欧美久久久久一区二区| 91在线观看视频| 亚洲国产aⅴ成人精品无吗| 91精品国产综合久久久久久久久久| 久久99国内精品| 国产精品久久久久久福利一牛影视| 色婷婷精品大视频在线蜜桃视频 | 国产午夜精品在线观看| jiyouzz国产精品久久| 亚洲国产精品嫩草影院|