[Ffmpeg-devel] Interleaving audio and video

Michael Niedermayer michaelni
Tue Feb 6 11:57:11 CET 2007


On Mon, Feb 05, 2007 at 09:01:31PM -0800, Roman Shaposhnik wrote:
> Hi
> On Feb 5, 2007, at 3:48 PM, Michael Niedermayer wrote:
> >
> >av_write_frame() is needed for muxing without an extra memcpy() and
> >without extra delay it will because of that not be removed or  
> >deoptimized
> >you are free to fork ffmpeg, you are also free to continue to argue  
> >but
> >i fear i wont be replying any further
>   As I mentioned time and again -- its your project. However I do find
> certain things inconsistent in FFmpeg's API and I try to argue about
> such inconsistency. Sometimes it happens because I lack knowledge
> sometimes because they are inconsistent. Its not that big of a deal
> if you truly believe that the APIs are perfect. And I do understand
> that you don't get paid for educating folks like myself. I don't get  
> paid
> a cent for working on FFmpeg so I assume that I can at least
> compensate in the areas of acquiring additional knowledge
> and personal pride of seeing that my opinions matter. If none
> of what I mention is enough of a reason for you to reply that's
> fine as well. We can always limit our conversations to me asking
> very simple implementation related questions and you giving
> prescriptive answers.

your oppinion does matter and ive heared it, furtermore i do not
agree with it in this case and you seem to be unwilling to accept that.

iam just weighting the advatages against the disadvantages and
(breaking API, slowing code down, increasing memory needed, increasing
latency, removing feature but its your philosophical preference) looses

> >and about your CGI example
> >either interleave the packets correctly and use av_write_frame()
> >or dont and use av_interleaved_write_frame()
>   That's a fine answer. But based on it I think output_example.c
> has to be changed.

yes, using av_interleaved_write_frame() would be simplest, alternative
would be to check if pure dts interleaving is wanted and then use
av_write_frame() in that case but i think the complexity isnt a good
idea for output_EXAMPLE.c

> >>
> >>P.S. Its interesting to notice that ffmpeg itself uses
> >>av_interleaved_write_frame() where ffserver uses av_write_frame().
> >
> >i see nothing interresting here, ffserver as a realtime thingy  
> >cannot do
> >extra buffering as the delay would be unacceptable ...
>   I find it interesting because if you ever were to make  ffserver  
> to generate
> an GXF stream for you -- with the current implementation that would
> produce a broken stream. This is a bug. Plain and simple. And I do
> find bugs to be interesting.

well ffserver is broken ATM and until thats fixed i think theres no
sense in thinking about if ffserver can output GXF or even if it should

Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato
-------------- 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/20070206/b9fef704/attachment.pgp>

More information about the ffmpeg-devel mailing list