[FFmpeg-devel] IVTC in FFmpeg

Stefano Sabatini stefasab at gmail.com
Sun Mar 24 11:44:43 CET 2013


On date Sunday 2013-03-24 07:40:45 +0100, Clément Bœsch encoded:
> Hello folks,
> 
> So, as you may know, an efficient inverse telecine filter toolkit was requested
> and trolled many times when talking about libavfilter. After various IRC talks
> all around, it was assumed that the TIVTC solution from Avisynth was most
> likely one of the most efficient one, or at least the most commonly used,
> especially when dealing with all the various broken telecined crap you can find
> all around.
> 
> So here it is, ported from the VapourSynth project, which did some light clone
> from the original filters. It is still a work in progress (I have notably to
> run various extended checks; check the TODO list in the appropriate commit
> description) but it should be usable already.
> 
> Here is the most basic usage of the filters:
> 
>   -vf fieldmatch,decimate
> 
> You can of course specify various options such as the parity, mode, etc. But
> one of the most interesting things about these filters is that they can be used
> in coordination with some other filters. First thing, the fieldmatcher will
> make sure to mark as interlaced the frames it wasn't able to decomb (it will
> also print a warning on stderr), so you can fallback on a real deinterlacer to
> interpolate the fields:
> 
>   -vf "fieldmatch, yadif=deint=interlaced, decimate"
> 
> Now another interesting thing about these filters is that they can take an
> additional video stream (the feature is known as "clip2" in TIVTC and vivtc).
> In the case of fieldmatch for instance, you can specify a pre-processed input
> to calculate the combed metrics, but still use the original untouched source to
> reconstruct the fields. It would theorically looks like this:

> 
>   -vf "            split                       [ppme][clean];
>        [ppme]      fields, denoise, tinterlace [pp];
>        [pp][clean] fieldmatch=ppsrc=1, decimate"

> 
> The pp chain here theorically separate fields, run a destructive/hard denoising
> (note: a good denoiser is also often trollquested), and re-interlace; that way
> it could help fieldmatch to detect fields better; and the filter will still
> pick from the clean source.

What is "fields"? Also why is hqdn3d not considered good enough?

[...]
-- 
FFmpeg = Fancy & Forgiving Mean Perfectionist Eretic Geisha


More information about the ffmpeg-devel mailing list