@murkus
Give both a force update. I've made some good changes, but I think Airplay is still broken for snapcast at the moment. Were you even using it though? Doesn't affect you if not.
The Mopidy3 instance is HIGHLY CUSTOMIZED. It runs Supervisord (port 9001) and cron in an Ubuntu image that does some python magic. Let me describe.
For the server.json you'll want to place it in `appdata/Mopidy3` alongside `mopidy.conf`
There is a line in `mopidy.conf` which is VERY IMPORTANT and its `
output = audioresample ! audioconvert ! audio/x-raw,rate=44100,channels=2,format=S16LE ! filesink location=/tmp/snapfifo
The mopidy server when booted up creates a copy of this configuration and does some updates to it, including replacing `/tmp/snapfifo` with `/tmp/snapfifo{A_REALLY_LONG_UNIQUE_HASH}`.
This works together with `servers.json` to allow you to have one docker image create multiple instances of Mopidy3 that can rely upon the same cache/data/etc
In the attached code block which is my scrubbed `servers.json` I create two instances of Mopidy3, "Home" and "Ambience". I also provide information to reach my snapcast server (well not actually mine). This is used in boot up, and automatically put into the Iris configuration.
This data is used to create a supervisord configuration for each desired instance of Mopidy3. So in this case it creates two programs, one for Home and one for Ambience.
Those programs run a python program before starting up that reaches out to the snapcast server to clear any stream that has the same name, and then add in this stream as a pipe pointing to `"f"pipe:///data/snapfifo{hash}?name={name}&sampleformat={sample_format}&send_to_muted=false&controlscript=meta_mopidy.py"`. Important note, you want to have Mopidy3 and Snapcast running on the same unraid instance with a shared tmp folder. For the extra instance, manually edit the docker config for Mopidy to expose the new MPD and HTTP ports over TCP.
{
"servers": {
"Home": {
"mpd": 6600,
"http": 6680
},
"Ambience": {
"mpd": 6601,
"http": 6681
}
},
"snapcast": {
"host": "snapcast.example.com,
"port": 443,
"use_ssl": true,
"enabled": true
}
}
All of this code is public at github.com/daredoes/docker-snapcast or github.com/daredoes/docker-mopidy3