Gian-Carlo Pascutto
2001-Aug-10 11:45 UTC
[vorbis-dev] Standard Open Source Bug detected, try murksaround ...
When using the abx utility that is in LAME's misc dir, trying it on an ogg (with ogg123) gives the following output: Standard Open Source Bug detected, try murksaround ... (ogg123 is decoding to stdout) IIRC this also happened with older mpg123's but no longer with the latest release. Latest ogg123 from CVS still gives it though. Someone stole code but forgot to check for fixes? :) I've put the code which produces this below. It looks as if an entry in the headers is wrong: --------------------------------------------------------- fprintf (stderr, " ..." ); fread ( header, sizeof(*header), sizeof(header)/sizeof(*header), fp ); switch ( header[11] ) { case 2: *len = fread ( buff, sizeof(stereo_t), maxlen, fp ); break; case 1: *len = fread ( buff, sizeof(sample_t), maxlen, fp ); for ( i = *len; i-- > 0; ) buff[i][0] = buff[i][1] = ((sample_t*)buff) [i]; break; case 0: fprintf (stderr, "\b\b\b\b, Standard Open Source Bug detected, try murksaround ..." ); *len = fread ( buff, sizeof(stereo_t), maxlen, fp ); header[11] = 2; header[12] = 65534; /* use that of the other channel */ break; default: fprintf (stderr, "Only 1 or 2 channels are supported, not %u\n", header[11] ); pclose (fp); return -1; } ---------------------------------------------------------- -- GCP --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
volsung@asu.edu
2001-Aug-11 09:22 UTC
[vorbis-dev] Standard Open Source Bug detected, try murksaround ...
On Fri, 10 Aug 2001, Gian-Carlo Pascutto wrote:> (ogg123 is decoding to stdout) > > IIRC this also happened with older mpg123's but > no longer with the latest release. Latest ogg123 from > CVS still gives it though. Someone stole code but > forgot to check for fixes? :)(I already talked with you about this in IRC, but I'll reply here for the rest of the list.) This error is caused by libao's behavior of writing empty (i.e. all zero) WAV headers when playback begins and going back to fix them when playback ends. WAV playback from libao should not be piped (since you can't get the size info in the header correct up front), and you should use the AU output instead. However, since WAV seems to be the least common denominator output format, people are piping it anyway. So, I've changed libao in CVS to write a dummy header first assuming a file size of 0x7fffffff. It goes back and fixes it if it can at device closing time. BTW: Our wav output code mostly came from ac3dec (GPL) and not mpg123. Either way, calling this an "Open Source Bug" is strange. That should be submitted as a bug to the abx author. :) --- Stan Seibert --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.