Discussions on Mopidy for Radio workflow management

tags: Discussions Project: Radio

Bhanu Should lead to a beta release spec, with key features, functionality and architecture. Source: Whatsapp conversation dated - Mon, Oct 14, 2019 09:36 AM

Context

Sanket dinesh, bhanu, shalini - just tested mopidy. that underlying library behind that rpi cassette player which mike or somebody from apc suggested. well its not what i was looking for radio. i was thinking that it will stream music. but it just gives music player controls over http for playing music on raspberry pi. (apparently that is a definition for music player daemon, which i realised only now). it maybe useful for providing admin-like-control for devices like phone booth pi. but not for users/listeners.

Features

To be added

Studio Pi

Bhanu We should dig a little bit around this software, Pi Music box. Assigned task to Madhuvanthi to try a get started for musicbox.

Add Basic set of features for the beta release

Optional

Add Optional set of features for the future releases

Recording Pi

Basic

Add Basic set of features for the beta release

Optional

Add Optional set of features for the future releases

Scenarios

Workflow stories and scenarios to justify for the feature requests

Basic

  1. Studio Manager should be able to schedule programs, which will be the default program playing when a listener tunes in
  2. Studio Manager should be able to add tracks to playlist (which is domain categories)
    3)Radio listener can choose to listen current stream or browse older recorded programs via categories / playlists

Optional

  1. Listener can create his own Playlist and save tracks to listen later

Readings

Mopidy docs References

  1. Mopidy Architecture: The overall architecture of Mopidy is organized around multiple frontends and backends. The frontends use the core API. The core actor makes multiple backends work as one. The backends connect to various music sources. The core actor use the mixer actor to control volume, while the backends use the audio actor to play audio.
  2. Running Mopidy as Service: The Mopidy service runs as the mopidy user, which is automatically created when you install the Mopidy package. The mopidy user will need read access to any local music you want Mopidy to play.
  3. Mopidy Using Gstreamer We can connect to various frontends (across different protocols http, MPD, MPRIS, UpnP) via their extensions. here is the streaming extension(comes bundled) which uses Gstreamer
    • Requirements: You should Install and Run a Gstreamer Server and configure in your mopidy app.
  4. The core api gives access to the controllers of Tracklist, Playback, Playlist, Mixer, Library modules. here is the core api provider docs

References

  1. How to contribute to Namma School Radio - Business model and contribution plans
  2. Document - Janastu Iruway Junction - More Use cases of Wifi Mesh Radio and other makerspace contexts.
  3. Co-planning Aux hackmd cowmesh-janastu mesh-networking needs
  4. Mopidy Music ox web client - The first web client for Mopidy, made with jQuery Mobile by Wouter van Wijk (Open source Apache license). Also the web client used for Wouter’s popular Pi Musicbox image for Raspberry Pi.
  5. Stealing an Image for Architecture reference for Radio station studio model from Airtime. Image
    6. Reference link to literature on workflow
  6. Mopidy Server Remote Android App and other client apps / browser extensions: In a nutshell, Mopidy Mobile lets you
    • browse and search your entire Mopidy music library.
    • search within selected directories only.
    • edit the tracks in the current tracklist.
    • create and edit playlists (requires Mopidy server v1.x).
    • retrieve cover art from selected online resources.
    • control playback from your device's lock screen.
    • change volume using your device's hardware buttons.
    • switch between multiple Mopidy servers on your network.
    • choose from multiple available user interface languages.
    • Mopidy Mobile is Open Source and released under the Apache License 2.0: https://github.com/tkem/mopidy-mobile/.
Select a repo