On Mon, 28 Apr 2014 10:05:42 +0200, Hendrik Leppkes <[email protected]> wrote: > On Mon, Apr 28, 2014 at 7:34 AM, Anton Khirnov <[email protected]> wrote: > > > > On Sun, 27 Apr 2014 23:06:07 +0200, Hendrik Leppkes <[email protected]> > > wrote: > >> On Sun, Apr 27, 2014 at 6:47 PM, Anton Khirnov <[email protected]> wrote: > >> > --- > >> > libavformat/matroska.c | 1 + > >> > 1 file changed, 1 insertion(+) > >> > > >> > diff --git a/libavformat/matroska.c b/libavformat/matroska.c > >> > index 410e2f4..9628abc 100644 > >> > --- a/libavformat/matroska.c > >> > +++ b/libavformat/matroska.c > >> > @@ -32,6 +32,7 @@ const CodecTags ff_mkv_codec_tags[]={ > >> > {"A_MPEG/L2" , AV_CODEC_ID_MP2}, > >> > {"A_MPEG/L1" , AV_CODEC_ID_MP2}, > >> > {"A_MPEG/L3" , AV_CODEC_ID_MP3}, > >> > + {"A_OPUS" , AV_CODEC_ID_OPUS}, > >> > {"A_PCM/FLOAT/IEEE" , AV_CODEC_ID_PCM_F32LE}, > >> > {"A_PCM/FLOAT/IEEE" , AV_CODEC_ID_PCM_F64LE}, > >> > {"A_PCM/INT/BIG" , AV_CODEC_ID_PCM_S16BE}, > >> > -- > >> > >> > >> This should only be added if you also write the Opus specific > >> information for SeekPreRoll and CodecDelay when muxing (or muxing > >> disabled until that is so), otherwise you produce non-standard files. > >> You could port these muxing things from FFmpeg, fwiw. > >> > > > > I don't see why would those elements (or the problem they solve) be in any > > way > > Opus specific. > > "Specific" was probably not the exact right term, but they were > introduced for proper Opus support, and without at least CodecDelay, > you won't be able to produce proper timestamps for Opus audio in MKV. > SeekPreRoll is IMHO not as crucial.
My point was that this exact problem exists for any other MDCT-based codec. So not writing CodecDelay for Opus is exactly as wrong as not writing it for MP3, Vorbis, AAC, etc. Anyway, I'll send a separate patch that writes the delay. -- Anton Khirnov _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
