From da0441ad597dc92b916fdec1fa40f35518d2993b Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Wed, 12 Nov 2025 22:20:24 -0600 Subject: feat(music): migrate from MPD to Mopidy for better streaming support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Enhanced MPD config with 16 MB buffer and 30s curl timeout - Discovered buffer_before_play is deprecated in MPD 0.24.6 - Installed Mopidy with mopidy-mpd extension for MPD protocol compatibility - Configured Mopidy with 15-second GStreamer buffer for smooth radio streaming - Analyzed network quality: baroque sonatas radio has 40ms jitter from Germany MPD limitations: - No pre-buffer control for streams (buffer_before_play deprecated) - Fixed 512 KB curl buffer (not configurable) - No replacement for pre-buffering functionality Mopidy configuration: - buffer_time: 15000ms (15 seconds) - stream timeout: 30000ms - MPD protocol on port 6600 (existing clients work) - HTTP interface on port 6680 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- dotfiles/system/.config/mopidy/mopidy.conf | 91 ++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 dotfiles/system/.config/mopidy/mopidy.conf (limited to 'dotfiles/system/.config/mopidy/mopidy.conf') diff --git a/dotfiles/system/.config/mopidy/mopidy.conf b/dotfiles/system/.config/mopidy/mopidy.conf new file mode 100644 index 0000000..973bcf3 --- /dev/null +++ b/dotfiles/system/.config/mopidy/mopidy.conf @@ -0,0 +1,91 @@ +# Mopidy configuration for cjennings +# See https://docs.mopidy.com/en/latest/config/ for documentation + +[core] +cache_dir = $XDG_CACHE_DIR/mopidy +config_dir = $XDG_CONFIG_DIR/mopidy +data_dir = $XDG_DATA_DIR/mopidy +max_tracklist_length = 10000 +restore_state = false + +[logging] +verbosity = 0 +format = %(levelname)-8s %(asctime)s [%(process)d:%(threadName)s] %(name)s\n %(message)s +color = true + +[audio] +mixer = software +mixer_volume = +output = autoaudiosink +# Buffer time in milliseconds - increase for smoother streaming +# Default is 1000ms, setting to 15000ms (15 seconds) for radio streams +buffer_time = 15000 + +[proxy] +scheme = +hostname = +port = +username = +password = + +[file] +enabled = true +# Point to Craig's music directory +media_dirs = + /home/cjennings/music|Music +excluded_file_extensions = + .directory + .html + .jpeg + .jpg + .log + .nfo + .pdf + .png + .txt + .zip +show_dotfiles = false +follow_symlinks = false +metadata_timeout = 1000 + +[http] +enabled = true +hostname = 127.0.0.1 +port = 6680 +zeroconf = Mopidy HTTP server on $hostname +allowed_origins = +csrf_protection = true +default_app = mopidy + +[m3u] +enabled = true +base_dir = /home/cjennings/music +default_encoding = latin-1 +default_extension = .m3u8 +playlists_dir = + +[softwaremixer] +enabled = true + +[stream] +enabled = true +protocols = + http + https + mms + rtmp + rtmps + rtsp +metadata_blacklist = +# Increase timeout for slow/distant streams (30 seconds) +timeout = 30000 + +# MPD frontend - enables MPD protocol compatibility (port 6600) +# This allows MPD clients like mpc, ncmpcpp to work with Mopidy +[mpd] +enabled = true +hostname = 127.0.0.1 +port = 6600 +password = +max_connections = 20 +connection_timeout = 60 \ No newline at end of file -- cgit v1.2.3