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

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

?? verify.c

?? MPEG2視頻編解碼程序
?? C
字號:
/* verify.c  * * 比特流驗(yàn)證程序 * * */#ifdef VERIFY #include <stdio.h>#include <stdlib.h>#include <ctype.h>#include <fcntl.h>#include <math.h>     /* needed for ceil() */#include "config.h"#include "global.h"/* #define DEBUG  */#ifdef DEBUG#define PC #endif#ifdef PC#include <conio.h>    /* needed for getch() */#endif /* PC *//*    Check picture headers:  due to the VBV definition of picture data,   this routine must be called immediately before any picture data    is parsed. (before the first slice start code, including any slice    start code stuffing).*/static void Check_VBV_Delay _ANSI_ARGS_((int Bitstream_Framenum, int Sequence_Framenum));void Check_Headers(Bitstream_Framenum, Sequence_Framenum)int Bitstream_Framenum;int Sequence_Framenum;{  if((!low_delay)&&(vbv_delay!=0)&&(vbv_delay!=0xFFFF))    Check_VBV_Delay(Bitstream_Framenum, Sequence_Framenum);  /* clear out the header tracking variables so we have an accurate      count next time */  Clear_Verify_Headers();}/*  * Verify vbv_delay value in picture header  * (low_delay==1 checks not implemented. this does not exhaustively test all  *  possibilities suggested in ISO/IEC 13818-2 Annex C.  It only checks *  for constant rate streams) * * Q:how do we tell a variable rate stream from a constant rate stream anyway? *   it's not as simple as vbv_delay==0xFFFF, since we need meaningful  *   vbv_delay values to calculate the piecewise rate in the first place! * * Also: no special provisions at the beginning or end of a sequence */static void Check_VBV_Delay(Bitstream_Framenum, Sequence_Framenum)int Bitstream_Framenum;int Sequence_Framenum;{  double B;   /* buffer size                   */  double Bn;  /* buffer fullness for picture n */  double R;   /* bitrate                       */  double I;   /* time interval (t[n+1] - t[n]) */  double T;   /* inverse of the frame rate (frame period) */  int d;  int internal_vbv_delay;    static int previous_IorP_picture_structure;  static int previous_IorP_repeat_first_field;  static int previous_IorP_top_field_first;  static int previous_vbv_delay;  static int previous_bitstream_position;  static double previous_Bn;  static double E;      /* maximum quantization error or mismatch */    if((Sequence_Framenum==0)&&(!Second_Field))   {  /* first coded picture of sequence */    R = bit_rate;    /* the initial buffer occupancy is taken on faith       that is, we believe what is transmitted in the first coded picture header       to be the true/actual buffer occupancy */        Bn = (R * (double) vbv_delay) / 90000.0;    B = 16 * 1024 * vbv_buffer_size;        /* maximum quantization error in bitrate (bit_rate_value is quantized/       rounded-up to units of 400 bits/sec as per ISO/IEC 13818-2        section 6.3.3 */        E = (400.0/frame_rate) + 400;#ifdef DEBUG    printf("vbv_buffer_size (B) = %.0f, Bn=%f, E=%f, \nbitrate=%f, vbv_delay=%d frame_rate=%f\n",       B, Bn, E, bit_rate, vbv_delay, frame_rate); #endif  }  else /* not the first coded picture of sequence */  {    /* derive the interval (I).  The interval tells us how many constant rate bits     * will have been downloaded to the buffer during the current picture period     *     * interval assumes that:      *  1. whilst we are decoding the current I or P picture, we are displaying      *     the previous I or P picture which was stored in the reorder     *     buffer (pointed to by forward_reference_frame in this implementation)     *     *  2. B pictures are output ("displayed") at the time when they are decoded      *      */    if(progressive_sequence) /* Annex C.9 (progressive_sequence==1, low_delay==0) */    {      T = 1/frame_rate; /* inverse of the frame rate (frame period) */      if(picture_coding_type==B_TYPE)      {        if(repeat_first_field==1)        {          if(top_field_first==1)            I = T*3;  /* three frame periods */          else            I = T*2;  /* two frame periods */        }        else          I = T;      /* one frame period */      }      else /* P or I frame */      {        if(previous_IorP_repeat_first_field==1)        {          if(previous_IorP_top_field_first==1)            I = 3*T;          else            I = 2*T;        }        else          I = T;      }    }    else /* Annex C.11 (progressive_sequence==0, low_delay==0) */    {            T = 1/(2*frame_rate); /* inverse of two times the frame rate (field period) */      if(picture_coding_type==B_TYPE)      {        if(picture_structure==FRAME_PICTURE)        {          if(repeat_first_field==0)            I = 2*T;  /* two field periods */          else            I = 3*T;  /* three field periods */        }        else /* B field */        {          I = T;      /* one field period */        }      }      else /* I or P picture */      {        if(picture_structure==FRAME_PICTURE)        {          if(previous_IorP_repeat_first_field==0)            I = 2*T;          else            I = 3*T;        }        else        {          if(Second_Field==0)  /* first field of current frame */            I = T;          else /* second field of current frame */          {            /* formula: previous I or P display period (2*T or 3*T) minus the                very recent decode period (T) of the first field of the current                frame */            if(previous_IorP_picture_structure!=FRAME_PICTURE               || previous_IorP_repeat_first_field==0)              I = 2*T - T;  /* a net of one field period */             else if(previous_IorP_picture_structure==FRAME_PICTURE               && previous_IorP_repeat_first_field==1)              I = 3*T - T;  /* a net of two field periods */          }        }      }    }    /* derive coded size of previous picture */    d  = ld->Bitcnt - previous_bitstream_position;    /* Rate = Distance/Time */    /* piecewise constant rate (variable rate stream) calculation     * R =  ((double) d /((previous_vbv_delay - vbv_delay)/90000 + I));     */    R = bit_rate;    /* compute buffer fullness just before removing picture n      *     * Bn = previous_Bn + (I*R) - d;     (recursive formula)     *      *   where:     *     *    n           is the current picture     *     *    Bn          is the buffer fullness for the current picture     *     *    previous_Bn is the buffer fullness of the previous picture     *     *    (I*R )      is the bits accumulated during the current picture      *                period     *     *    d           is the number of bits removed during the decoding of the      *                previous picture     */    Bn = previous_Bn + (I*R) - d;    /* compute internally derived vbv_delay (rouding up with ceil()) */    internal_vbv_delay = (int) ceil((90000 * Bn / bit_rate));#ifdef DEBUG    printf("\nvbv_delay: internal=%d, bitstream=%d\n", internal_vbv_delay, vbv_delay);        printf("Bn=%f, prevBn=%f, I=%f, R=%f, d=%d\n", Bn, previous_Bn, I, R, d);    printf("frame(%d), pictstruct(%d), picttype(%d)\n", Sequence_Framenum,       picture_structure, picture_coding_type);    /* report error */    if(internal_vbv_delay != vbv_delay)    {      printf("WARNING: internal_vbv_delay(%d) != vbv_delay(%d)\n",        internal_vbv_delay, vbv_delay);    }#endif  } /* not the first coded picture of sequence */#ifdef PC  getch();#endif /* PC */    /* update generic tracking variables */  previous_bitstream_position = ld->Bitcnt ;  previous_vbv_delay          = vbv_delay;  previous_Bn                 = Bn;  /* reference picture: reordered/delayed output picture */  if(picture_coding_type!=B_TYPE)  {    previous_IorP_repeat_first_field = repeat_first_field;    previous_IorP_top_field_first    = top_field_first;    previous_IorP_picture_structure  = picture_structure;  }}/* variables to keep track of the occurance of redundant headers between pictures */void Clear_Verify_Headers(){  verify_sequence_header = 0;  verify_group_of_pictures_header = 0;  verify_picture_header = 0;  verify_slice_header = 0;  verify_sequence_extension = 0;  verify_sequence_display_extension = 0;  verify_quant_matrix_extension = 0;  verify_sequence_scalable_extension = 0;  verify_picture_display_extension = 0;  verify_picture_coding_extension = 0;  verify_picture_spatial_scalable_extension = 0;  verify_picture_temporal_scalable_extension = 0;  verify_copyright_extension = 0;}#endif /* VERIFY */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级电影一区| 大桥未久av一区二区三区中文| 成人国产免费视频| 国产免费观看久久| 国产精品18久久久久久久久久久久| 日韩欧美国产一二三区| 久久精品国产免费| 久久久亚洲欧洲日产国码αv| 精品一区二区三区久久| 久久久噜噜噜久久中文字幕色伊伊| 国产真实乱偷精品视频免| 国产肉丝袜一区二区| 成人av午夜电影| 一区二区三区四区视频精品免费 | 91精品蜜臀在线一区尤物| 五月婷婷激情综合| 精品日韩99亚洲| 成人av第一页| 亚洲成a人片在线不卡一二三区| 日韩视频中午一区| 成人性生交大片| 亚洲福利视频导航| 久久综合狠狠综合久久综合88| 国产成人亚洲综合a∨婷婷| 亚洲精品视频在线| 日韩欧美国产三级电影视频| 成人高清av在线| 日韩电影一二三区| 亚洲欧美怡红院| 7777精品伊人久久久大香线蕉的 | 国产在线麻豆精品观看| 亚洲欧洲av另类| 欧美一区二区三区啪啪| 丁香婷婷综合五月| 香蕉久久一区二区不卡无毒影院| 日韩视频免费直播| 91农村精品一区二区在线| 老司机精品视频导航| 亚洲免费观看在线视频| 精品久久久网站| 色婷婷久久久久swag精品| 国产曰批免费观看久久久| 亚洲激情在线激情| 国产日韩欧美一区二区三区综合| 欧美亚洲国产怡红院影院| 国产成人激情av| 日韩黄色免费网站| 亚洲免费在线播放| 国产亚洲欧洲一区高清在线观看| 欧美日韩免费观看一区二区三区 | 日日夜夜精品免费视频| 亚洲欧洲日韩在线| 久久久久久久久久久99999| 欧美午夜电影一区| 99re视频这里只有精品| 韩国v欧美v日本v亚洲v| 蜜臀av亚洲一区中文字幕| 一区二区三区免费网站| 国产精品国产三级国产普通话99| 欧美mv日韩mv国产网站app| 欧美日本在线播放| 色偷偷一区二区三区| 国产99久久精品| 国产呦精品一区二区三区网站| 日韩中文字幕不卡| 亚洲国产人成综合网站| 亚洲精品免费在线播放| 1000精品久久久久久久久| 日本一区二区三区国色天香 | 国产欧美综合在线观看第十页| 欧美一区二区三区日韩| 欧美一区二区三区影视| 欧美精品乱码久久久久久按摩| 欧美在线小视频| 色狠狠av一区二区三区| 91在线小视频| 不卡av免费在线观看| a级高清视频欧美日韩| 国产69精品久久久久777| 国产一区不卡精品| 国产aⅴ精品一区二区三区色成熟| 精品一区二区三区免费播放| 九九视频精品免费| 国产精品一区久久久久| 高清日韩电视剧大全免费| 国产成人精品综合在线观看 | 麻豆精品视频在线| 日韩综合一区二区| 久久99久久99| 国产麻豆精品在线| 成人av网站大全| 日本韩国欧美三级| 欧美日韩日日摸| 日韩欧美不卡在线观看视频| 欧美精品一区二区三区久久久| 久久九九全国免费| 中文字幕欧美一| 亚洲激情综合网| 麻豆精品视频在线| 成人永久免费视频| 91久久精品午夜一区二区| 欧美精选一区二区| 精品国产伦一区二区三区观看方式 | 亚洲美女视频在线| 性欧美疯狂xxxxbbbb| 欧美国产激情一区二区三区蜜月| 精品日韩欧美在线| 亚洲视频每日更新| 日韩国产高清在线| 国产精品资源网站| 色久综合一二码| 日韩欧美国产三级| 国产精品美女一区二区| 亚洲午夜羞羞片| 国产一区二区三区四区五区美女| 国产凹凸在线观看一区二区| 在线观看av一区二区| 欧美一个色资源| 中文字幕中文乱码欧美一区二区| 午夜欧美在线一二页| 国产精品自产自拍| 欧美老女人在线| 国产欧美一区二区在线观看| 一区二区在线看| 国内精品伊人久久久久av影院| 99精品热视频| 精品少妇一区二区三区在线播放 | 欧美性色综合网| 精品福利一二区| 一区二区三区日韩欧美精品 | 亚洲丶国产丶欧美一区二区三区| 久久av中文字幕片| 91国产免费观看| 欧美激情综合在线| 日本亚洲天堂网| 色天使色偷偷av一区二区| 精品国产一区二区三区久久久蜜月 | 久久99久久久欧美国产| 色综合色综合色综合色综合色综合 | 精品国精品自拍自在线| 依依成人精品视频| 国产高清精品网站| 欧美一区二区三区在线观看视频| 中文字幕佐山爱一区二区免费| 激情综合色综合久久综合| 欧美精品在线一区二区| 日韩毛片一二三区| 国产成人精品www牛牛影视| 欧美tickling网站挠脚心| 亚洲国产精品尤物yw在线观看| 99久久er热在这里只有精品15 | 国产喷白浆一区二区三区| 蜜桃久久精品一区二区| 欧美色电影在线| 亚洲激情自拍视频| 99视频精品全部免费在线| 国产午夜亚洲精品理论片色戒| 日韩av在线免费观看不卡| 欧美三区免费完整视频在线观看| 中文字幕一区二区三区不卡| 国产一区二区精品久久| 久久欧美中文字幕| 国产在线看一区| 日韩欧美国产小视频| 免费观看成人av| 日韩欧美色综合网站| 麻豆高清免费国产一区| 欧美一二三四在线| 日本麻豆一区二区三区视频| 欧美精品日韩综合在线| 午夜电影一区二区三区| 欧美日韩国产成人在线91| 亚洲高清免费在线| 91精品国产91久久久久久最新毛片| 亚洲影视在线播放| 欧美日韩国产美| 五月天丁香久久| 欧美一级国产精品| 日本特黄久久久高潮| 日韩欧美在线网站| 国模无码大尺度一区二区三区| 久久亚洲影视婷婷| 99免费精品在线| 亚洲夂夂婷婷色拍ww47| 91福利资源站| 日韩国产精品久久久久久亚洲| 日韩一卡二卡三卡四卡| 国模冰冰炮一区二区| 中文欧美字幕免费| 一本大道久久a久久综合| 性感美女极品91精品| 欧美变态口味重另类| 国产成人免费xxxxxxxx| 亚洲美女精品一区| 91精品国产综合久久精品图片| 久久国产精品99久久人人澡| 久久久久88色偷偷免费| www.亚洲精品| 婷婷国产v国产偷v亚洲高清| 精品91自产拍在线观看一区|