[ogg-dev] Fixing ogg vorbis corruption caused by bad metadata
adam at rosi-kessel.org
Thu Jun 18 12:35:28 PDT 2009
Conrad Parker wrote, on 6/18/2009 3:15 PM:
> Hopefully at some point the vorbis data in the file becomes valid.
> Perhaps we just need to know the original encoding settings to create
> a new file with valid codebooks and splice them together: oggz-dump -r
> should be ok for that, just take the first 3 packets of the new file,
> and packets 17 onwards (or 100 onwards) of the original file ...
Is there some magic to the codebooks? Do I need to find something ripped
with exactly the same settings (e.g. quality level) and/or the same
ripper? Or will any ogg vorbis file work?
I tried this with a good file with the same libvorbis string as the
corrupted file -- "libVorbis I 20050304" -- suggesting, I think, that I
ripped it around the same time and probably using the same tool with the
same settings. No luck. oggz-validate 0.9.9 reports serialno "Terminal
header page has non-zero granulepos." It also plays silently.
Even taking out the 100 packets, same result. Or swapping in the first
100 packets from the "good" file in place of the 100 packets from the
"bad" file (fixing serialnos of course).
What is the meaning of "terminal header page has non-zero granulepos"?
Is that actually the clue to fix it?
More information about the ogg-dev