[FFmpeg-devel] [PATCH] iff/8svx: move decoding/deinterleaving in demuxer

Stefano Sabatini stefano.sabatini-lala at poste.it
Sun May 29 11:25:20 CEST 2011

On date Sunday 2011-05-29 10:54:29 +0200, Reimar Döffinger encoded:
> On 28 May 2011, at 13:42, Stefano Sabatini <stefano.sabatini-lala at poste.it> wrote:
> > This is required for making possible to return audio data in packets
> > rather than return a huge packet with all the chunk data, which is
> > problematic for applications.
> > 
> > In particular ffplay cannot pause in the middle of a packet.

> Have you tested with other applications? ffplay just has a stupid
> implementation, IMO that is not at all a good reason to move stuff
> that does not belong there into libavformat.

But... sending a huge packet is not a good idea in principle,
applications expect the data to be split in little packets.
Also the huge packet idea is preventing seeking into the file, which
is a duty of the demuxer.

In general I don't like this solution so much, but it's the best which
is achievable with the IFF format, which doesn't sound particularly
well-designed from this point of view.

> Also, would remuxing still work properly after that change (assuming
> we had a muxer for the format)?

We don't have an IFF muxer, it may be trivially implemented adopting
the same logic (you cache all the incoming packets, and compress and
de-interleave them when closing the file).
FFmpeg = Fantastic & Fantastic Marvellous Pitiless Enchanting Gnome

More information about the ffmpeg-devel mailing list