[vlc-devel] [PATCH 5/4] JJ's deinterlacer changes

Juha Jeronen juha.jeronen at jyu.fi
Sun Jan 30 22:21:37 CET 2011


Hi all,

That's correct, patch five out of four ;)

I have made major accuracy improvements. The attached patch is a PREVIEW
version of the updated filter. It applies on top of my original
four-patch set:

http://mailman.videolan.org/pipermail/vlc-devel/2011-January/078588.html
http://mailman.videolan.org/pipermail/vlc-devel/2011-January/078589.html
http://mailman.videolan.org/pipermail/vlc-devel/2011-January/078591.html
http://mailman.videolan.org/pipermail/vlc-devel/2011-January/078590.html

This patch is not yet meant for review, but is provided as a convenience
for those who want the latest in IVTC :)


In my experiments, the new version is much better at catching the
cadence correctly - and staying locked on - than the previous posted
version. Artifacts occur less often (especially in talking scenes in
anime), and motion (especially camera pans) should now look smoother.
Also, vertical camera pans now work correctly (at least most of the time
- much more than could be said of the previous version ;) ).

The code works, and the documentation (the lengthy comment) has been
updated to reflect the changes, but the code may still require some
cleaning. For example, I haven't yet decided which debug messages are
useful, and which ones should just be deleted from the final version.
Also, I haven't checked all comments for consistency with the updated
implementation.

I will prepare a proper version after my original set is out of the way.


The major changes are as follows:

- Added a second cadence detector, adapting ideas from Vektor's classic
TVTime IVTC filter. This seems much more reliable than my original.
However, the original one sometimes locks on faster (and works correctly
for the easier cases), so I've kept both. The output from the
"Vektor-like" one is used when it gives a result; otherwise the original.

- A TFF stream may only contain a TFF telecine, and a BFF stream a BFF
telecine. (This is fairly obvious from how field renderers work.) Use
the TFF/BFF flag to narrow down the possibilities in detection.

- Use the operation table for composing frames when the cadence is
judged reliable. This fixes many anime talking scenes and vertical
camera pans.

- Use an emergency frame composer (the interlace score based one from
the previous version, but restricted with TFF/BFF information) when the
cadence is not reliable. Also, in this emergency mode, ignore timestamp
mangling and frame drops. (When the improved cadence detector can't
catch on, the motion is irregular already, so a duplicate frame here and
there won't really matter. This way it looks at least semi-smooth until
the cadence catches again.)

- Soft telecine mode now exits to the previous mode of the filter. This
fixes handling of material which constantly switches between soft and
hard telecine (e.g. the Stellvia OP).

- The backup deinterlacer has been disabled (by adjusting the
threshold). A local strategy is needed to do this properly. A global one
won't do, since the interlace scores of progressive frames vary wildly
depending on the source material.

- The original interlace detection threshold has been restored. It works
better now.


That's all for now,

 -J

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Preview-of-next-gen-IVTC.patch
Type: text/x-patch
Size: 90650 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20110130/2475ff48/attachment.bin>


More information about the vlc-devel mailing list