Skip to content
Mopidy Snapcast Extension
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
mopidy_snapcast v0.2 Apr 19, 2018
LICENSE Initial commit Mar 31, 2018
MANIFEST.in Add files via upload Apr 1, 2018
README.md Update README.md Apr 19, 2018
setup.py fixed bug in setup.py Apr 13, 2018

README.md

Snapcast Mopidy Extension

This [Mopidy] (https://www.mopidy.com) Extension adds support for [Snapcast] (https://github.com/badaix/snapcast/).

Currently a mixer 'snapcast' is implemented which uses the Snapcast JSON-RPC to control volume of a snapcast group. In the group only activated and unmuted clients are taken into account. The group may be configured in the configuration file or automatically detected by the pipe used as 'location=' in the audio output, see Configuration example below.

Installation

To install:

git clone https://github.com/aawsome/mopidy-snapcast.git
sudo pip install .

PyPi distribution is coming soon...

Configuration

The extension is enabled by default. Snapcast Server

Examples:

  • Use snapcast group with ID 'abc' of snapcastserver 'snapserver.local' on port 1234:
    [audio]
    mixer = snapcast

    [snapcast]
    enabled = true
    host = snapserver.local
    port = 1234
  • Use snapcast server on localhost:1705 and automatically detect group from stream connected to output:
    [audio]
    mixer = snapcast
    output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioconvert ! wavenc ! filesink location=/tmp/snapfifo

(-> Group linked to stream which is connected to /tmp/snapfifo is used!)

Changelog

v0.2 (2018-04-19):

  • fixed pip problem
  • changed logic in snapcast-socket.py, now also events are considered;
  • changes in snapcast are now distributed as Mopidy events, e.g. volume changes

v0.1 (2018-04-02):

  • Initial release
You can’t perform that action at this time.