MediaServer: iRadio

This backend has been revamped in the current developpement version (available from projet svn), which is the version described here

  1. iRadio
    1. Additional dependencies
    2. UPnP ContentDirectory structure
    3. Configuration
      1. Examples
    4. Open Tickets for this backend …



iRadio

This backends exposes the audio streams (internet radios) from the Shoutcast radio database.
Radios are grouped by genres families and genres.

Additional dependencies

No additional dependencies

UPnP ContentDirectory structure

The exposed data is represented in this structure:

  • <family1>
    • <genre1>
      • radio item 1
      • radio item 2
      • ...
      • radio item N
    • <genre2>
    • ...
  • <family2>
    • ...
  • ...

The families are : Alternative, Blues, Classical, Country, Easy Listening, Electronic, Folk, Themes, Rap, Inspirational, International, Jazz, Latin, Metal, New Age, Decades, Pop, R&B/Urban, Rock, Seasonal/Holiday, Soundtracks, Talk, Misc

Containers are filled only when navigated into.

Configuration

The backend accepts these options:

name:
the name this backend should show up on your UPnP clients (defaults to iRadioStore)
refresh
refresh the genre listing with the shoutcast servers if the last update was more than X minutes (defaults to 60 minutes)
version
instruct this backend to act as a UPnP A/V version 1 or version 2 Media Server
genrelist
the URL to the genre list (defaults to the official service URL from Shoutcast)

The backend is functional, directly with the default values.

Examples

New config file:

<plugin active="yes">
  <backend>IRadioStore</backend>
  <name>Shoutcast Radio</name>
</plugin>

Python code:

coherence.add_plugin('IRadioStore', name='Shoutcast Radio')

DBus:

coherence_service = dbus.SessionBus().get_object('org.Coherence','/org/Coherence')
coherence_service.add_plugin('IRadioStore', {'name':'Shoutcast Radio'},
                             dbus_interface='org.Coherence',
                             reply_handler=add_plugin_callback,
                             error_handler=error_callback)

Commandline:

coherence --plugin=backend:IRadioStore

Open Tickets for this backend (new...)