[vorbis-dev] vorbis.dll; bug in vorbis_dsp_clear?;mc support

Michael Smith msmith at labyrinth.net.au
Fri Feb 15 05:33:17 PST 2002



At 12:06 PM 2/14/02 +0100, you wrote:
>Hello,
>
>I am the author of HeadAC3he, the fastest HQ ac3 transcoding tool. You can get it from http://darkav.de.vu (once it is up again).
>
>I found a bug in the vorbis.dll, at least I think so. I don't know whether this mailing list is the correct one, so I just try:
>
>The line
>
>vorbis_dsp_clear( &pStream->vd );
>
>in the procedure vbEncClose causes something wrong. It is most notable when trying HeadAC3he: Doing an ogg conversion first and afterwards a wav downsampled by ssrc, causes ssrc.dll to calac some wrong samples. When commenting above line, everything seems to work fine. It is not (at least 99% sure) a fault of HeadAC3he or ssrc.dll, because using lame_enc.dll, which causes HeadAC3he to use nearly identical routines as doing vorbis encode, causes no trouble whatsoever! I used the latest rc3 sources to compile vorbis.dll and the latest vorbisdll files from CVS (gotta look, wheter they are updated now, my originals are now a few weeks old) with my modifikations. So it would be great if someone could verify my findings and possibly debug vorbis.

Well, there's a lot of software using libvorbis, and all of it uses
vorbis_dsp_clear() (either directly or indirectly) - so it's _extremely_
unlikely that there's a serious bug in there, because this would be
causing problems for everyone.

However, if you call the various vorbis_*_clear() functions incorrectly
(in the wrong order, for example) various things can happen - usually
just memory leaks, but other things might be possible. 

If you can show us your code (the bits using libvorbis, that is), we
may be able to help you further. 

>
>Another thing: A lot of people would love to see multi-channel support enhanced. I guess the channel coupling featured have to be deveopled for that. So just pointing out, that it is actually very welcomed and waited for, in fact. ;-)

There are a couple of major things here - first is defining channel
mappings. Right now, there's nothing to say "channel 0 is front-left, 
1 is front-right, 2 is centre", etc. So for useful multi-channel support,
that has to be defined somehow - but we haven't decided exactly how
to do that. 

The second is making the encoder use the channel coupling features 
intelligently for these mappings - right now, it only knows about
stereo files (anything else is treated as a set of independent 
channels) - this doesn't break anything, it just means that the bitrate
is higher than it needs to be.

Michael

<p>--- >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 at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Vorbis-dev mailing list