swfx
====
version 0.1

(c) 2004, ysbox <[email protected]>

A port of the GPLFlash SWF decoding library by Olivier Debon
<[email protected]>, "revived" by Tomas Groth <[email protected]>.
The original GPLFlash homepage is: http://swift-tools.net/Flash/
The new homepage for the "revived" version is: http://gplflash.sourceforge.net/
My homepage (The LinksBoks Wiki) is: http://ysbox.online.fr/


What's this?
~~~~~~~~~~~~

This is a decoding library for Macromedia Flash(tm) animations, compiled for use
with homebrew applications compiled with the XDK.

Due to the number of requests for Flash support in LinksBoks, I've decided to
experiment a bit on this library and here's the result.


How well does it work?
~~~~~~~~~~~~~~~~~~~~~~

The original library could play any file in the Flash 4 format and below. Tomas
Groth included support for compressed SWF files so that Flash 6/7 files are
supposed to work. However, there's a lot of remaining limitations:

- No sound on Xbox! Because there's quite a lot of work to do, and it doesn't
  work so well in Linux too; no compressed (MP3...) support. But it will happen
  one day, I hope.
- No videos.
- Problems with semi-transparent JPEG files (visible in the Happy Tree Friends,
  for example ;)
- No text boxes, etc.
- No real-time downloading support or socket access (as far as I know).
- Graphic glitches and performance issues here and there.
- Probably a lot more...

But a lot of animations do work very well, if not perfect.


I want to use it in my app/dashboard/etc!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Great! Start by taking a look in the swfxplayer sources, it's rather
straightforward and doesn't show every feature available (like interactivity).
You may want to check the original X player too (gplflash-x.x.xx/player/main.c).

If you want to test the player, copy the movie.swf (or any other Flash movie
renamed to movie.swf) on the Xbox in the player's directory if you want it to
work. Check out the Readme.txt file in the swfxplayer directory.

Feel free to contact me with any inquiries.


Couldn't you use the Flash player sources provided by Macromedia?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Macromedia distributes the Flash Player source code with their Flash Player SDK
(http://www.macromedia.com/software/devices/licensing/sourcecode/faq/) but we
must request it via a submission form, and we have virtually no chance of being
accepted. And they are royalties to pay "for each device that ships with the
Flash Player". I guess they're illegal versions of this SDK circulating on the
Internet, but I don't want to bother about that.

Besides, making the official player run on Xbox probably would have require more
work than porting the GPL Flash library (done it in less than 2 days, and the
end result is, in my opinion, not that bad...).


Acknowlegments
~~~~~~~~~~~~~~

As always:

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License, version 2, as
  published by the Free Software Foundation.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.


The example movie is "Jailbreak" from Larry Adlon, found on AtomFilms:
http://atomfilms.shockwave.com/af/content/jailbreak
Hope they don't mind.

Also included (for fun) is "Humphrey...The Dentist", by Benjamin Lane, Cher
Klosner Lane. Works well too.
http://atomfilms.shockwave.com/af/content/atom_1478

Thanks to:
- Olivier Debon, Fabrice Bellard and Tomas Groth for the (great) original work.
- Everyone on the Xbox scene.