Skip to main content

Mopidy extension to automate music playback based on time of day

Project description

Latest PyPI version Travis CI build status Test coverage

Mopidy extension to automate music playback based on time of day.

Can be used in restaurants to play fitting music depending on time of day with no user input required.

Notice

  • Only tested with file:// backend.

  • This extension high-jacks many Mopidy events to control playback so it does not play well with other extensions.

Consists of a frontend and simple web client.

Frontend

If no tracks are playing and a play event is received, or if playback ends, a random album will be added to the tracklist and playback started.

Album is chosen from one of 3 sections, based on time of day. After an album has been played, it will not play again until all other albums in it’s section has been played.

If volume is set higher than what is configured for the section, it will be lowered before playback starts.

Web Client

The web client is reached on url /auto/. It shows which track, artist and album is playing.

It has 3 buttons: Play / Pause, skip to next track and skip to next album.

It also has a volume control.

By logging in with admin key current playing track or album can be deleted.

Installation

Install by running:

pip install Mopidy-Auto

Configuration

Before starting Mopidy, you must add configuration for Mopidy-Auto to your Mopidy configuration file:

[auto]
enabled = true

# Key required to access admin section
admin_key = 123

# URI where the sections folders are located
base_path = file:///media/Music/

# Max number of tracks that can be added from one folder. Set to 0 or lower to disable limit
max_tracks = 15

# Sections of different music activated depending on time of day. Currently locked to 3
# At what time this section gets active
s0_start = 00:00
# Folder name in where to find albums
s0_folder = Rap
# Decrease volume to this level if it is set higher when new folder is being played
s0_max_volume = 50

s1_start = 11:00
s1_folder = Trip Hop
s1_max_volume = 80

s2_start = 18:30
s2_folder = Rock
s2_max_volume = 80

Recommend File backend configuration

To make sure playback does not stop due to file types unhandled by Mopidy this exclude works well:

[file]
...
excluded_file_extensions =
  .nfo
  .ini
  .db
  .rtf
  .jpg
  .jpeg
  .png
  .gif
  .log
  .dat
  .txt
  .sfv
  .pls
  .m3u
  .wma
  .mpc
  .htm
  .html
  .aac
  .m4a
  .sfk
  .url
  .cue
  .pdf
  .m3u8
  .bmp
  .lnk
  .bc!
  .BMP
  .psp
  .ape
  .aif
  .rar

Project resources

Changelog

0.4.0

  • Handle empty folders gracefully - #15

  • Added move album - #12

0.3.0

  • Change start time setting from sX_hour + sX_minute to sX_start with format hh:mm

  • Change next track and album buttons

  • Change volume step to 5%

  • Fade out volume when changing track - #13

  • Added admin mode with restricted functions - #1

  • Added delete track - #2

  • Added delete album - #3

0.2.0

  • Display time of current playing track - #9

  • Play album from new section when its time is reached - #8

  • Added skip to next album - #5

  • History is stored per section - #6

0.1.0

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Mopidy-Auto-0.4.0.tar.gz (35.2 kB view details)

Uploaded Source

Built Distribution

Mopidy_Auto-0.4.0-py2.py3-none-any.whl (41.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file Mopidy-Auto-0.4.0.tar.gz.

File metadata

  • Download URL: Mopidy-Auto-0.4.0.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Mopidy-Auto-0.4.0.tar.gz
Algorithm Hash digest
SHA256 7f727cc13f35a94a79ca1c5b61ed63c6b7aff3f089257ded3c0d3d494b982fdf
MD5 72d47bfabc5f45ccc5e6b559399173ac
BLAKE2b-256 60f28ff5b8ae9fa4deea91fe4fbbda0c80ccc479770c0c6e39610a7c93a968e9

See more details on using hashes here.

File details

Details for the file Mopidy_Auto-0.4.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for Mopidy_Auto-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f9e48f3cfbac5b83da30f5bde896d79e3ce60bb68b2b7e09227cd02184e2e4ef
MD5 4f335d91ce838393af81c51aefad4abb
BLAKE2b-256 88560b2822d486be4162f32f76d12365f8476a285ca16d9860e27c2692a51bf4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page