Re: Electric Sheep - beautiful distributed screen saver
Dave Dodge <[email protected]>
| Newsgroups | gmane.comp.hardware.roku.technical |
|---|---|
| Message-ID | <20040530221608.GM6903@basmati> |
On Mon, May 31, 2004 at 09:19:43AM +1200, Hamish Guthrey wrote:
> Has anyone had a go at porting Electric Sheep to the HD1000 platform?
This was one of the first things I thought about when I got the HD1000
months ago.
> I'd love to see this on the HD1000. :)
Consider: the HD1K has no floating point unit, and I believe the
fractal generator is extremely floating-point intensive. Also, we
know from other tests that there are issues (such as the sqrt function
not working) with floating point emulation, depending on the exact
compiler flags used.
I took a first shot at it in March. I managed to compile expat, curl,
libjpeg, and electricsheep on the HD1K, to the point that it could at
least run its "hqi-flame" test. The test took 68 minutes to produce
two 640x480 images, and both images were flat black (i.e. no flame was
drawn). So there's a serious problem in there somewhere.
Probably the easiest solution to that is to run the flame generation
and collection stuff on a desktop system instead, and just share out
the MPEG files to the HD1K for playback.
But there's another problem: MPEG2 data comes in at least three
fundamental forms: ES (elementary stream), PS (program stream), and TS
(transport stream). Electricsheep generates a pure MPEG2 video ES.
The HD1K's playback engine only accepts TS. A few months ago I tried
various free command line conversion tools, but never managed to get
the electricsheep ES into a TS that the HD1K would accept.
Since then, CinemaSix has come out and can convert VOB (DVD-style PS)
to TS for the HD1K. If you can get an ES to VOB converter to work
that might be enough to get the files to play. Be warned though that
most ES to VOB converters are going to expect you to provide an _audio_
ES to go along with the electricsheep video.
> Bomb is another piece of open source interactive art by the same author
> (www.draves.org/bomb/) - another one that would be great on the HD1000.
This is somewhat in line with another project I've got on the
back-burner. It looks like it does some intense manual pixel
manipulation. The HD1K can do this, but probably not smoothly at high
resolutions. Here's a test program that does some simple blending,
blurring, and animation on a 160x120 pixel grid:
http://www.dododge.net/roku/holding/tryvidscale.roku
That uses some really stupid algorithms, and I expect to be able to
work on higher resolutions (maybe 320x240) once I get around to reworking
the code.
-Dave Dodge