[FFmpeg-devel] yadif frame doubling - incorrect closed captioning

Michael Niedermayer michael at niedermayer.cc
Mon Jan 14 17:26:11 EET 2019


On Mon, Jan 14, 2019 at 09:21:10AM -0500, Devin Heitmueller wrote:
> On Mon, Jan 14, 2019 at 3:31 AM Michael Niedermayer
> <michael at niedermayer.cc> wrote:
> > Thus a new function should be added which does all this, and that then
> > be used
> 
> For what it's worth, the fix is actually incorrect both here and in
> vf_vps.  When doubling the framerate, the correct behavior is to split
> the content across both frames and cut the cc_count in half (it's
> actually more tricky than that because certain entries have to be
> moved to the front of the array).

thanks for explaining, i had already suspected that this would become
more complex ...


> 
> That said, using a centralized function is a step in the right
> direction.  It should probably be in libavutil, given it will need to
> be available to both filters and formats (and potentially codecs as
> well if we wanted them to proactively fix cases where they receive an
> invalid cc_count).  That said, in order to do the transformation
> properly it would need to receive the target framerate as well as be
> able to maintain some state (since reducing the framerate requires
> content to be cached in order to combine one or more entries).
> 

> In short, a centralized function would be good, but we probably need
> to think through what the API looks like so we don't have to introduce
> a new API in libavutil and then deprecate it once we want to make the
> splitting/combining logic work according to the spec.

I fear that no matter how hard we try we will likely eventually run
into cases that it cannot handle

also maybe 2 functions would keep this simpler
one to deal with temporal transformations (frame drop, duplicate, interpolate,
combine)
one to deal with spatial transformations, crop, pad, scale, rotate

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

No snowflake in an avalanche ever feels responsible. -- Voltaire
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190114/551421ac/attachment.sig>


More information about the ffmpeg-devel mailing list