SPECIFICATION:
 
Event information system with integrated presentation infrastructure - Replaces: SCALA + PowerPoint + Plone
 
WHY:
 
Anything currently offered is either very expensive and therefore not suitable for community events, or specialised for events that have one screen. The idea was generated after using Partymeister for the Sundown demoparty and thinking about applying it at community events in the future that weren't demoparty related.
 
The LSU Computer Society were also looking for a system to display information at their events (LAN parties etc) and the combination of these factors inspired me to create this specification.
 
IDEAL SCENARIO:
 
LUG Radio Live/FOSDEM et al. Plays music/videos or displays slides about the event (such as calendars, sponsor information, maps etc) when not presenting. Admin sets that after current programme finishes, the next thing to play are the PNG slides etc. After presentation has finished, the slides disappear and automatically resume the playlists.
 
Whilst being used at conferences is nice, could be nice for students unions etc for nights such as LSU's Hey Ewe which have music videos on screen which then transition to show LSUTV clips etc during the night.
 
Might be abstracted and extended to allow relaying to an internet server so people on the net can watch, with multiple room streams etc.
 
Might also be made smaller just to made a network client for displaying presentations on screen at events with remote next/prev buttons etc. Mark Shuttleworth expressed interested in adapting the PartyMeister system used at Sundown 2006, as that does a beamer presentation as usually used at BreakPoint etc, showing information similar to this.
 
INPUTS:
 
Playlists. These would then be played during nights out etc. Would play a large directory of MPEG-4 Part 10 music videos as downloaded from iTunes (if they're legal to do so, DRM free, public performance rights etc etc). Could also contain a bunch of slides with maps etc for display between talks a la PartyMeister (but better)
 
Presentation mode. Slides would be output in either Quicktime movie (allows you to stop at various points in the movie and wait for a click, preserving fancy transitions etc - easy to export from Apple Keynote) or PNG/PDFs which would be displayed on screens as exported from your favourite presentation application (Impress/Powerpoint etc). Presenter computer then has control over slide advancement/replay by pressing mouse button on application or web page. Would possibly also have a slide sorter for last minute additions/removals or finding that one slide out of 100 in the middle of a presentation. Transitions could be supplied via plug-ins which would be uploaded to the server, or standard fade/cut transitions. OpenGL interface would be available which renders transition from slide 1 capture to slide 2 (as in Partymeister). If the presenter chooses to supply their own laptop with their slides rather than supplying slides, the VGA could be captured and sent to the processing box for re-encoding to the streams.
 
OUTPUTS:
 
Main Display. Can be projector or a number of units watching over web cast for placement around an area (essentially closed circuit TV over a network). To prevent network saturation, would probably have to handle setting up multicast etc. This would house the presenter screen also, but would have the option of not display the presentation slides if an area has been chosen to be non-presenting (essentially, only the main screen goes to the slides, everything else keeps playing playlists)
 
Presenter Display. This would have the current slide, any notes plus a small preview of the next slide for memory purposes. Would have different format depending on whether the screen was 4:3/5:4 or 16:9/16:10 to best arrange the data. Smaller resolutions would show less data.
 
Admin Display. Would have live content in small window, and a status box showing greens/reds depending on if circuits were displaying/heartbeats etc. Would be able to switch between playlists and presentation mode, or skip the currently playing track, or indeed set the next playing track. Has full control over playlist.
 
SYSTEM REQUIREMENTS:
 
Main Display would preferably be self contained - receives XML data and PNG slides and renders itself. If not, follow secondary displays. Most events have more than one stage, so eventually this should be able to handle multiple presenters etc.
 
Secondary displays would probably just display a streaming video at ~2Mbit/s (clear picture). These would be distributed outside of the areas where people meet, for instance at a place at the infodesk showing what's on where, and remote viewing in case a room gets full and another room is hijacked to show the live feed. Could also work by supplying a video feed for people to watch on laptops via VLC if it's geeky enough. If budgets are limited, just output the displays onto one monitor (your live preview), which is split off and converted to SVideo/Composite and put onto an in-house CCTV feed for the monitors (as would have to happen at venues such as LSU Piazza and LRL06). These displays if "smart" may choose to employ Power-over-ethernet thin clients (LTSP etc) to power themselves, attached to the back of monitors already in place at venues which would lessen the set-up involved - plug in and play (auto-generated configs - you set locations based on the MAC address).
 
Admin would have the live preview of the stream (highest joining priority, kicks guests off it needed) plus direct access to the RAW XML files if needed. Most if not all of the interface would be a guided GUI set-up with a "live" screen showing status information etc.
 
Processing server. If just one/two outputs, any box will do. Could be web-based, with Apache generating the slides through PHP/GD etc if wanted, and a Nullsoft or VideoLAN streamer behind it (as at ASMTV). If it's going to be doing a lot of work, a nice 2-way or 4-way box would do this admirably in a mini-rack somewhere central. Your average modern dual-core system should handle average display systems without breaking a sweat. Single CPU systems may require extensive testing for loads when generating slides etc.
 
ESTIMATED WORK REQUIRED:
 
* Python backend.
* XML experience in denoting current play item and to pre-cache next content etc.
* PNG/Movie scaling if handled at client not at server level (different resolutions - screens may be at 1440x900 - 16:10 - but presenter screen might be at 1024x768 - 4:3 - or lower).
* Live encoding etc. (preferably pre-render to minimise rendering at point of broadcast for when added into stream, but if needed NOW, encode as displayed as per usual)
* Protocol design for *bump* updating the content on screens. Would require versioning. (Bumping carries on from last position, does not restart from beginning)
* Synchronising the content if streamed and not rendered at destination.
* Audio client for plugging into a PA etc.
* Might just use Partymeister client to test with until separate client developed. (Windows only at the moment, NEEDS porting anyway)
 
Possible expansion to include live camera feeds etc for putting on the secondary screens (basically a vision mixer, but done without $$$ hardware, just a TV-in card on a box and a dedicated machine with live previews etc to choose which feed to display, including the main screen)
 
Another interesting idea is to generate the slides based on when intranet/internet content is updated - for example, someone updates the timeline to add another talk at 1400 on Saturday, the calendar slides are automatically regenerated and moves onto multiple slides if needed. Live previewing if possible through AJAXy goodness. Would also work well for quick-generation of slides with pre-set "safe" zones so that a graphic artist doesn't have to design each slide - you type in the text and BANG, the slides are generated. The system could even generate the intranet pages so that one system updates all.
 
Finally, a system to include an emergency procedure, so that you hit a button and all the machines automatically show directions to the nearest emergency exit and asssembly point (configurable per display) and flash red/green (depending on country) to say "evacuate" or something. Could integrate with DMX lighting systems if available so that when announcements are made, the lights flash and sounds are played.
 
Just a few thoughts. Interested to hear expansion. Would like to get this system working for possible use at LRL08 or mini-conferences without a budget capable of hiring expensive vision mixers and SCALA etc. Highly experienced staff may wish to offer their services at events wishing to use the system but don't have the experience to carry it off. I imagine this would be of use at most conferences, but open it up to the hobbyist market as well. Only took me an hour to write so it's probably really hard to read - it's just a mind-dump.
 
Matthew Walster
CREATED: 2007/06/08 LAST ALTERED: 2007/07/13
SOME RIGHTS RESERVED - check the license at:
What is the Venue Project?
Project Members
Matthew Walster
(dotwaffle)
 
Please apply to help with the development!
 
Launchpad.net
It’s only just been set-up - be gentle with it!
 
Contact Details
E-mail me: It’s my first name at my last name dot org. Say no to spambots =)