青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

X264 ratecontrol 碼率控制

轉(zhuǎn)載自:http://adam-fish.livejournal.com/1408.html

最近由于項目需要,研究了下x264的碼控,發(fā)現(xiàn)網(wǎng)上這方面的資源很少!這方面據(jù)說也比較難,是x264中唯一一個數(shù)學建模的模塊。
在網(wǎng)上找到的這篇我覺得寫不錯http://hi.baidu.com/sahlee/blog/item/879db7d1823c4c0a3af3cf02.html,只是代碼講解部分較少。
下面是我的學習筆記,拿出來和大家分享,有不對的地方希望有心人多多指正

x264中ratecontrol主要過程是;

1.根據(jù)前面已經(jīng)編好的幀計算SATD值來預(yù)測當前幀的復(fù)雜度(第一幀I幀除外);
2.計算好復(fù)雜度之后,根據(jù)復(fù)雜度和線性量化控制參數(shù)(qcomp)來計算qpscale。qpscale會影響最終編碼是所用到qp。
3.根據(jù)目標碼率和之前編碼幀所用的比特數(shù)可以確定一個rate_factor,若之前編碼的比特數(shù)多與目標實際產(chǎn)生,則rate_factor小。
這個rate_factor是調(diào)整qpscale用的,還有overflow來對qpscale來做溢出補償處理來控制文件的大小。
4.最后根據(jù)計算公式得到qp

主要的函數(shù)

1.
x264_ratecontrol_new()函數(shù)中的一些關(guān)鍵參數(shù)
rc->bitrate = h->param.rc.i_bitrate * 1000.; ///目標碼率
rc->rate_tolerance = h->param.rc.f_rate_tolerance; ///允許的誤差
rc->nmb = h->mb.i_mb_count; ///要編碼的宏塊數(shù)
rc->cplxr_sum = .01 * pow( 7.0e5, h->param.rc.f_qcompress ) * pow( h->mb.i_mb_count, 0.5 );
rc->wanted_bits_window = /*1.0 **/ rc->bitrate / rc->fps;
///得到ratefactor

2.
在x264_encoder_encode這個函數(shù)里面的x264_frame_init_lowres( h, fenc )是對當前幀進行一個下采樣,將cif格式的圖像下采樣為qcif格式。為后面計算SATD做好準備。

x264_ratecontrol_start()
|
rate_estimate_qscale()
rcc->last_satd = x264_stack_align( x264_rc_analyse_slice, h ); ///這個分析之前下采樣出來的SATD的函數(shù)
q = get_qscale( h, &rce, rcc->wanted_bits_window / rcc->cplxr_sum, h->fenc->i_frame ); ///根據(jù)前面已編好幀的比特數(shù)計算rate_factor來調(diào)整qpscale
|
qpscale2qp() ///將得到的qpscale轉(zhuǎn)換成qp


3.
encode--->Encode_frame--->x264_encoder_encode--->x264_slices_write--->x264_slice_write--->x264_ratecontrol_mb
int b0 = predict_row_size_sum( h, y, rc->qpm );這里是計算將要編碼幀的復(fù)雜度,此函數(shù)內(nèi)部涉及到了SATD的計算還有一些和論文相符的復(fù)雜度計算
///細節(jié)沒看明白,但感覺是在編宏塊的時候調(diào)整QP之類的

4.
encode--->Encode_frame--->x264_encoder_encode--->x264_ratecontrol_end /////在編完一幀過后
x264_ratecontrol_end()函數(shù)
h->fdec->f_qp_avg_rc = rc->qpa_rc /= h->mb.i_mb_count; ///aq之前的qp 根據(jù)變量的字面意思應(yīng)該根據(jù)宏塊的個數(shù)來計算qp的平均值
h->fdec->f_qp_avg_aq = rc->qpa_aq /= h->mb.i_mb_count; ///aq之后的qp aq是什么?


if( rc->b_abr )
{
rc->cplxr_sum += bits * qp2qscale(rc->qpa_rc) / rc->last_rceq;

rc->cplxr_sum *= rc->cbr_decay;
rc->wanted_bits_window += rc->bitrate / rc->fps;
rc->wanted_bits_window *= rc->cbr_decay;
accum_p_qp_update( h, rc->qpa_rc );
}
////這一段應(yīng)該是在統(tǒng)計已編好幀的bit數(shù),為編下一幀的qp調(diào)整做好準備

5.
x264_ratecontrol_summary和x264_ratecontrol_delete這兩個函數(shù)不知道為什么沒有走到,summary函數(shù)不知是做什么用的,delete就很明顯是用來釋放rc開辟的空間的


未完成...

posted on 2013-08-15 16:00 楊粼波 閱讀(2963) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久色在线播放| 小辣椒精品导航| 欧美片第一页| 亚洲影院一区| 亚洲综合色婷婷| 一区二区在线视频| 欧美二区在线观看| 欧美日韩的一区二区| 亚洲伊人伊色伊影伊综合网| 午夜精品久久久久久久99热浪潮| 国产日韩精品在线观看| 免费亚洲婷婷| 欧美日韩色一区| 久久电影一区| 欧美96在线丨欧| 亚洲欧洲99久久| 久久久久国色av免费观看性色| 亚洲人成在线播放网站岛国| 中日韩高清电影网| 精品999在线播放| 亚洲免费观看| 精品成人免费| 亚洲午夜在线视频| 亚洲国产成人精品视频| 亚洲视频综合| 91久久国产综合久久| 亚洲尤物精选| 亚洲精品一区二区三区婷婷月| 亚洲一级高清| 亚洲精品一区在线| 欧美一区深夜视频| 亚洲伊人一本大道中文字幕| 美女国内精品自产拍在线播放| 亚洲免费在线精品一区| 欧美黄色一区二区| 国产精品美女在线| 亚洲欧洲日本专区| 国内精品久久久久影院优| 日韩视频中文字幕| 亚洲日韩欧美一区二区在线| 欧美一区二区精品| 亚洲免费一区二区| 欧美精品免费在线| 欧美福利电影在线观看| 国产亚洲精品美女| 亚洲一区二区网站| 亚洲伊人一本大道中文字幕| 欧美猛交免费看| 亚洲第一天堂无码专区| 影视先锋久久| 久久精品女人天堂| 久久精品道一区二区三区| 国产精品久久久久久五月尺| 亚洲精品影视| 一区二区av在线| 欧美巨乳在线观看| 亚洲欧洲在线免费| 亚洲激情视频| 欧美成人一二三| 亚洲第一在线综合在线| 亚洲二区视频| 欧美电影免费网站| 亚洲高清网站| 一区二区国产在线观看| 欧美日韩大陆在线| 亚洲视频福利| 久久国产99| 国产综合久久久久久鬼色| 欧美在线视频一区二区| 老司机一区二区| 亚洲国产精品成人va在线观看| 久热精品视频| 亚洲风情在线资源站| 99精品视频网| 国产精品久久久久久久久久妞妞 | 欧美在线免费观看视频| 国产精品夜夜夜| 久久av二区| 欧美激情一区二区三级高清视频| 亚洲日本黄色| 国产精品成人在线| 欧美亚洲综合网| 男男成人高潮片免费网站| 亚洲国产午夜| 国产精品久久国产精麻豆99网站| 亚洲男女自偷自拍| 你懂的一区二区| 99pao成人国产永久免费视频| 国产精品v欧美精品v日韩精品| 午夜精品国产精品大乳美女| 欧美成人综合一区| 一区二区三区欧美在线| 国产婷婷色综合av蜜臀av| 免费成人黄色片| 亚洲视频一区在线| 麻豆国产精品777777在线| 夜夜夜精品看看| 国产自产v一区二区三区c| 欧美福利小视频| 性欧美video另类hd性玩具| 亚洲高清自拍| 久久精品一区二区| 一区二区三区日韩精品视频| 欧美77777| 午夜精品一区二区三区在线| 亚洲国产电影| 久久精品一二三| 亚洲天堂激情| 亚洲经典三级| 国产一区av在线| 欧美伦理91i| 久久一区二区三区国产精品| 亚洲天堂免费在线观看视频| 亚洲国产精品v| 久久视频这里只有精品| 亚洲综合日韩在线| 日韩视频在线观看免费| 激情综合在线| 国产日韩欧美综合精品| 欧美性做爰猛烈叫床潮| 欧美精品久久久久久久久老牛影院| 午夜精品国产| 亚洲免费在线| 一本一道久久综合狠狠老精东影业 | 国产精品永久入口久久久| 欧美黄色aaaa| 免费在线亚洲| 久久亚洲一区二区| 久久久最新网址| 久久九九热re6这里有精品| 午夜精品免费视频| 亚洲欧美日韩在线综合| 一区二区三区国产在线| 亚洲美女在线国产| 亚洲久久成人| 日韩视频在线观看| 亚洲人成精品久久久久| 亚洲国产精品视频| 亚洲国产91精品在线观看| 欧美激情小视频| 欧美激情一区二区三区不卡| 牛牛影视久久网| 亚洲电影免费在线观看| 亚洲国产日韩在线| 亚洲日本成人| 一区二区三区高清在线| 亚洲午夜一区二区三区| 亚洲欧美www| 久久国产精品久久国产精品| 久久精品在线观看| 美女精品视频一区| 欧美猛交免费看| 国产精品萝li| 激情久久五月天| 91久久综合亚洲鲁鲁五月天| 99热精品在线| 亚洲欧美精品伊人久久| 久久精品国产在热久久| 免费在线观看成人av| 91久久一区二区| 亚洲视频在线观看三级| 久久99在线观看| 欧美精品一区二区三区一线天视频| 欧美日本在线观看| 国产精品视频一区二区三区| 精品999网站| 在线一区亚洲| 久久精品国产亚洲高清剧情介绍| 老司机67194精品线观看| 亚洲国产日韩欧美在线99| 亚洲图色在线| 久久人人爽国产| 欧美日韩在线播| 狠狠入ady亚洲精品| 一区二区三区偷拍| 久久久免费av| 日韩网站免费观看| 久久精品国产一区二区三| 欧美日韩高清区| 国产一区香蕉久久| 在线中文字幕不卡| 母乳一区在线观看| 亚洲欧美日韩精品久久奇米色影视| 亚洲大片精品永久免费| 亚洲自拍电影| 欧美另类极品videosbest最新版本| 国产精品女人毛片| 亚洲精品在线三区| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲久久一区| 久久一综合视频| 国产美女精品人人做人人爽| 日韩亚洲国产精品| 免费观看国产成人| 亚洲欧美日韩人成在线播放| 欧美连裤袜在线视频| 亚洲国产婷婷香蕉久久久久久| 久久精品道一区二区三区| 亚洲私人影院| 欧美日韩一区二区高清|