Archive: Possible bug in AVS:SuperScope:getosc()


22nd March 2002 09:01 UTC

Possible bug in AVS:SuperScope:getosc()
Dear Nullsoft team,

quite some time ago I already created a collection of phase scopes (thank you for implementing getosc() which made it possible). Unfortunately, it seems to be not working perfectly well: There is always a thin line of random dots along the right channel which can IMHO only happen if one of the values in the left channel is 0 where it shouldn't be.

You can download the zipped archive here (see attachment), and look at a few screenshots, showing a few scenes from the downmixed AC-3 test file:

"Left front" | "Center" | "Right front" | "Right surround" | "Left surround" | "LFE"


27th March 2002 12:52 UTC

Hmmm I took a look at your presets but couldn't see any weirdnesses like in your screenshots... then again, I didn't have a pure test MP3 available :). Are you using AVS v2.5 (download latest Winamp, normal or full version, to get it)?
In any case, I know AVS's oscilloscopes and spectrums are a bit weird, so you shouldn't rely on them for scientificly correct visuals :) The data that AVS receives is also 8-bit (to prevent people from writing vis plug-ins that capture the data, e.g. for copyrighted material), so that could explain something too.

On top of that there are a few bugs I know of: 'Render -> Simple' only renders the first 100 samples of the 288 samples that Winamp provides to AVS. I found this out recently by writing an APE that does exactly the same thing (to test my getosc() and getspec() routines). For spectrums, this is actually good because the higher frequencies are usually close to zero, but there's no reason to do it for oscilloscopes.

If the bug always happens at the beginning or end, simply trim your code so that you leave out the first or last 'n' samples.
If you're interesting in making APE's, I'll mail you my C implementation for APEs of getspec() and getosc().