[ANN] "Pure" Ogg-Vorbis decoder

Russell Penney russell.penney at tincanct.com
Sat Jun 12 02:23:13 UTC 2004


   Thank you for the kind words. It really was a weird sick compulsion to
write, I have dreaming MDCT arrrgggg :).

One of my rationalizations for writing a pure codec is so it can be ported
to other smalltalks before optimization so it can be optimized in each

I have started tidying (we have a long weekend here in Australia) and have
already doubled the speed by changing one line of code.

I am playing with primitives but I might hold off until I have refactored.


The good thing is that a lot of the decoding code is used for encoding too.


I would LOVE some help from the over-brained people on the list. The codec
is the sort of thing people need/want to write but of course most books use
very simple examples that don't really show how to refactor/optimize/etc.





From: squeak-dev-bounces at lists.squeakfoundation.org
[mailto:squeak-dev-bounces at lists.squeakfoundation.org] On Behalf Of Dan
Sent: Saturday, 12 June 2004 2:42 AM
To: The general-purpose Squeak developers list
Subject: Re: [ANN] "Pure" Ogg-Vorbis decoder


I have just released onto SqueakMap a "pure" Smalltalk port of the
Ogg-Vorbis decoder from Xiph.

It is VERY slow, very buggy and the code is so ugly that it would definitely
win the "Ugliest Code Competition".

I have had a compulsion to write an Ogg decoder and so I took the hardest,
slowest way I possibly could because I am lazy (confused? Me too).

I could have linked the libraries via a plugin and saved myself a huge
amount of work, but I convinced myself that a "pure" codec would be so cool.




Russell -


I'm really glad to hear this.  Ogg Vorbis is definitely a quality approach
and (unlike much media work) shares our commitment to open source.


Good for you to have kept it pure.  A while ago we had a sort of competition
to see how much could be squeezed out of a naive implementation of Tetris.
As I recall it was a factor of two in space and considerably more in speed.
I haven't looked at your code yet, but maybe this would make another good
exercise for the over-brained and under-employed denizens of this list.


And yes; once it has been cleaned up and tested, plugins will do wonders for
the speed, though my enthusiasm lies more with JITs right now (actually
since the beginning * ;-).


Thanks for the hard work and the implicit challenge!


        - D


(*) if it's written for slang, even a modest JIT ought to do well with it,



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20040612/70577043/attachment.htm

More information about the Squeak-dev mailing list