Ivo Emanuel Gonçalves
2008-Nov-10 23:59 UTC
[ogg-dev] oggz-validate does not seem to check for correctly framed headers
While testing the new vcut, some of the early results had badly framed headers. I actually didn't notice it at first, because I was testing with oggz-validate, but ogginfo does identify the problem: "WARNING: Vorbis stream X does not have headers correctly framed. Terminal header page contains additional packets or has non-zero granulepos" Conrad (or someone else) may want to change the tool to identify these files. There's a sample attached. -Ivo -------------- next part -------------- A non-text attachment was scrubbed... Name: vcut-test-tones.ogg Type: application/ogg Size: 14364 bytes Desc: not available Url : http://lists.xiph.org/pipermail/ogg-dev/attachments/20081110/edc79e5d/attachment.ogg
Conrad Parker
2008-Nov-11 01:06 UTC
[ogg-dev] oggz-validate does not seem to check for correctly framed headers
2008/11/11 Ivo Emanuel Gon?alves <justivo at gmail.com>:> While testing the new vcut, some of the early results had badly framed > headers. I actually didn't notice it at first, because I was testing > with oggz-validate, but ogginfo does identify the problem: > > "WARNING: Vorbis stream X does not have headers correctly framed. > Terminal header page contains additional packets or has non-zero > granulepos" > > Conrad (or someone else) may want to change the tool to identify these > files. There's a sample attached.Hi Ivo, good idea, and thanks for also supplying an example file! How did we get here? Originally oggz-validate just checked the basics of Ogg framing, which are independent of the codec. These are the things that liboggz's oggz_write() will enforce - things like BOS and EOS placement, and that granulepos is non-decreasing. Later we started adding checks for codec-specific constraints, like that Theora BOS must come before the Vorbis BOS. Perhaps there are more codec-specific constraints we can check for. liboggz already knows how many headers each track should have, so it should be fairly straightforward to add a check for this that works for all codecs (assuming that the constraint -- that header and non-header packets must not share a page -- applies to all Ogg media types). Conrad.
Conrad Parker
2008-Nov-14 08:50 UTC
[ogg-dev] oggz-validate does not seem to check for correctly framed headers
2008/11/11 Conrad Parker <conrad at metadecks.org>:> 2008/11/11 Ivo Emanuel Gon?alves <justivo at gmail.com>: >> While testing the new vcut, some of the early results had badly framed >> headers. I actually didn't notice it at first, because I was testing >> with oggz-validate, but ogginfo does identify the problem: >> >> "WARNING: Vorbis stream X does not have headers correctly framed. >> Terminal header page contains additional packets or has non-zero >> granulepos" >> >> Conrad (or someone else) may want to change the tool to identify these >> files. There's a sample attached. > > Hi Ivo, > > good idea, and thanks for also supplying an example file! > > liboggz already knows how many headers each track should have, so it > should be fairly straightforward to add a check for this that works > for all codecs (assuming that the constraint -- that header and > non-header packets must not share a page -- applies to all Ogg media > types).I've added the following checks in changeset:3778: Terminal header page has non-zero granulepos Terminal header page contains non-header packet Terminal header page contains non-header segment It should work for all media types. cheers, Conrad.