[FFmpeg-devel] ASS in AVI
Tue Aug 11 21:08:03 CEST 2009
On Tue, Aug 11, 2009 at 08:37:53PM +0200, Michael Niedermayer wrote:
> On Tue, Aug 11, 2009 at 02:30:45PM +0200, Aurelien Jacobs wrote:
> > Hi,
> > This patchset add support for ASS subtitles in AVI demuxer.
> > The format is documented  and implemented in various tools since sevral
> > years.
> > First patch export functions of the ASS demuxer so that they can be used
> > from the AVI demuxer.
> > Second patch add seeking support in the ASS demuxer.
> > Third patch finally add support for demuxer ASS subtitles from AVI files
> > using functions from the ASS demuxer.
> uhm eh hmm wtf ...
> what exactly is this patch set doing and why?
> ok on can store a whole subtitle file in one chunk, this isnt really sane
> but hey the windoz kiddies arent sane.
Yes, this kind of non-interleaved storage is ugly... But I fear we will
have to deal with it :-(
> still i dont see why that would require this mess
> 1. avi demuxer returns 1 chunk
This chunk is generally at the very end of the file, so it have to
seek to this chunk and read it during read_header.
> 2. ass parser splits chunk
Here I added a step:
2.5. avi demuxer get the next packet from ass parser and output it
interleaved with other streams at correct time.
> 3. add decoder makes many AVSubtitles ot of it
> 4. render renders out of the hundreads of AVSubtitles which are needed
> at the current frame
So the renderer needs to buffer all the AVSubtitles from all the subtitle
And it needs to be able to select which stream to render (and
change it at runtime) ?
Or do we need one renderer per subtitle stream, with the possibility to
enable/disable each renderer at runtime ?
And renderer needs to handle seeking ?
All of this doesn't sound really natural.
And how would you handle stream copy from AVI to NUT for example ?
Basically, my code does more or less the same thing that the non-interleaved
More information about the ffmpeg-devel