[FFmpeg-devel] [PATCH] RoQ muxer
Mon May 7 20:11:28 CEST 2007
On Mon, May 07, 2007 at 05:25:58PM +0200, Vitor wrote:
> Michael Niedermayer wrote:
> >> + int ret = av_interleave_packet_per_dts(s, pkt, in, flush);
> > why the "double" interleave
> I thought that it would be necessary in the case where the video starts
> a few seconds before the audio. Since I don't know how FFmpeg manages
> that internally, I wanted to be sure not to get audio frames too soon.
> >> + /* If there are 2 frames of video pending and no audio, assume there's no
> >> + * more audio */
> >> + if (!ctx->queueBase && ctx->queueBase && ctx->queueBase->next)
> >> + ctx->nxtPkt = PACKETTYPE_VIDEO;
> > what is this code good for / in which case would it fail if this wherent here?
> In the case I just talked about and in the case that there is no audio
> at all. Note that if there is a few seconds of video without audio, it
> will schedule the video frames until the first audio frame is
> interleaved by dts. It will then add it immediately.
this sounds all fairly fragile, are you sure simple plain per dts
interleaving doesnt work?
also what about simple dts interleaving with subtracting a constant
of the dts of all audio packets?
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Observe your enemies, for they first find out your faults. -- Antisthenes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: not available
More information about the ffmpeg-devel