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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mpeg2_internal.h

?? linux下實現視頻播放的播放器
?? H
字號:
/* * mpeg2_internal.h * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org> * Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca> * * This file is part of mpeg2dec, a free MPEG-2 video stream decoder. * See http://libmpeg2.sourceforge.net/ for updates. * * mpeg2dec is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * mpeg2dec is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */#ifndef _MPEG2_INTERNAL_H_#define _MPEG2_INTERNAL_H_#include "SDL.h" #define MODULE "libmpeg2" #include "../log.h" #define STATE_INTERNAL_NORETURN ((mpeg2_state_t)-1)/* macroblock modes */#define MACROBLOCK_INTRA 1#define MACROBLOCK_PATTERN 2#define MACROBLOCK_MOTION_BACKWARD 4#define MACROBLOCK_MOTION_FORWARD 8#define MACROBLOCK_QUANT 16#define DCT_TYPE_INTERLACED 32/* motion_type */#define MOTION_TYPE_SHIFT 6#define MC_FIELD 1#define MC_FRAME 2#define MC_16X8 2#define MC_DMV 3/* picture structure */#define TOP_FIELD 1#define BOTTOM_FIELD 2#define FRAME_PICTURE 3/* picture coding type */#define I_TYPE 1#define P_TYPE 2#define B_TYPE 3#define D_TYPE 4typedef void mpeg2_mc_fct (uint8_t *, const uint8_t *, int, int);typedef struct {    uint8_t * ref[2][3];    uint8_t ** ref2[2];    int pmv[2][2];    int f_code[2];} motion_t;typedef void motion_parser_t (mpeg2_decoder_t * decoder,			      motion_t * motion,			      mpeg2_mc_fct * const * table);struct mpeg2_decoder_s {    /* first, state that carries information from one macroblock to the */    /* next inside a slice, and is never used outside of mpeg2_slice() */    /* bit parsing stuff */    uint32_t bitstream_buf;		/* current 32 bit working set */    int bitstream_bits;			/* used bits in working set */    const uint8_t * bitstream_ptr;	/* buffer with stream data */    uint8_t * dest[3];    int offset;    int stride;    int uv_stride;    int slice_stride;    int slice_uv_stride;    int stride_frame;    unsigned int limit_x;    unsigned int limit_y_16;    unsigned int limit_y_8;    unsigned int limit_y;    /* Motion vectors */    /* The f_ and b_ correspond to the forward and backward motion */    /* predictors */    motion_t b_motion;    motion_t f_motion;    motion_parser_t * motion_parser[5];    /* predictor for DC coefficients in intra blocks */    int16_t dc_dct_pred[3];    /* DCT coefficients */    __align16(int16_t, DCTblock[64]);    uint8_t * picture_dest[3];    void (* convert) (void * convert_id, uint8_t * const * src,		      unsigned int v_offset);    void * convert_id;    int dmv_offset;    unsigned int v_offset;    /* now non-slice-specific information */    /* sequence header stuff */    uint16_t * quantizer_matrix[4];    uint16_t (* chroma_quantizer[2])[64];    uint16_t quantizer_prescale[4][32][64];    /* The width and height of the picture snapped to macroblock units */    int width;    int height;    int vertical_position_extension;    int chroma_format;    /* picture header stuff */    /* what type of picture this is (I, P, B, D) */    int coding_type;    /* picture coding extension stuff */    /* quantization factor for intra dc coefficients */    int intra_dc_precision;    /* top/bottom/both fields */    int picture_structure;    /* bool to indicate all predictions are frame based */    int frame_pred_frame_dct;    /* bool to indicate whether intra blocks have motion vectors */    /* (for concealment) */    int concealment_motion_vectors;    /* bool to use different vlc tables */    int intra_vlc_format;    /* used for DMV MC */    int top_field_first;    /* stuff derived from bitstream */    /* pointer to the zigzag scan we're supposed to be using */    const uint8_t * scan;    int second_field;    int mpeg1;};typedef struct {    mpeg2_fbuf_t fbuf;} fbuf_alloc_t;struct mpeg2dec_s {    mpeg2_decoder_t decoder;    mpeg2_info_t info;    uint32_t shift;    int is_display_initialized;    mpeg2_state_t (* action) (struct mpeg2dec_s * mpeg2dec);    mpeg2_state_t state;    uint32_t ext_state;    /* allocated in init - gcc has problems allocating such big structures */    uint8_t * chunk_buffer;    /* pointer to start of the current chunk */    uint8_t * chunk_start;    /* pointer to current position in chunk_buffer */    uint8_t * chunk_ptr;    /* last start code ? */    uint8_t code;    /* picture tags */    uint32_t tag_current, tag2_current, tag_previous, tag2_previous;    int num_tags;    int bytes_since_tag;    int first;    int alloc_index_user;    int alloc_index;    uint8_t first_decode_slice;    uint8_t nb_decode_slices;    unsigned int user_data_len;    mpeg2_sequence_t new_sequence;    mpeg2_sequence_t sequence;    mpeg2_gop_t new_gop;    mpeg2_gop_t gop;    mpeg2_picture_t new_picture;    mpeg2_picture_t pictures[4];    mpeg2_picture_t * picture;    /*const*/ mpeg2_fbuf_t * fbuf[3];	/* 0: current fbuf, 1-2: prediction fbufs */    fbuf_alloc_t fbuf_alloc[3];    int custom_fbuf;    uint8_t * yuv_buf[3][3];    int yuv_index;    mpeg2_convert_t * convert;    void * convert_arg;    unsigned int convert_id_size;    int convert_stride;    void (* convert_start) (void * id, const mpeg2_fbuf_t * fbuf,			    const mpeg2_picture_t * picture,			    const mpeg2_gop_t * gop);    uint8_t * buf_start;    uint8_t * buf_end;    int16_t display_offset_x, display_offset_y;    int copy_matrix;    int8_t q_scale_type, scaled[4];    uint8_t quantizer_matrix[4][64];    uint8_t new_quantizer_matrix[4][64];};/* cpu_accel.c */uint32_t mpeg2_detect_accel (uint32_t accel);/* decode.c */mpeg2_state_t mpeg2_seek_header (mpeg2dec_t * mpeg2dec);mpeg2_state_t mpeg2_parse_header (mpeg2dec_t * mpeg2dec);/* header.c */void mpeg2_header_state_init (mpeg2dec_t * mpeg2dec);void mpeg2_reset_info (mpeg2_info_t * info);int mpeg2_header_sequence (mpeg2dec_t * mpeg2dec);int mpeg2_header_gop (mpeg2dec_t * mpeg2dec);mpeg2_state_t mpeg2_header_picture_start (mpeg2dec_t * mpeg2dec);int mpeg2_header_picture (mpeg2dec_t * mpeg2dec);int mpeg2_header_extension (mpeg2dec_t * mpeg2dec);int mpeg2_header_user_data (mpeg2dec_t * mpeg2dec);void mpeg2_header_sequence_finalize (mpeg2dec_t * mpeg2dec);void mpeg2_header_gop_finalize (mpeg2dec_t * mpeg2dec);void mpeg2_header_picture_finalize (mpeg2dec_t * mpeg2dec, uint32_t accels);mpeg2_state_t mpeg2_header_slice_start (mpeg2dec_t * mpeg2dec);mpeg2_state_t mpeg2_header_end (mpeg2dec_t * mpeg2dec);void mpeg2_set_fbuf (mpeg2dec_t * mpeg2dec, int b_type);/* idct.c */void mpeg2_idct_init (uint32_t accel);/* idct_mmx.c */void mpeg2_idct_copy_mmxext (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_mmxext (int last, int16_t * block,			    uint8_t * dest, int stride);void mpeg2_idct_copy_sse2 (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_sse2 (int last, int16_t * block,			    uint8_t * dest, int stride);void mpeg2_idct_copy_mmx (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_mmx (int last, int16_t * block,			 uint8_t * dest, int stride);void mpeg2_idct_mmx_init (void);/* idct_altivec.c */void mpeg2_idct_copy_altivec (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_altivec (int last, int16_t * block,			     uint8_t * dest, int stride);void mpeg2_idct_altivec_init (void);/* idct_alpha.c */void mpeg2_idct_copy_mvi (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_mvi (int last, int16_t * block,			 uint8_t * dest, int stride);void mpeg2_idct_copy_alpha (int16_t * block, uint8_t * dest, int stride);void mpeg2_idct_add_alpha (int last, int16_t * block,			   uint8_t * dest, int stride);void mpeg2_idct_alpha_init (void);/* motion_comp.c */void mpeg2_mc_init (uint32_t accel);typedef struct {    mpeg2_mc_fct * put [8];    mpeg2_mc_fct * avg [8];} mpeg2_mc_t;#define MPEG2_MC_EXTERN(x) mpeg2_mc_t mpeg2_mc_##x = {			  \    {MC_put_o_16_##x, MC_put_x_16_##x, MC_put_y_16_##x, MC_put_xy_16_##x, \     MC_put_o_8_##x,  MC_put_x_8_##x,  MC_put_y_8_##x,  MC_put_xy_8_##x}, \    {MC_avg_o_16_##x, MC_avg_x_16_##x, MC_avg_y_16_##x, MC_avg_xy_16_##x, \     MC_avg_o_8_##x,  MC_avg_x_8_##x,  MC_avg_y_8_##x,  MC_avg_xy_8_##x}  \};extern mpeg2_mc_t mpeg2_mc_c;extern mpeg2_mc_t mpeg2_mc_mmx;extern mpeg2_mc_t mpeg2_mc_mmxext;extern mpeg2_mc_t mpeg2_mc_3dnow;extern mpeg2_mc_t mpeg2_mc_sse2;extern mpeg2_mc_t mpeg2_mc_altivec;extern mpeg2_mc_t mpeg2_mc_alpha;extern mpeg2_mc_t mpeg2_mc_vis;#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美电影一二三| 亚洲在线成人精品| 一级精品视频在线观看宜春院| 日韩经典一区二区| www.日韩大片| 久久综合九色综合欧美98| 亚洲精品国产一区二区精华液| 国产永久精品大片wwwapp| 91精品国产色综合久久不卡蜜臀| 亚洲人妖av一区二区| 国产资源在线一区| 欧美精品久久久久久久多人混战 | 国产精品白丝jk黑袜喷水| 欧美亚洲禁片免费| 国产精品女人毛片| 国产激情精品久久久第一区二区 | 麻豆精品久久精品色综合| 91天堂素人约啪| 国产精品免费视频网站| 黑人巨大精品欧美一区| 9191国产精品| 亚洲国产va精品久久久不卡综合| 91在线观看成人| 国产精品福利影院| 成人午夜精品一区二区三区| 国产色婷婷亚洲99精品小说| 国内外成人在线| 久久色.com| 国产在线精品一区在线观看麻豆| 欧美变态凌虐bdsm| 精品一区二区在线观看| 欧美挠脚心视频网站| 五月综合激情网| 在线播放中文一区| 日本aⅴ免费视频一区二区三区| 欧美日韩亚洲不卡| 亚洲国产欧美在线人成| 欧美视频在线一区| 日韩中文字幕1| 日韩一区二区免费在线观看| 日本va欧美va精品| 2023国产精华国产精品| 国产寡妇亲子伦一区二区| 国产亲近乱来精品视频| 97久久精品人人澡人人爽| 亚洲欧美成人一区二区三区| 91美女视频网站| 亚洲www啪成人一区二区麻豆| 欧美日韩国产另类一区| 日韩**一区毛片| 久久综合给合久久狠狠狠97色69| 国产精品中文欧美| 综合欧美亚洲日本| 欧美精品久久久久久久多人混战| 久久机这里只有精品| 国产亚洲精品7777| 欧美伊人久久久久久久久影院| 美女视频第一区二区三区免费观看网站| 日韩午夜激情av| 丁香婷婷深情五月亚洲| 亚洲一区二区精品3399| 欧美成人a视频| caoporn国产一区二区| 亚洲成人777| 国产欧美一区二区在线| 91麻豆精品在线观看| 日本亚洲电影天堂| 自拍偷拍欧美激情| 欧美日韩精品系列| 国产精品一区在线| 亚洲一级不卡视频| 久久九九久久九九| 7777精品伊人久久久大香线蕉超级流畅 | 五月激情丁香一区二区三区| 久久这里都是精品| 欧美午夜精品一区二区三区| 久久国产剧场电影| 一个色妞综合视频在线观看| 久久天天做天天爱综合色| 欧美三区在线视频| 成人一区在线观看| 久久国产精品第一页| 一区二区三区国产豹纹内裤在线 | 国产精品一区二区你懂的| 一区二区三区在线免费观看| 久久精品在这里| 欧美一区二区国产| 91福利在线观看| 91在线视频播放地址| 精品一区二区久久久| 一区二区三区电影在线播| 日本一区二区在线不卡| 日韩欧美国产成人一区二区| 欧美日韩成人综合| 色天使久久综合网天天| 成人午夜av影视| 国产一区二区美女| 欧美aaaaaa午夜精品| 一级日本不卡的影视| 亚洲免费观看高清完整| 国产精品久久久久久久久免费相片| 精品国产网站在线观看| 欧美日韩一区不卡| 欧美在线免费视屏| 色域天天综合网| 国产成人在线视频免费播放| 另类小说图片综合网| 免费高清视频精品| 天堂va蜜桃一区二区三区 | 欧美日韩国产成人在线91| 99久久精品免费| 91欧美一区二区| 91女人视频在线观看| 99免费精品视频| 97久久精品人人澡人人爽| 色偷偷88欧美精品久久久| 色婷婷亚洲一区二区三区| 一本一道久久a久久精品| 色综合久久66| 欧美日韩精品欧美日韩精品| 欧美久久久一区| 精品国产污污免费网站入口 | 日韩视频免费观看高清完整版在线观看 | 成人免费视频caoporn| 成人午夜激情影院| 成人黄色一级视频| 99精品桃花视频在线观看| 一道本成人在线| 在线不卡一区二区| 久久综合国产精品| 中文字幕日韩欧美一区二区三区| 亚洲乱码日产精品bd| 亚洲国产日韩av| 蜜桃视频在线观看一区二区| 国产在线一区观看| av成人免费在线| 精品视频一区二区三区免费| 欧美一区二区三区精品| 国产日韩亚洲欧美综合| 亚洲私人黄色宅男| 日本亚洲三级在线| 成人三级伦理片| 欧美人与z0zoxxxx视频| 欧美tickling挠脚心丨vk| 亚洲国产精品成人综合| 亚洲黄一区二区三区| 麻豆国产欧美日韩综合精品二区| 国产成人综合在线| 欧美三级三级三级爽爽爽| 精品美女在线观看| 亚洲欧美一区二区不卡| 久久超级碰视频| 91欧美激情一区二区三区成人| 日韩一区二区三区电影| 综合激情网...| 日韩1区2区日韩1区2区| 91丨九色丨国产丨porny| 日韩精品一区二区三区蜜臀| 最新久久zyz资源站| 免费观看91视频大全| 色综合视频一区二区三区高清| 精品日韩一区二区| 亚洲综合成人在线| 国产999精品久久久久久绿帽| 欧美高清一级片在线| 综合中文字幕亚洲| 国产精品亚洲一区二区三区在线 | 国产欧美日韩综合| 人人精品人人爱| 欧美色网一区二区| 国产精品久久网站| 久久99热这里只有精品| 欧美日韩中文字幕精品| 欧美激情在线观看视频免费| 久久狠狠亚洲综合| 欧美一区二区三区四区五区| 亚洲免费伊人电影| 99久久综合99久久综合网站| 国产午夜精品福利| 韩国一区二区三区| 日韩欧美电影一二三| 日韩高清一级片| 欧美日韩国产乱码电影| 亚洲一区二区影院| www.66久久| 国产精品毛片高清在线完整版| 国产一区二区免费视频| 久久伊人蜜桃av一区二区| 免费精品99久久国产综合精品| 欧美亚洲自拍偷拍| 一区二区三区.www| 色哟哟欧美精品| 亚洲精品网站在线观看| 91蝌蚪porny| 亚洲美女少妇撒尿| 色综合久久中文综合久久牛| 亚洲黄网站在线观看| 欧美亚洲国产怡红院影院| 一区二区三区中文字幕精品精品| 色网综合在线观看|