[vlc-devel] [PATCH] Deinterlace: change default from blend to yadif

Juha Jeronen juha.jeronen at jyu.fi
Thu Sep 20 11:16:42 CEST 2012


On 20/09/12 11:38, Ilkka Ollakka wrote:
> On Thu, Sep 20, 2012 at 10:34:02AM +0200, Steinar H. Gunderson wrote:
>> On Thu, Sep 20, 2012 at 11:21:26AM +0300, Ilkka Ollakka wrote:
>>> -    add_string( FILTER_CFG_PREFIX "mode", "blend", SOUT_MODE_TEXT,
>>> +    add_string( FILTER_CFG_PREFIX "mode", "yadif", SOUT_MODE_TEXT,
>> Why a mode that goes for half the framerate? Don't you want yadifx2 then?
> Yadif2x does have problems currently in sout chain as framerate doupling
> filters don't work properly in sout currently.

Also, all 2x modes will cause the occasional visual glitch in normal
use, since VLC's clock is not synced to the display refresh.

This occurs because the display refresh rate is comparable in magnitude
to the video field rate, so if even one refresh is missed, it's
immediately visible as a sudden one-time judder. If the display refresh
rate was much higher (600Hz or so?), this wouldn't matter.

Yadif2x is probably the best at hiding this, though, since it
reconstructs a full frame. Bob, linear and phosphor, which are all based
on a dynamic illusion of full resolution, would really require syncing
to the display refresh to run reliably for a long time.


In the above, I'm assuming that the display refresh rate either matches
the video field rate (e.g. 60Hz) or is a low integer multiple of the
video field rate (e.g. 120Hz). Otherwise a cadence would need to be
built to upconvert the video field rate.

And further, I'm ignoring the 59.94 vs. 60 difference; this would
require some speedup for NTSC videos to first hit the exact 60. For PAL
and film this is no problem, as they are exactly 25 (can match 75) and
24 (can match 72), respectively.)


More information about the vlc-devel mailing list