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

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

?? stats.c

?? mp3解碼程序vc++環(huán)境下運行
?? C
字號:
/* stats.c, 編碼統(tǒng)計*/
#include <stdio.h>#include <math.h>#include "global.h"/* 函數(shù)聲明 */static void calcSNR1(unsigned char *org, unsigned char *rec,  int lx, int w, int h, double *pv, double *pe);void calcSNR(org,rec)unsigned char *org[3];unsigned char *rec[3];{  int w,h,offs;  double v,e;  w = horizontal_size;  h = (pict_struct==FRAME_PICTURE) ? vertical_size : (vertical_size>>1);  offs = (pict_struct==BOTTOM_FIELD) ? width : 0;  calcSNR1(org[0]+offs,rec[0]+offs,width2,w,h,&v,&e);  fprintf(statfile,"Y: variance=%4.4g, MSE=%3.3g (%3.3g dB), SNR=%3.3g dB\n",    v, e, 10.0*log10(255.0*255.0/e), 10.0*log10(v/e));
  if (chroma_format!=CHROMA444)  {    w >>= 1;    offs >>= 1;  }  if (chroma_format==CHROMA420)    h >>= 1;
  calcSNR1(org[1]+offs,rec[1]+offs,chrom_width2,w,h,&v,&e);
  fprintf(statfile,"U: variance=%4.4g, MSE=%3.3g (%3.3g dB), SNR=%3.3g dB\n",    v, e, 10.0*log10(255.0*255.0/e), 10.0*log10(v/e));  calcSNR1(org[2]+offs,rec[2]+offs,chrom_width2,w,h,&v,&e);  fprintf(statfile,"V: variance=%4.4g, MSE=%3.3g (%3.3g dB), SNR=%3.3g dB\n",    v, e, 10.0*log10(255.0*255.0/e), 10.0*log10(v/e));
}static void calcSNR1(org,rec,lx,w,h,pv,pe)unsigned char *org;unsigned char *rec;int lx,w,h;double *pv,*pe;{  int i, j;  double v1, s1, s2, e2;  s1 = s2 = e2 = 0.0;  for (j=0; j<h; j++)  {    for (i=0; i<w; i++)    {      v1 = org[i];      s1+= v1;      s2+= v1*v1;      v1-= rec[i];      e2+= v1*v1;    }    org += lx;    rec += lx;  }  s1 /= w*h;  s2 /= w*h;  e2 /= w*h;  /* 防止0作分母的現(xiàn)象出現(xiàn)*/  if(e2==0.0)    e2 = 0.00001;  *pv = s2 - s1*s1;   *pe = e2;         }void stats(){  int i, j, k, nmb, mb_type;  int n_skipped, n_intra, n_ncoded, n_blocks, n_interp, n_forward, n_backward;  struct mbinfo *mbi;  nmb = mb_width*mb_height2;  n_skipped=n_intra=n_ncoded=n_blocks=n_interp=n_forward=n_backward=0;  for (k=0; k<nmb; k++)  {    mbi = mbinfo+k;    if (mbi->skipped)      n_skipped++;    else if (mbi->mb_type & MB_INTRA)      n_intra++;    else if (!(mbi->mb_type & MB_PATTERN))      n_ncoded++;    for (i=0; i<block_count; i++)      if (mbi->cbp & (1<<i))        n_blocks++;    if (mbi->mb_type & MB_FORWARD)    {      if (mbi->mb_type & MB_BACKWARD)        n_interp++;      else        n_forward++;    }    else if (mbi->mb_type & MB_BACKWARD)      n_backward++;  }  fprintf(statfile,"\npicture statistics:\n");  fprintf(statfile," # of intra coded macroblocks:  %4d (%.1f%%)\n",    n_intra,100.0*(double)n_intra/nmb);  fprintf(statfile," # of coded blocks:             %4d (%.1f%%)\n",    n_blocks,100.0*(double)n_blocks/(block_count*nmb));  fprintf(statfile," # of not coded macroblocks:    %4d (%.1f%%)\n",    n_ncoded,100.0*(double)n_ncoded/nmb);  fprintf(statfile," # of skipped macroblocks:      %4d (%.1f%%)\n",    n_skipped,100.0*(double)n_skipped/nmb);  fprintf(statfile," # of forw. pred. macroblocks:  %4d (%.1f%%)\n",    n_forward,100.0*(double)n_forward/nmb);  fprintf(statfile," # of backw. pred. macroblocks: %4d (%.1f%%)\n",    n_backward,100.0*(double)n_backward/nmb);  fprintf(statfile," # of interpolated macroblocks: %4d (%.1f%%)\n",    n_interp,100.0*(double)n_interp/nmb);  fprintf(statfile,"\nmacroblock_type map:\n");
  k = 0;  for (j=0; j<mb_height2; j++)  {    for (i=0; i<mb_width; i++)    {      mbi = mbinfo + k;      mb_type = mbi->mb_type;      if (mbi->skipped)        putc('S',statfile);      else if (mb_type & MB_INTRA)        putc('I',statfile);      else switch (mb_type & (MB_FORWARD|MB_BACKWARD))      {      case MB_FORWARD:        putc(mbi->motion_type==MC_FIELD ? 'f' :             mbi->motion_type==MC_DMV   ? 'p' :                                          'F',statfile); break;      case MB_BACKWARD:        putc(mbi->motion_type==MC_FIELD ? 'b' :                                          'B',statfile); break;      case MB_FORWARD|MB_BACKWARD:        putc(mbi->motion_type==MC_FIELD ? 'd' :                                          'D',statfile); break;      default:        putc('0',statfile); break;      }      if (mb_type & MB_QUANT)        putc('Q',statfile);      else if (mb_type & (MB_PATTERN|MB_INTRA))        putc(' ',statfile);      else        putc('N',statfile);      putc(' ',statfile);      k++;    }    putc('\n',statfile);  }  fprintf(statfile,"\nmquant map:\n");  k=0;  for (j=0; j<mb_height2; j++)  {    for (i=0; i<mb_width; i++)    {      if (i==0 || mbinfo[k].mquant!=mbinfo[k-1].mquant)        fprintf(statfile,"%3d",mbinfo[k].mquant);      else        fprintf(statfile,"   ");      k++;    }    putc('\n',statfile);  }#if 0  fprintf(statfile,"\ncbp map:\n");  k=0;  for (j=0; j<mb_height2; j++)  {    for (i=0; i<mb_width; i++)    {      fprintf(statfile,"%02x ",mbinfo[k].cbp);      k++;    }    putc('\n',statfile);  }  if (pict_struct==FRAME_PICTURE && !frame_pred_dct)  {    fprintf(statfile,"\ndct_type map:\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & (MB_PATTERN|MB_INTRA))          fprintf(statfile,"%d  ",mbinfo[k].dct_type);        else          fprintf(statfile,"   ");          k++;      }      putc('\n',statfile);    }  }  if (pict_type!=I_TYPE)  {    fprintf(statfile,"\nforward motion vectors (first vector, horizontal):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_FORWARD)          fprintf(statfile,"%4d",mbinfo[k].MV[0][0][0]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nforward motion vectors (first vector, vertical):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_FORWARD)          fprintf(statfile,"%4d",mbinfo[k].MV[0][0][1]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nforward motion vectors (second vector, horizontal):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_FORWARD            && ((pict_struct==FRAME_PICTURE && mbinfo[k].motion_type==MC_FIELD) ||                (pict_struct!=FRAME_PICTURE && mbinfo[k].motion_type==MC_16X8)))          fprintf(statfile,"%4d",mbinfo[k].MV[1][0][0]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nforward motion vectors (second vector, vertical):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_FORWARD            && ((pict_struct==FRAME_PICTURE && mbinfo[k].motion_type==MC_FIELD) ||                (pict_struct!=FRAME_PICTURE && mbinfo[k].motion_type==MC_16X8)))          fprintf(statfile,"%4d",mbinfo[k].MV[1][0][1]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }  }      if (pict_type==B_TYPE)  {    fprintf(statfile,"\nbackward motion vectors (first vector, horizontal):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_BACKWARD)          fprintf(statfile,"%4d",mbinfo[k].MV[0][1][0]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nbackward motion vectors (first vector, vertical):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_BACKWARD)          fprintf(statfile,"%4d",mbinfo[k].MV[0][1][1]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nbackward motion vectors (second vector, horizontal):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_BACKWARD            && ((pict_struct==FRAME_PICTURE && mbinfo[k].motion_type==MC_FIELD) ||                (pict_struct!=FRAME_PICTURE && mbinfo[k].motion_type==MC_16X8)))          fprintf(statfile,"%4d",mbinfo[k].MV[1][1][0]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }    fprintf(statfile,"\nbackward motion vectors (second vector, vertical):\n");    k=0;    for (j=0; j<mb_height2; j++)    {      for (i=0; i<mb_width; i++)      {        if (mbinfo[k].mb_type & MB_BACKWARD            && ((pict_struct==FRAME_PICTURE && mbinfo[k].motion_type==MC_FIELD) ||                (pict_struct!=FRAME_PICTURE && mbinfo[k].motion_type==MC_16X8)))          fprintf(statfile,"%4d",mbinfo[k].MV[1][1][1]);        else          fprintf(statfile,"   .");          k++;      }      putc('\n',statfile);    }  }#endif    #if 0  /* useful for debugging */  fprintf(statfile,"\nmacroblock info dump:\n");  k=0;  for (j=0; j<mb_height2; j++)  {    for (i=0; i<mb_width; i++)    {      fprintf(statfile,"%d: %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n",      k,      mbinfo[k].mb_type,      mbinfo[k].motion_type,      mbinfo[k].dct_type,      mbinfo[k].mquant,      mbinfo[k].cbp,      mbinfo[k].skipped,      mbinfo[k].MV[0][0][0],      mbinfo[k].MV[0][0][1],      mbinfo[k].MV[0][1][0],      mbinfo[k].MV[0][1][1],      mbinfo[k].MV[1][0][0],      mbinfo[k].MV[1][0][1],      mbinfo[k].MV[1][1][0],      mbinfo[k].MV[1][1][1],      mbinfo[k].mv_field_sel[0][0],      mbinfo[k].mv_field_sel[0][1],      mbinfo[k].mv_field_sel[1][0],      mbinfo[k].mv_field_sel[1][1]);      k++;    }  }#endif}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色先锋aa成人| 99精品国产一区二区三区不卡| 中文字幕永久在线不卡| 日本一区二区综合亚洲| 欧美精品一区二区三区在线 | 91丨porny丨中文| av一区二区三区黑人| 一本大道久久a久久综合| 色诱亚洲精品久久久久久| 欧美亚洲国产怡红院影院| 欧美影视一区在线| 日韩一级大片在线观看| 欧美不卡一区二区| 亚洲欧美在线高清| 天天色综合天天| 国产一区二区导航在线播放| 国产精品一区二区三区乱码| 91色综合久久久久婷婷| 欧美精品在线观看播放| 久久久久99精品国产片| 一区二区三区在线视频观看58| 日韩高清不卡一区| 成人免费毛片a| 中文字幕在线免费不卡| 亚洲国产色一区| 国产成人在线网站| 欧美一区二区久久| 亚洲精品国久久99热| 中国色在线观看另类| 成人av网在线| 在线播放欧美女士性生活| 成人欧美一区二区三区小说 | 视频一区二区不卡| 北条麻妃一区二区三区| 日韩一区二区高清| 日本网站在线观看一区二区三区| 福利一区在线观看| 久久久影视传媒| 老司机午夜精品99久久| 欧美日韩免费观看一区三区| 一区在线观看视频| 99久精品国产| 亚洲色图在线播放| 日本电影亚洲天堂一区| 亚洲品质自拍视频网站| 91在线精品一区二区三区| 中文字幕一区二区三区在线不卡| 国产美女在线精品| 久久久久久夜精品精品免费| 国产一区二区三区在线观看免费视频 | 久久99精品国产麻豆婷婷洗澡| 精品视频在线免费观看| 夜夜嗨av一区二区三区四季av| 在线观看欧美黄色| 日本不卡视频在线观看| 欧美日本国产一区| 韩国三级电影一区二区| 日本一区二区三区在线不卡| 成人精品电影在线观看| 亚洲小少妇裸体bbw| 日韩欧美一二区| 99精品视频中文字幕| 亚洲福利视频一区| 国产偷国产偷亚洲高清人白洁 | 亚洲视频一区二区免费在线观看| 色哟哟亚洲精品| 日韩成人精品视频| 亚洲欧洲av另类| 欧美大肚乱孕交hd孕妇| 成人国产电影网| 激情综合色播激情啊| 亚洲最大成人综合| 国产日本欧洲亚洲| 91精品国产高清一区二区三区| 国产999精品久久| 久草在线在线精品观看| 亚洲一区在线观看免费观看电影高清 | 一区在线播放视频| 日韩一区二区三| 欧美日韩一区二区在线观看| 成人h精品动漫一区二区三区| 五月激情综合婷婷| 视频一区二区不卡| 亚洲综合色噜噜狠狠| 亚洲美女精品一区| 一区二区欧美视频| 一区二区三区四区激情| 国产精品欧美一区喷水| 国产女人水真多18毛片18精品视频| 欧美一区二区三区在线看| 欧美顶级少妇做爰| 欧美一区二区免费视频| 亚洲视频在线一区观看| 国产精品五月天| 自拍偷拍亚洲激情| 亚洲午夜精品在线| 奇米影视一区二区三区| 日韩中文字幕av电影| 美腿丝袜一区二区三区| 狠狠色丁香婷综合久久| 成人av在线播放网址| 色综合久久九月婷婷色综合| 欧美视频在线一区二区三区| 在线不卡中文字幕| 欧美国产日本韩| 亚洲电影第三页| 国产一区二区不卡在线| 色综合色综合色综合| 欧美一区二区黄| 欧美一区二区三区喷汁尤物| 国产馆精品极品| 久久超碰97中文字幕| 91麻豆视频网站| 精品国产精品一区二区夜夜嗨| 中文字幕亚洲电影| 国产综合久久久久久鬼色 | 日韩一级精品视频在线观看| 国产色产综合产在线视频| 亚洲一级不卡视频| 国产激情一区二区三区四区| 69堂亚洲精品首页| 一区二区三区日韩在线观看| 韩日精品视频一区| 日韩免费观看高清完整版| 亚洲综合色视频| 日本精品一区二区三区高清 | 捆绑调教一区二区三区| 欧美影院一区二区| 一个色综合av| 91精品国产手机| 亚洲最大色网站| 欧美性受xxxx| 日韩精品一区第一页| 欧美理论在线播放| 亚洲午夜久久久| 欧美猛男gaygay网站| 亚洲午夜精品一区二区三区他趣| 99re视频这里只有精品| 综合久久久久综合| 色网站国产精品| 日韩一区精品字幕| 欧美tk—视频vk| 丁香天五香天堂综合| 国产日韩在线不卡| 91蜜桃婷婷狠狠久久综合9色| 最新中文字幕一区二区三区 | 亚洲三级电影网站| 欧美亚洲免费在线一区| 美腿丝袜亚洲三区| 中文字幕一区在线观看视频| 欧美日韩一区二区三区免费看| 日韩激情视频网站| 国产精品国产三级国产普通话99| 91国模大尺度私拍在线视频| 日韩国产精品久久| 国产精品黄色在线观看| 欧美亚州韩日在线看免费版国语版| 亚洲午夜精品在线| 久久精品夜夜夜夜久久| 91麻豆文化传媒在线观看| 国内外成人在线视频| 亚洲一区二区精品视频| 久久久久久久久久电影| 欧美视频一区二区三区在线观看| 六月丁香综合在线视频| 亚洲18影院在线观看| 综合久久综合久久| 欧美激情在线免费观看| 精品久久久网站| 欧美在线观看视频一区二区| 国产91丝袜在线播放九色| 男女性色大片免费观看一区二区| 亚洲综合无码一区二区| 亚洲天堂a在线| 九九精品视频在线看| 亚洲国产日日夜夜| 亚洲男人天堂av网| 亚洲一区二区三区小说| 亚洲男人的天堂在线观看| 国产欧美日韩不卡| 国产精品美女久久久久久| 亚洲国产精品高清| 一区二区三区丝袜| 亚洲一区二区成人在线观看| 亚洲一区二区在线视频| 亚洲一区二区在线播放相泽 | 99久久久久免费精品国产| 国产成人精品影院| 91免费看视频| 在线播放国产精品二区一二区四区 | 一本到不卡精品视频在线观看 | 亚洲免费观看视频| 亚洲国产精品久久一线不卡| 午夜精品久久久久久不卡8050| 亚洲va国产天堂va久久en| 久久国产成人午夜av影院| 国产成人av电影在线播放| 91行情网站电视在线观看高清版| 欧美日韩在线精品一区二区三区激情| 在线成人av网站|