Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Last revision Both sides next revision | ||
yadif [2019/06/26 01:59] beandog created |
yadif [2019/06/26 20:02] beandog |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== yadif ====== | ====== yadif ====== | ||
+ | |||
+ | * [[ffmpeg]] | ||
+ | * [[frameinfo]] | ||
+ | * [[detelecine]] | ||
+ | * ''man ffmpeg-filters'' | ||
+ | * [[https://ffmpeg.org/ffmpeg-filters.html#yadif-1]] | ||
+ | * [[https://wiki.videolan.org/Deinterlacing]] | ||
+ | |||
+ | * mode | ||
+ | * 0 / send_frame - Output one frame for each frame **(default)** | ||
+ | * 1 / send_field - Output one frame for each field (my preferred method) | ||
+ | * 2 / send_frame_nospatial - Like send_frame, but it skips the spatial interlacing check. | ||
+ | * 3 / send_field_nospatial - Like send_field, but it skips the spatial interlacing check. | ||
+ | |||
+ | <code> | ||
+ | parity | ||
+ | The picture field parity assumed for the input interlaced video. It accepts one of the following values: | ||
+ | |||
+ | 0, tff | ||
+ | Assume the top field is first. | ||
+ | |||
+ | 1, bff | ||
+ | Assume the bottom field is first. | ||
+ | |||
+ | -1, auto | ||
+ | Enable automatic detection of field parity. | ||
+ | |||
+ | The default value is auto. If the interlacing is unknown or the decoder does not export this information, top field first will be assumed. | ||
+ | |||
+ | deint | ||
+ | Specify which frames to deinterlace. Accept one of the following values: | ||
+ | |||
+ | 0, all | ||
+ | Deinterlace all frames. | ||
+ | |||
+ | 1, interlaced | ||
+ | Only deinterlace frames marked as interlaced. | ||
+ | |||
+ | The default value is all. | ||
+ | </code> | ||
The best description I've seen of the filter options is here: [[https://www.avidemux.org/admWiki/doku.php?id=using:video_filter_yadif]] | The best description I've seen of the filter options is here: [[https://www.avidemux.org/admWiki/doku.php?id=using:video_filter_yadif]] | ||
- | I use ''yadif'' on DVDs that have interlacing, but are not telecined. | + | I use ''yadif'' on DVDs that have interlacing, and detelecine filters are not cleaning it up -- among my collection, it's pretty rare. Only two cartoon series, and three live action. |
Command line for its default options: | Command line for its default options: | ||
Line 10: | Line 50: | ||
ffmpeg ... -vf yadif=mode=send_frame:parity=auto:deint=all ... | ffmpeg ... -vf yadif=mode=send_frame:parity=auto:deint=all ... | ||
</code> | </code> | ||
+ | |||
+ | Using BeyBlade as a source. | ||
+ | |||
+ | Default for ''mode'' is ''send_frame'', which will output one frame for each frame; the output frame rate is constant at 30000/1001 (29.97, NTSC). | ||
+ | |||
+ | If I set it to create a frame for each field (''mode=send_field''), it will come out at 60000/1001 constant instead (59.94). | ||
+ | |||
+ | {{::mpv-shot0001.png?direct|}} | ||
+ | |||
+ | {{::mpv-shot0002.png?direct|}} | ||
+ | |||
+ | {{::mpv-shot0003.png?direct|}} | ||
+ | |||
+ | Running defaults, or, just using ''-vf yadif'', the same frames in sequence: | ||
+ | |||
+ | {{::mpv-shot0004.png?direct|}} | ||
+ | |||
+ | {{::mpv-shot0005.png?direct|}} | ||
+ | |||
+ | {{::mpv-shot0006.png?direct|}} | ||
+ | |||
+ | I'm also not caring about video encoding quality right here, it's just default x265 settings. | ||
+ |