Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Corrupted Ogg Vorbis files (Read 4302 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Corrupted Ogg Vorbis files

I have one album in Ogg Vorbis I've got from network. Some times ago it played well but now most of tools crash on this files. I don't know was it corrupted from the beginning or some tagging corrupted files, but what I have now:

ogginfo 02.ogg:
Code: [Select]
Processing file "02.ogg"...

New logical stream (#1, serial: 565e567f): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Xiphophorus libVorbis I 20011231 (1.0 rc3)
Channels: 2
Rate: 44100

Nominal bitrate: 85,000000 kb/s
Upper bitrate not set
Lower bitrate not set
Vorbis stream 1:
        Total data length: 3291367 bytes
        Playback length: 5m:20.365s
        Average bitrate: 82,190243 kb/s
Logical stream 1 ended
Warning: illegally placed page(s) for logical stream 1
This indicates a corrupt ogg file: Page found for stream after EOS flag.
Warning: sequence number gap in stream 1. Got page 931 when expecting page 775. Indicates missing data.

File length is 3296539 bytes, almost just as stream length. I think no (or very small amount of) audio data is lost but who knows...

Now I'm trying to play/decode this file in linux with vorbis-tools 1.1.1:

ogg123 02.ogg:
Code: [Select]
Audio Device:   Advanced Linux Sound Architecture (ALSA) output

zsh: segmentation fault  ogg123 02.ogg

oggdec 02.ogg:
Code: [Select]
OggDec 1.0.1
Decoding "02.ogg" to "02.wav"
        [  0.0%]zsh: segmentation fault  oggdec 02.ogg


Any hints how to fix such files?

Corrupted Ogg Vorbis files

Reply #1
Quote
Any hints how to fix such files?


"Warning: sequence number gap in stream 1. Got page 931 when expecting page 775. Indicates missing data." This error in the data comes up often due to logical pages missing within physical bitstream. The only way you can fix it is to try using vcut.exe or another similiar application to splice or truncate the stream. There is no way of salvaging it due to the the way the Vorbis header is designed to deal with codebooks. AN EOS flag is an "end of stream" flag for future reference. I find this problem interesting, because in the future I think Ogg bitstream container should contain some sort of checksum algorithm. I was always under the impression that it did, but I guess that's something different hmm. You try removing the comment tags, I am not sure how much it would help though.
budding I.T professional

Corrupted Ogg Vorbis files

Reply #2
I tried to remove all comments from files - error was the same.
I also tried to vcut files with different number of seconds (also found interesting thing - you may set cutpoint beyond end of file and you'll get first file the same as original and second about 5 Kb w/o audio data) - ogginfo not printed error anymore but ogg123 and oggdec crashing the same way as before. Even if I make .ogg file 1 second long this tools (and also Gnome's Nautilus' "Properties" about a file) crashing on it.

OK, after some experiments I found where is the problem. It's my gcc 3.3 compiled Lancer version (20051121) of libvorbis. This is latest version which gives correctly encoded vorbis file, all others (later this one) give bitrate not equal to generic aoTuV 4.51 when compiled by gcc. After rebuild libvorbis only with aoTuV 4.51 patch applied these .ogg files begin to play and decoding correctly.

Just tried to decode one of these .ogg files by latest Lancer oggDropXPd (version for SSE and SSE2) on Celeron 2 GHz CPU (with SSE and SSE2 support). oggDropXPd crashed also.

A cut from a problem .ogg uploaded in this post.

 

Corrupted Ogg Vorbis files

Reply #3
Quote
OK, after some experiments I found where is the problem. It's my gcc 3.3 compiled Lancer version (20051121) of libvorbis. This is latest version which gives correctly encoded vorbis file, all others (later this one) give bitrate not equal to generic aoTuV 4.51 when compiled by gcc. After rebuild libvorbis only with aoTuV 4.51 patch applied these .ogg files begin to play and decoding correctly.

Just tried to decode one of these .ogg files by latest Lancer oggDropXPd (version for SSE and SSE2) on Celeron 2 GHz CPU (with SSE and SSE2 support). oggDropXPd crashed also.

A cut from a problem .ogg uploaded in this post.


Let me check it out. I don't play around with the Lancer optimized encoders too much.  4.51 did correct a small bugfix though.
budding I.T professional