Coding

Directory structure

To get involved to the WebPlayer development it is important to know where to find what. The root directory (see svn) is split into the directories: /data, /make, /release, /src_as, /src_js and /testpage.

/data (see svn)

Contains a lot of stuff used for developing, testing and deploying the webplayer. It is split into the subdirectories /data/docs, /data/pixmaps and /data/playlists.

/data/docs (see svn)
Contains a TODO list which lists all that tasks which should be done in the short term. Furthermore the LGPL document and some early stage documentation can be found here.
/data/pixmaps (see svn)
Contains all the images currently used by the WebPlayer itself or inside the test webpage.
/data/playlists (see svn)
Contains playlists used for testing purposes.

/make (see svn)

Contains a Ant build file, which enables you the get the sources build within seconds. The build log files are stored in the /make/log subdirectory. The file swfmill.xml contains the configuration of the swfmill build step.

/release (see svn)

The /release directory as you get it from the subversion usually contains nothing. All content of the /release directory is generated/compiled by one of the build tasks which are defined inside the the Ant build file.

/release/archive (see svn)
After rebuilding a release (see /make/build.xml) this directory contains a zip file. This zip archive is published within our download area.
/release/bin (see svn)
After rebuilding the entire webplayer (see /make/build.xml) this directory holds the generated WebPlayer swf file.
/release/bin_test (see svn)
After rebuilding all tests (see /make/build.xml) this directory holds the generated swf files which can be used to test the WebPlayer.
/release/testpage (see svn)
After rebuilding the testpage (see /make/build.xml) this directory holds the a fully working testpage. This version can be used and uploaded as it is.

/src_as (see svn)

Contains the sources needed to build the WebPlayer. As described in Getting Started the WebPlayer is built by compiling ActionScript files into to SWF files and then swfmill put them together into the actual WebPlayer.
The /src/org and /src/com subdirectories contain the actual flash source of the WebPlayer. /src/com hold some helper classes provided by third party developers. /src/org contains the WebPlayer code structured into several packages.

/src_js (see svn)

Contains the javascript library which enables developers to remote control the WebPlayer.

/testpage (see svn)

Contains the sources of our test webpage. Please don't use it from this directory (some paths point into nowhere), but build a testpage release using our build.xml and use the testpage generated in /release/testpage!

General information

Currently there are a bunch of Flash Player versions installed on the user's browsers. Each version offers different functions which are available for the flash programmers. The following list shows the Flash Player compatibility of the WebPlayer. Generally we try to stay compatible to small Flash Player versions as long as possible:

  • WebPlayer 2.5 is compatible to Flash Player 6 and above
    • Thus currently it is only allowed to use functions available in Flash Player 6!
  • From WebPlayer 3.0 on we are compatible to Flash Player 7 and above
  • From WebPlayer 4.0 on we are compatible to Flash Player 9 and above

Debugging or How to use the actionscript trace

If you start to implement some new features you might get stuck after a while. Check out our debug framework to get some information about the internal WebPlayer behavior and to find the bug.