[FFmpeg-devel] [PATCH] WIP: subtitles in AVFrame

wm4 nfxjfg at googlemail.com
Fri Nov 11 17:04:39 EET 2016


On Fri, 11 Nov 2016 15:36:04 +0100
Nicolas George <george at nsup.org> wrote:

> > It seems to me that not libavfilter should handle this, but the one
> > which feeds libavfilter.  
> 
> Its collaboration is mandatory. But the bulk of the work should be done
> by the library, not duplicated in all applications.

I'm saying that a good solution is application-specific. It depends on
the exact data flow depending on what kind of filter graph is used.

> >			   If it feeds a new video frame to it, but no
> > subtitle frame, it means there is no new subtitle yet due to
> > sparseness.  
> 
> Libavfilter can not know when there is "no subtitle frame", only when
> there is one. Hence the need to tell it explicitly:
> 
> >	      There is actually no need for weird heartbeat frames.  
> 
> ... with a heartbeat frame.

libavfilter still doesn't know whether there are subtitle frames at
a future timestamps if you send heartbeat frames.

What I'm suggesting is that the API user has to be aware of the
requirements his filter chain might have on subtitle input. Thus, if
the user requests output for which a subtitle frame would have been
required, but it didn't send one, libavfilter assumes that there is
none.

If you want your heartbeat frames to work, they would have to go into
the reverse direction: send the timestamp up to the source filters, let
the user check the timestamp, and then send a heartbeat frame if for
this _specific_ timestamp no subtitle frame will be available. But that
is also complex.

> > Please try not to reply to every paragraph separately or so. This makes
> > it hard to follow discussions. In fact, I won't take part in a
> > discussion of that kind. It wastes so much time because you can get lost
> > in meaningless details.  
> 
> This is exactly what I did because this is exactly what needed to be
> done for that kind of discussion.

I consider this reply very disrespectful. Maybe read the CoC?


More information about the ffmpeg-devel mailing list