[vorbis] Vorbis on Legacy hardware

Corey Miller akheron at earthlink.net
Mon Jan 20 18:55:51 PST 2003



> You may be able to get decent performance out of Tremor, especially 
> with the low-accuracy modifications I've heard about. It may still be 
> possible to squeeze the code tighter at the expense of accuracy, but 
> not having tried it, I really don't know.
I was considering the use of tremor.  There would be the obvious 
improvement in speed because floating point operations are just 
emulated on the 486, so an integer only codec would improve speed 
because it wouldn't need to emulate certain operations.  I have not 
looked at tremor at all.  Does anyone know how I would go about playing 
vorbis files on a standard linux box with it?  And does anyone know how 
difficult it would be to do what he's suggesting, lower the accuracy to 
improve speed.  This seems like my top choice right now.
> For Vorbis with channel coupling, decoding to mono is nearly as much 
> effort as decoding to stereo. Perhaps some savings could be gained by 
> just dropping off the second iMDCT for a stereo stream and treating 
> the result as mono, though it would probably sound better to try to 
> extract a "middle channel" earlier, in the decoupling code.
Wouldn't it make things much faster during playback just to encode in 
mono in the first place?  I intend to have the default options for ogg 
quality when ripping off of CD based on a quick scan of the computer's 
hardware.
> ogg123 can prebuffer its output buffer. Set it to a reasonably large 
> size and 95% prebuffer. Even if the machine isn't able to decode in 
> real-time, it should still be able to play a good portion of any song 
> before becoming CPU-bound, at the expense of startup time.
Has anyone used this technique in the past who can testify for how well 
this works?  How  exactly would I do this?  Seems like it's fairly easy 
and probably in the documentation, but I just am not in the mood to 
read through it right now (serious nicotine withdrawl).
> I recently resurrected my old Media Vision Pro Audio Spectrum 16 card 
> (wow, 16-bit!), which came with Trackblaster Pro, which played old 
> .mod files (4 tracks, practically no effects, 8-bit samples). It took 
> me a while to figure out that it was locking up because it couldn't 
> mix at 44.1k in real-time on the old 386SX, but once I dropped it down 
> to 22k, I had a relatively stone-age computer playing half-decent 
> music! The good old days...
As I said, quality isn't that big of an issue.  Although I'm using a 
486/33 for my test computer (my standard computer is an Apple Powerbook 
G4) the distro is intended for use with a wide range of computers.   So 
I could always just lower or raise the quality based on the user's 
hardware.  Because of this tremor seems like a really good option, if I 
could dynamically control the accuracy of the decoder, I could write a 
script to figure out what's the highest possible accuracy that would 
play smoothly on their computer.
> IIRC, MP3 was the highest-complexity member of a family of 3 codecs -- 
> layer 1, 2, and 3. It's been brought up before, but perhaps this is a 
> reasonable opportunity to reconsider a "low-complexity" mini-Vorbis 
> codec?
This actually doesn't seem like a very good idea to me.   Having two 
separate codecs seems like a big hassle to me.  Of course if any 
standard vorbis decoder could read it just as easily as it does 
standard vorbis, I would like the idea.  Maybe just a low-complexity 
flag (maybe not just a binary flag, but several complexity levels) you 
could turn on when encoding if you so pleased.  Which would probably 
either increase file size or lower quality if enabled.
You know, the people I've seen that I'm targeting my distro towards 
aren't exactly audiofiles, many of them I see listening to CD players 
with a single earbud with a frayed wire hanging off the other end.  Of 
course I don't want to make my distro completely useless to anyone with 
any modern hardware, so I'm hoping to make any quality sacrifices (for 
file size or CPU requirements) scalable, so they only actually happen 
if the hardware really needs it.  My distro is still in planning stages 
until I've decided on the exact packages that will be on it because I 
need to know just how much I can strip down the kernel, and I need to 
do a lot of testing afterwards to make sure everything runs smoothly on 
the old hardware, it sounds like I'm just rambling on, but my point is, 
this won't be released for a while, so it's not a terrible rush to get 
vorbis playing well on it.

--- >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-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 mailing list