[FFmpeg-devel] [RFC] Move ffplay engine to separate library

Lukasz M lukasz.m.luki at gmail.com
Sat Nov 23 21:43:24 CET 2013

On 23 November 2013 21:06, Nicolas George <george at nsup.org> wrote:

> Le tridi 3 frimaire, an CCXXII, Stefano Sabatini a écrit :
> > Why do you need a sink for every output device? Why not a generic sink
> > like movie is for input formats/devices?
> Unfortunately, muxers lack any kind of equivalent of query_formats().
> Lukasz's proposal of a probe device API may be what is missing, though.
> Lukasz, are you reading this part of the discussion?

Yes, I'm reading. I made this probe_device API exactly for this reason.
You can probe device for all supported formats and you can configure sink.

But there is still a problem you already mention with extra memcpy's.
Adding extra API to bypass avcodec_encode_video2/audio2 would be more
effective when device supportes raw data.

> > BTW I already wrote a sink, the main problem was how to pass nested
> > options (we have the same problem with source, indeed we can't set
> > "private" options but just a few generic format options).
> If the output format is known in advance, the corresponding context can be
> declared as a child object to the sink context. That does not work for a
> generic "any device" sink, though.

This is also a problem. So far I ignored it and moved options handling to
client code where device is known.

More information about the ffmpeg-devel mailing list