[Ffmpeg-devel] Interleaving audio and video

Michael Niedermayer michaelni
Mon Feb 5 01:19:08 CET 2007


Hi

On Sun, Feb 04, 2007 at 02:48:40PM -0800, Roman Shaposhnik wrote:
> On Sun, 2007-02-04 at 22:40 +0100, Michael Niedermayer wrote:
> > Hi
> > 
> > On Sun, Feb 04, 2007 at 12:53:54PM -0800, Roman Shaposhnik wrote:
> > > Hi
> > > 
> > > On Sun, 2007-02-04 at 10:42 +0100, Michael Niedermayer wrote:
> > > > >   As I pointed out in my previous email -- it seems that the 
> > > > > current implementation of the GXF would generate incorrect results 
> > > > > if av_write_frame() gets used. Even for the incoming stream of 
> > > > > packets with the perfect interleave.
> > > > > 
> > > > >   I think we should fix this. Your thoughts ?
> > > > 
> > > > either allow interleave_packet() to repack PCM packets or change the gxf
> > > > muxer to not repack them in interleave_packet()
> > > 
> > >   Here I don't quite follow. The problem in my opinion is to make 
> > > client use interleave_packet() in the first place. Of course
> > 
> > NO! of course not, if the client needs interleave_packet then it MUST
> > call av_interleaved_write_frame() that is the purpose of the function
> > you remove the possibility of muxing correcly interleaved packets with
> > low delay and no memcpy and duplicate the existing interleaving system,
> > please read the code it seems you dont understand it at all, what you 
> > propose makes no sense
> 
>   Well, I don't actually prose anything and  yes -- I've read the
>   code ;-) 
> 
>   But for some reason we're still miscommunicating and talking about
>   two different things here. Once again -- please try to follow my
>   reasoning keeping in mind that I'm not prosing anything but rather
>   describe what I see as a problem and asking for advice.
> 
>   So, first of all -- here's a usecase scenario I'm worried about:
> 
>       Imagine a general purpose application that can output any stream
>       the user asks for. Also imagine that the incoming stream sometimes
>       is interleaved properly and sometimes isn't. Now, the question
>       is -- what would you recommend for the application developer:
>       av_interleaved_write_frame() or  av_write_frame() ? Keep in
>       mind that application always needs maximum performance (which,
>       for example, means that producing badly interleaved AVIs is
>       not a problem) but also needs to generate correct GXF streams. 
> 
>   I'm using GXF here not because I care about it that much, but because
>   if I follow its example of using interleave_packet() as a packetizer
>   for DV muxer -- it seems to me I can not guarantee correct streams
>   in certain cases ever!

elaborate what "the incoming stream sometimes is interleaved properly
and sometimes isn't" means, that is a definition of properly interleaved
and how does the application know that

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

Opposition brings concord. Out of discord comes the fairest harmony.
-- Heraclitus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070205/6e90d710/attachment.pgp>



More information about the ffmpeg-devel mailing list