[x264-devel] how i_scenecut_threshold values works

Emmanuel Weber weberemmanuel at gmail.com
Sun Jan 16 18:00:41 CET 2011


To add to the discussion, I recently had to use a "not to be named"
video conferencing client framework where I had no control over the
transport layer.

Intra frame were requested at a fixed interval of 30s independent of
the loss (and video would freeze in some case in lossy scenario until
the next intra). To add to my misery intra-refresh didn't help, when
the third party decoder would freeze it would not restart unless it
was getting a full intra.

I ended up managing my own key frame interval (outside of x264) based
on loss information which was less than optimal but helped a bit.

All that to say that I would have benefited from an updatable keyframe interval.

Emmanuel



On Sat, Jan 15, 2011 at 10:52 AM, Jason Garrett-Glaser <jason at x264.com> wrote:
> On Sat, Jan 15, 2011 at 10:09 AM, Rafael Sousa <rafael.lmsousa at gmail.com> wrote:
>> I need to modify it in realtime to match the network adversity like jitter
>> and packet loss (obtained by RTCP), and so, to maintain the quality of the
>> video streamed inserting I-frames more frequently or less frequently
>> accordling to the network situation. In the source code, the description
>> of i_scenecut_threshold says "how aggressively to insert extra I frames",
>> and that is exactly what I need: to change the frequency of I-frames. I just
>> want to know how the values of this variable works.
>
> Inserting I-frames is not an appropriate method for dealing with loss.
>  Here are some better methods:
>
> 1.  FEC.
> 2.  invalidate_reference: when the client loses a packet, tell the
> encoder, and the encoder will magically fix it without forcing a
> keyframe.  This can be combined with FEC.
> 3.  Intra refresh: this allows refreshing the image without the
> latency induced by keyframes (i.e. due to the fact that keyframes are
> large).  Like keyframes, intra refreshes can be called on-demand by
> the caller.
>
> Jason
> _______________________________________________
> x264-devel mailing list
> x264-devel at videolan.org
> http://mailman.videolan.org/listinfo/x264-devel
>


More information about the x264-devel mailing list