Thanks for your information!<div>However, it is still degraded quality by time (but in different effect and VBV overflow more).</div><div><br></div><div>Is there anyway that bits is overallocated constant overtime (mean, at low bitrate, quality can be low but does not degrade by time)?</div>
<div><br><br><div class="gmail_quote">On Thu, Oct 27, 2011 at 10:11 AM, Alex Jurkiewicz <span dir="ltr"><<a href="mailto:alex@jurkiewi.cz">alex@jurkiewi.cz</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
You must specify a bufsize for VBV encoding to work. More info:<br>
<a href="http://mewiki.project357.com/wiki/X264_Encoding_Suggestions#VBV_Encoding" target="_blank">http://mewiki.project357.com/wiki/X264_Encoding_Suggestions#VBV_Encoding</a><br>
<br>
Single pass bitrate-based ratecontrol doesn't work so well, because<br>
the ratecontrol algorithm has no information about the complexity of<br>
future scenes. It often overallocates bits at the start and has to<br>
underallocate later on.<br>
<br>
A common recommendation is to use CRF-based ratecontrol to pick a<br>
'target quality' and VBV settings to constrain the maximum bitrate to<br>
below your maximum pipe size. This will use the lowest bitrate<br>
required to achieve the given CRF value, capped given the VBV<br>
settings.<br>
<br>
Try these options: rc_method=crf, crf=23, vbv_bufsize=164,<br>
vbv_maxrate=164. Don't specify bitrate.<br>
<br>
Also, at such a low bitrate you might want to consider intra-refresh<br>
as well, which will make the size of each frame more consistent. This<br>
can improve streaming performance when you have small VBV buffers.<br>
<br>
Alex<br>
<div><div></div><div class="h5"><br>
On Mon, Oct 24, 2011 at 2:23 PM, Alex S <<a href="mailto:flashsupporter@gmail.com">flashsupporter@gmail.com</a>> wrote:<br>
> I am using x264 in ABR and CBR mode. However, the quality is degraded by<br>
> time.<br>
> If I use CQP ratecontrol method, the quality is acceptable at bitrate<br>
> 160kbps. However, with the same bitrate (or even higher) in ABR/CBR mode,<br>
> video quality is degraded by time and unacceptable.<br>
> Here is context setting in my code:<br>
> x264_param_default_preset(&param, "veryfast", "zerolatency");<br>
> x264_param_apply_profile(&param, "main");<br>
> param.i_threads = 1;<br>
> param.i_width = width;<br>
> param.i_height = height;<br>
> param.i_fps_num = fps;<br>
> param.i_fps_den = 1;<br>
> param.i_keyint_max = fps * 2<br>
> param.b_intra_refresh = 0;<br>
> param.rc.i_bitrate = 164     ;<br>
> param.rc.i_vbv_max_bitrate = 164;<br>
> param.rc.i_rc_method = X264_RC_ABR;<br>
> param.b_repeat_headers = 1;<br>
> param.b_annexb = 1;<br>
> Could anybody help me to modify or add other setting parameters to solve the<br>
> problem?<br>
> Thank you!<br>
> Alex<br>
><br>
</div></div>> _______________________________________________<br>
> x264-devel mailing list<br>
> <a href="mailto:x264-devel@videolan.org">x264-devel@videolan.org</a><br>
> <a href="http://mailman.videolan.org/listinfo/x264-devel" target="_blank">http://mailman.videolan.org/listinfo/x264-devel</a><br>
><br>
><br>
_______________________________________________<br>
x264-devel mailing list<br>
<a href="mailto:x264-devel@videolan.org">x264-devel@videolan.org</a><br>
<a href="http://mailman.videolan.org/listinfo/x264-devel" target="_blank">http://mailman.videolan.org/listinfo/x264-devel</a><br>
</blockquote></div><br></div>