Rock and Roll Hall of Fame
AT&T and The Rock and Roll Hall of Fame and Museum wanted a state of the art jukebox to go with their new Hall of Fame wing. This jukebox would have four "listening station" kiosks, with the potential to grow to hundreds. It would become the world's largest jukebox, housing some 28,000 songs. In addition, due to the high visibility nature, the system needed near 100% availability.
The Server: Synchronized Dynamics worked closely with Tumble (a New York Interactive Media Agency) to develop the overall system. We spec'd out two redundant servers, each with a 100GB RAID disk array, fast ethernet cards and loaded them with Windows NT and Netscape's FastTrack server. We wrote PERL CGI scripts on the server that accessed the Artist and Album information, which resided in an SQL database. The music files were stored in AT&T's A2BMusic format on the disk array. Requests for the images and songs were handled directly by the web server and requests for the Artist, Album and other TOC (table of contents) data were handled via the CGI programs.
The Clients: Four clients were installed with Windows 95. The front-end GUI was written in Director 6 (Macromedia). The audio streamer was written in C, based on codec samples from AT&T. The two programs communicated via IPC, and could thus be updated independently. Both Director and the music player made HTTP requests to the server, meaning the system could be scaled over any TCP/IP connection (i.e. xDSL, T1, or even ISDN).
Advantages: HTTP - extendable over existing TCP/IP and Web connections Fast Ethernet - expandability, up to 300 listening stations (local or remote) with no degradation Intranet - local network, no risk of Internet scurity violation Redundancy - In case of either server failure, clients will "roll over" to the remaining server. More servers can be added as necessary (3, 4, etc.) Disk Array - RAID provides large data storate, speed and reliability. Management tool - allowed RRHOF staff to edit song titles, artist info, and tweak data as necessary.