Hi Jason<br><br>Thanks for pointing me in the right direction on this issue.<br><br>I have made a few changes that mean that I always ensure that when in re-init the encoder that the b_repeat_headers is set to "1". This change has meant that I have been able to change the quality dynamically which is what I needed.<br>
<br>Much appreciate your help in this matter.<br><br>Thanks<br>Declan<br><br><div class="gmail_quote">On Mon, Oct 26, 2009 at 10:47 PM, Jason Garrett-Glaser <span dir="ltr"><<a href="mailto:darkshikari@gmail.com">darkshikari@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">On Mon, Oct 26, 2009 at 3:42 PM, declan harrison<br>
<div><div></div><div class="h5"><<a href="mailto:harrison.declan@googlemail.com">harrison.declan@googlemail.com</a>> wrote:<br>
><br>
><br>
> On Mon, Oct 26, 2009 at 7:26 PM, Jason Garrett-Glaser<br>
> <<a href="mailto:darkshikari@gmail.com">darkshikari@gmail.com</a>> wrote:<br>
>><br>
>> On Mon, Oct 26, 2009 at 12:22 PM, declan harrison<br>
>> <<a href="mailto:harrison.declan@googlemail.com">harrison.declan@googlemail.com</a>> wrote:<br>
>> ><br>
>> ><br>
>> > On Mon, Oct 26, 2009 at 7:02 PM, Jason Garrett-Glaser<br>
>> > <<a href="mailto:darkshikari@gmail.com">darkshikari@gmail.com</a>> wrote:<br>
>> >><br>
>> >> On Mon, Oct 26, 2009 at 11:12 AM, declan harrison<br>
>> >> <<a href="mailto:harrison.declan@googlemail.com">harrison.declan@googlemail.com</a>> wrote:<br>
>> >> > Hi<br>
>> >> ><br>
>> >> > Im using x264 with ffmpeg to encode videos on the fly (realtime with<br>
>> >> > minimum<br>
>> >> > buffering) in a proxy. So I am working on a HTTP stream and<br>
>> >> > therefore 1<br>
>> >> > pass encoding is the only option available to me.<br>
>> >> ><br>
>> >> > My use case is that after encoding the video for say 10 seconds with<br>
>> >> > a<br>
>> >> > "--crf" value of 22 another network element informs me that I need to<br>
>> >> > increase/decrease the quality of the video stream being sent to the<br>
>> >> > client.<br>
>> >> > I then would like to change the effective "crf" value that I am<br>
>> >> > currently<br>
>> >> > encoding the video stream.<br>
>> >><br>
>> >> For streaming you need to set a maxrate and bufsize so that you don't<br>
>> >> exceed the bounds of your connection. If you want absolutely no<br>
>> >> buffer whatsoever, i.e. zero-latency, you need to set bufsize =<br>
>> >> (maxrate / framerate).<br>
>> >><br>
>> >> x264 currently does not support reconfiguring ratecontrol in realtime,<br>
>> >> but you can re-init the encoder if you want.<br>
>> >><br>
>> >><br>
>> > Hi Jason<br>
>> ><br>
>> > So re-init the encoder will this cause many issues for the client or do<br>
>> > you<br>
>> > think that it will pass without much interference?<br>
>><br>
>> No issues for the client; the primary issue is that of tracking the<br>
>> VBV buffer fullness so that you can init the encoder with the correct<br>
>> initial occupancy for the VBV.<br>
><br>
> so if I re-init the encoder will this ensure that all the meta data will<br>
> reflect the new video stream. Im thinking about NAL parameter sets etc?<br>
<br>
</div></div>Re-initting the encoder inherently starts the stream at an IDR frame,<br>
which will involve sending new SPS/PPS as long as b_repeat_headers is<br>
set.<br>
<div><div></div><div class="h5"><br>
Dark Shikari<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>
</div></div></blockquote></div><br>