1 year performance video (aka samHsiehUpdate)

Technical information

Viewing 1 year performance video

You absolutely, positively need the latest version of Macromedia's Flash player to view the piece. You can download and install the free player software in minutes. We use Macromedia's new flash video format to dynamically load video and the newest player must be used in order for the video to load properly.

You also need a broadband internet connection. Most consumer broadband connections should work fine.


Deep tech (for the net art geeks)

1 year performance video is built with Flash, PHP and MySQL along with the usual client-side suspects: XHTML, CSS, and Javascript.

The over 160 individual clips (in flash video format, FLV) are stored in directories on the server. Two XML files (one for M.River and one for T.Whid) contain 4 chunks of information about each video: the path to the video on the server, it's probability of being played, it's frequency per playlist creation and it's duration.

There are two SWF (flash) files on the performance video page (one for M.River and one for T.Whid). When you load the page each file calls a PHP script (videos.php.zip), passing it two variables: the time on the client computer and which XML file to load.

The PHP script loads and parses the XML file and then outputs new XML based on the time and internal logic programmed into the script. This new XML output is loaded by the SWF on the client machine, parsed into a playlist, and then each video is simply played one after the next. Currently we send an XML file which takes about 8 hours to play (only about 16kb of data per XML file). Once all the videos in the playlist are played, a new 8 hour list is loaded automatically.

One problem we encountered was a bug in the Flash Video Exporter 1.2 software which caused the FLV files to not send their 'complete' event back to flash. It's hard to load the next video when you don't know when the last has completed! We created a workaround by using the duration of the video (contained in the FLV metadata) to determine that the video was complete (or as complete as it needed to be). Any suggestions on optimizing the actionscript (netstream.as.zip) greatly appreciated.

file downloads:
›› mriver.xml
›› twhid.xml
›› videos.php.zip
›› netstream.as.zip