Jan Bottorff wrote:
I would love to have the codec written in Squeak, though. It's more fun to debug and program that way. (I don't even know how to program C) Then run the code trough one of those machine-code-converter-classes out there :-)
Having written commercial high performance video codec's, I can tell you it generally takes hand optimized assembler to get the kind of performance you see in commercial products. Languages like C are mostly clueless about properly utilizing the short vector instructions on modern processors. For the M-JPEG codec we did, the decompression performance between optimized C and more optimized Intel MMX assembler (and using special OS interfaces for video) was about 5:1. The MMX code alone was worth about 3:1. The better OS interface included using an overlay surface in video memory and writing YUV color space pixels.
This code is java. http://www.sureplayer.org/ It's not fullscreen not 25 or 30 fps but it works with streaming video. Seems like I have some fun hacking ahead of me:-)
Karl
squeak-dev@lists.squeakfoundation.org