We've been hard at work building the first internet tv channel based on user generated content. We just started the beta program and you are all invited to check it out and give us feedback. (The site is in german language but should be rather straight forward to use)
The system is basically an automated version of the gong show. The site is based on mod_perl and is put together through a REST API that we use ourselves via AJAX, so everybody may build their own front end. The video stream is generated by a live editing software on a mac that is controlled by small snippets of applescript which are in turn called by a Perl script.
Maybe one of the most interesting parts of the project are our directors. The editing is done by a singleton object of class Editor. The editor has a director that tells the him what to do - it adds the behavior. It turns out that the decorator pattern fits perfectly to model directors, so we can stack together different behavioral patterns. One director loops the content another controls the gong show and another schedules best of content to run when we have nothing current to show.
We've been blogging about a lot of the technical details in german language for more information.