[FFmpeg-trac] #4178(undetermined:open): Opus audio in MKV container
FFmpeg
trac at avcodec.org
Thu Jan 22 16:50:30 CET 2015
#4178: Opus audio in MKV container
-------------------------------------+-------------------------------------
Reporter: agressiv | Owner: vigneshvg
Type: defect | Status: open
Priority: important | Component:
Version: git-master | undetermined
Keywords: mkv opus | Resolution:
regression | Blocked By:
Blocking: | Reproduced by developer: 1
Analyzed by developer: 1 |
-------------------------------------+-------------------------------------
Comment (by mbunkus):
The MKVToolNix' author here. For each Opus packet read from an Ogg file
mkvmerge decodes the Opus TOC and calculates the expected decoded duration
(and the expected end timestamp as the sum of the durations of all prior
Opus packets). This duration is compared with the Ogg page's granulepos
which signals when the containing packets are supposed to _end_. If there
is a difference between what the Opus TOC and the Ogg page's granulepos
say then this difference is written as a !DiscardPadding element.
I've done some quick tests. For files created by opusenc there's exactly
one Ogg page/Opus packet for which this is the case: the very last one in
the file. The same is true for files created with ffmpeg 2.5 (from the
Arch Linux repositories). The resulting Matroska files contain exactly one
!DiscardPadding element.
I've also given today's ffmpeg git a try (revision
a30fd828abf4830d15a1bd7935d08477961f6628). That version does not show any
irregularities either; mkvmerge only finds a single Ogg packet with such a
difference.
Therefore I'm interested how the !Ogg/Opus files the ticket's submitter
has used were created. The amount of !DiscardPadding elements in the
sample file attached to this ticket suggests that pretty much all Ogg
pages have granulepos values that differ from what the Opus TOC suggests.
I'd also like to get my hands on such an !Ogg/Opus file if possible. The
first couple of MB should be enough.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4178#comment:8>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list