[ogg-dev] Fixing ogg vorbis corruption caused by bad metadata

Conrad Parker conrad at metadecks.org
Wed Jul 8 17:20:51 PDT 2009


2009/7/9 Adam Rosi-Kessel <adam at rosi-kessel.org>:
> Adam Rosi-Kessel wrote, on 6/30/2009 11:14 AM:
>>
>> Conrad Parker wrote, on 6/30/2009 11:05 AM:
>>>>
>>>> http://adam.rosi-kessel.org/bugs/liboggz/484/other_corruption.ogg
>>>> Yet also won't play or process properly with oggz or hogg tools. Any
>>>> ideas whether this is the same or different root cause? (In all of these
>>>> cases, I'm reasonably certain that disk corruption is not an issue).
>>>
>>> that one is entirely missing the comments data, and the second page is
>>> incorrectly marked as continued. Not sure that helps with
>>> understanding the problem, but I can confirm that it's broken in a
>>> different way :-)
>>
>> Thanks. Is there some reason, in principle, that there couldn't be a
>> tool that just extracted the valid packets and created a new valid file
>> from there, discarding everything that is invalid? In other words, a
>> generic tool that would do its best to make an invalid file playable
>> again.
>>
>> If there's no reason in principle, would such a tool be easy to create
>> by tweaking the existing code base? I've tried to do a little hacking
>> myself to figure this out, but it seems like it's a fairly low level fix
>> that's needed. All of the higher level tools (e.g. modules for Perl,
>> Python, or Haskell) treat these files identically.
>>
>> I don't think I've done anything crazy with my files to get them in
>> these states -- just used reasonably popular tagging tools that
>> apparently have gone astray.
>
> Hi All:
>
> Anything I can do to keep this on radar? I'm not sure if it is really a bug
> -- perhaps at least a wishlist request. Will putting it in a tracker
> somewhere help?

yes, a tracker would help.

At this point it really looks like some pretty bizarre and
inconsistent corruption, which would probably need some custom tools
to fix.

Conrad.


More information about the ogg-dev mailing list