Online radio: a systems analysis

From smultron.org

Jump to: navigation, search

This is a collection of notes about online radio, as seen from a systems analysis perspective. Systems analysis is a means to cross the gap between concepts and realization or, in the context of software development, between requirements and implementation. Creating an on-line radio station involves analogue studio techniques, not to mention social engineering, but to a certain extent it also is an exercise in software design.

The 'case studies' describe a selection of radio set-ups, some are simple grass-root ones, some are complex social media initiatives. All examples discussed here do have in common a will to gain experience and insights into media processes, and to share these experiences in a participative manner, often producing open source software.

The 'system specification' describes the stakeholders, the data flows and the interactions inside a radio station. The 'systems constraints' chapter is a catalogue of hardware-, software- and network-assets you will definitely need, unfortunately this catalogue is unbounded. The collection of 'use cases' is a minimal set of requirements necessary for any radio project. You might want to implement these yourself, or you might want to use them to evaluate existing software.

'Modeling the system' describes the basic software architecture and database schema a streaming audio system usually needs.

The final notes contain a step-by-step tutorial for setting up a streaming server using open source software.

  1. Case studies
    1. Grassroot radio examples
    2. Reboot FM
    3. Open Broadcast
    4. Wortwelle
  2. A System Specification
    1. The users
    2. The Scope
      1. Data flows
      2. Context
    3. Use Cases
      1. Archive
        1. Upload a file
        2. Retrieve metadata from external service
        3. Mass import
        4. Search archive
        5. Record an emission
        6. Backup of broadcast
      2. Scheduler
        1. Creating a show
        2. Creating an emission
        3. Composing a playlist
        4. Importing a schedule
        5. Publish schedule on the web
        6. Publish podcast
      3. Play-out
        1. Route streams
        2. Monitor streaming server
        3. Route to external stream
    4. System constraints
      1. Overview
      2. Bandwidth
      3. Storage Space
      4. Audio hardware
      5. Operating system
      6. Streaming server
      7. Audio software
      8. Reporting
      9. Metadata
  3. Modelling the system
    1. The dynamic data model
      1. The basic streaming architecture
      2. The play-out system
      3. The scheduler
      4. Website interoperability
      5. Archiving
      6. Data flows within the system
    2. The static data model
      1. Entity relationship modelling
  4. Putting it all together
    1. Setting up a Streaming Server (on Linux)
      1. System requirements
      2. Installing the Server
      3. Installing the Sources
  5. References and Acknowledgements
Personal tools