Skip to content

radiocontrol is a control & managment interface for MPD, mostly to be used for the needs of internet streaming radio

License

Notifications You must be signed in to change notification settings

Horrendus/radiocontrol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is "radiocontrol"

radiocontrol is a control & managment interface for MPD, mostly to be used for the needs of internet streaming radio. It was created because the existing control interfaces for streaming stations were not as flexible (usage of mpd, music preprocessing) as needed.

Existing features (what it is capable of right now)

Note: this lists the features of the backend. Not all is yet accessible via frontend or scripts

  • add music to the MPD collection
  • add playlists (as m3u)
  • Status check of playlists (do the files exist? are the tags as expected?)
  • get schedule entries
  • Add new entries to the schedule and check for scheduling conflicts
  • Start playing at the scheduled time via MPD

Feature ideas (what it should be capable of, mostly in order of preference)

  • preprocess music (mp3gain, mixramp)
  • remove or change playlists
  • schedule & remove playlists by name
  • remove schedule entries
  • better scheduling ** see TODOs (schedule playlists after, before, in-between existing schedule entries)
  • allow more flexible backend settings, seperate debug from production settings
  • upload playlists as xspf
  • Authentication
  • placeholder schedule entries for live streaming to icecast
  • ...

Project Structure

  • api: Django 2.0 REST API - under development
  • frontends: diverse frontends for the API

Frontends

  • web: Vue.js 2.0 frontend - under Development
  • python_cmdline: Python scripts to access the API

Requirements & Installation

Requirements

  • Python 3 (check Pipfile for Python dependencies)
  • redis (for celery)
  • mpd

Installation

Docker

The preferred & tested installation of this application is in a Docker container.

Build image

To build the container for the API image use the following command:

cd api
docker docker build -t radiocontrol_api:latest

Run image

MPD Server can be set via environment variables in the API container.

The example docker-compose.yml file in this project starts Redis & Celery and uses the MPD server on the host.

Similar projects

Author

License

If not otherwise stated, all code is licensed under the GNU Affero General Public License

About

radiocontrol is a control & managment interface for MPD, mostly to be used for the needs of internet streaming radio

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published