music-assistant-machine [Mon, 23 Feb 2026 18:29:56 +0000 (19:29 +0100)]
⬆️ Update music-assistant-frontend to 2.17.95 (#3222)
Co-authored-by: stvncode <25082266+stvncode@users.noreply.github.com>
Co-authored-by: Marvin Schenkel <marvinschenkel@gmail.com>
Marvin Schenkel [Mon, 23 Feb 2026 18:10:13 +0000 (19:10 +0100)]
Add genre icons and SVG handling to imageproxy (#3223)
* Add genre icons and SVG handling to imageproxy
* Cleanup
Marcel van der Veldt [Mon, 23 Feb 2026 16:37:45 +0000 (17:37 +0100)]
Fix player tests
Marcel van der Veldt [Mon, 23 Feb 2026 16:30:09 +0000 (17:30 +0100)]
Fix flow mode determination
OzGav [Mon, 23 Feb 2026 14:36:32 +0000 (00:36 +1000)]
Fix Radioparadise image URL (#3220)
The change to the documentation repo moved the images
Marvin Schenkel [Mon, 23 Feb 2026 12:52:34 +0000 (13:52 +0100)]
Fail job on test failures
Marcel van der Veldt [Mon, 23 Feb 2026 11:49:06 +0000 (12:49 +0100)]
Fix select output protocol already in play_index to avoid race on flow mode
Marcel van der Veldt [Mon, 23 Feb 2026 11:42:19 +0000 (12:42 +0100)]
Fix race condition in player register flow wrt config
Sameer Alam [Mon, 23 Feb 2026 08:32:30 +0000 (02:32 -0600)]
Update Alexa player provider (#3167)
* Update Alexa player provider
* Remove redundant try catch
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Address PR comments
* Remove ActionUnavailble catches
* Remove extra catch alls and add _on_player_media_updated
* Remove catch all
* Bump AlexaPy
* Fix _upload_metadata when media is not available
---------
Co-authored-by: Sameer Alam <alams154@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Tom Matheussen [Mon, 23 Feb 2026 08:28:09 +0000 (09:28 +0100)]
Clear internal HEOS queue before playing (#3219)
David Bishop [Mon, 23 Feb 2026 07:23:25 +0000 (23:23 -0800)]
Fix inverted track_number condition in Bandcamp converter (#3211)
The condition checked output.track_number instead of track.track_number,
meaning track numbers from the API were only applied when the output
already had a non-None default.
Co-authored-by: David Bishop <git@gnuconsulting.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
David Bishop [Mon, 23 Feb 2026 07:20:08 +0000 (23:20 -0800)]
Use ImageType.THUMB for Bandcamp artwork images (#3212)
Bandcamp artwork is square, not landscape. All other music providers
in the codebase use THUMB for standard album and artist art.
Co-authored-by: David Bishop <git@gnuconsulting.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Marvin Schenkel [Mon, 23 Feb 2026 07:18:53 +0000 (08:18 +0100)]
Fix bluesound volume jumping back after volume_set.
David Bishop [Mon, 23 Feb 2026 07:12:34 +0000 (23:12 -0800)]
Bandcamp: validate login on init when credentials are configured (#3215)
Co-authored-by: David Bishop <git@gnuconsulting.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
music-assistant-machine [Mon, 23 Feb 2026 03:52:43 +0000 (04:52 +0100)]
⬆️ Update music-assistant-frontend to 2.17.94 (#3218)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Mon, 23 Feb 2026 01:03:33 +0000 (02:03 +0100)]
Fix player config not fully persisting
Marcel van der Veldt [Mon, 23 Feb 2026 00:51:19 +0000 (01:51 +0100)]
Fix _cleanup_player_memberships and _handle_set_members
Marcel van der Veldt [Mon, 23 Feb 2026 00:36:33 +0000 (01:36 +0100)]
Speedup is_hass_supervisor check
Marcel van der Veldt [Mon, 23 Feb 2026 00:36:13 +0000 (01:36 +0100)]
Pre-compile Python bytecode in Dockerimage for faster startup
Marcel van der Veldt [Mon, 23 Feb 2026 00:23:04 +0000 (01:23 +0100)]
Speedup core controller startup
Marcel van der Veldt [Sun, 22 Feb 2026 23:56:07 +0000 (00:56 +0100)]
Some minor tweaks to handling prevent-playback of airplay
Marcel van der Veldt [Sun, 22 Feb 2026 23:10:43 +0000 (00:10 +0100)]
Auto translate commands directed at protocol player id to visible parent
Marcel van der Veldt [Sun, 22 Feb 2026 20:18:34 +0000 (21:18 +0100)]
Fix fully_played should return boolean
Marcel van der Veldt [Sun, 22 Feb 2026 19:43:27 +0000 (20:43 +0100)]
Fix player not available in HA at startup
Marcel van der Veldt [Sun, 22 Feb 2026 17:27:20 +0000 (18:27 +0100)]
Fix set_members with lock
Marcel van der Veldt [Sun, 22 Feb 2026 17:17:29 +0000 (18:17 +0100)]
Fix some edge cases with AirPlay DACP commands
Marcel van der Veldt [Sun, 22 Feb 2026 17:16:44 +0000 (18:16 +0100)]
Fix race condition with enqueue_next_media on SyncGroup
Marcel van der Veldt [Sun, 22 Feb 2026 16:28:35 +0000 (17:28 +0100)]
Fix for _cleanup_player_memberships
Marcel van der Veldt [Sun, 22 Feb 2026 15:06:49 +0000 (16:06 +0100)]
Fix playback speed handling on queue item and not on queue
Marcel van der Veldt [Sun, 22 Feb 2026 14:30:51 +0000 (15:30 +0100)]
Fix accessing player.state.synced_to
Marcel van der Veldt [Sun, 22 Feb 2026 14:17:53 +0000 (15:17 +0100)]
Auto ungroup when trying to form syncgroup with already synced player
Marcel van der Veldt [Sun, 22 Feb 2026 14:09:30 +0000 (15:09 +0100)]
Add note in docstring
Marcel van der Veldt [Sun, 22 Feb 2026 14:07:00 +0000 (15:07 +0100)]
Fix ungroup command
Marcel van der Veldt [Sun, 22 Feb 2026 13:53:11 +0000 (14:53 +0100)]
Fix issue with subprocess pips closing
Marcel van der Veldt [Sun, 22 Feb 2026 13:52:33 +0000 (14:52 +0100)]
Lock set_members to avoid concurrent actions
Marcel van der Veldt [Sun, 22 Feb 2026 13:44:14 +0000 (14:44 +0100)]
More gracefully handle DLNA errors
Marcel van der Veldt [Sun, 22 Feb 2026 13:35:10 +0000 (14:35 +0100)]
Speed-up core startup a bit
Marvin Schenkel [Sun, 22 Feb 2026 07:29:19 +0000 (08:29 +0100)]
Fix bluesound volume jumping back after volume_set.
music-assistant-machine [Sun, 22 Feb 2026 03:48:44 +0000 (04:48 +0100)]
⬆️ Update music-assistant-frontend to 2.17.93 (#3214)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Sun, 22 Feb 2026 01:56:07 +0000 (02:56 +0100)]
Properly cleanup stream buffers
Marcel van der Veldt [Sun, 22 Feb 2026 01:47:07 +0000 (02:47 +0100)]
Add a bunch of extra error handling and logging for flow streams
Marcel van der Veldt [Sun, 22 Feb 2026 01:19:59 +0000 (02:19 +0100)]
Add some additional guards to asyncprocess
Marcel van der Veldt [Sun, 22 Feb 2026 00:45:01 +0000 (01:45 +0100)]
Merge branch 'dev' of https://github.com/music-assistant/server into dev
Marcel van der Veldt [Sun, 22 Feb 2026 00:44:55 +0000 (01:44 +0100)]
Simplify can_group_with logic
Bob Butler [Sun, 22 Feb 2026 00:44:10 +0000 (16:44 -0800)]
Validate queue item ID in Sonos pause path (#3194)
Brad Keifer [Sun, 22 Feb 2026 00:42:49 +0000 (11:42 +1100)]
Airplay2-configurable-latency (#3210)
Andy Kelk [Sat, 21 Feb 2026 23:30:26 +0000 (10:30 +1100)]
Add API to handle playback speed (#3198)
OzGav [Sat, 21 Feb 2026 23:29:56 +0000 (10:29 +1100)]
Gracefully skip files/folders with emoji names on SMB mounts (#3183)
Mischa Siekmann [Sat, 21 Feb 2026 23:26:48 +0000 (00:26 +0100)]
Snapcast: Fixes for hard switching of group leaders (#3209)
Copilot [Sat, 21 Feb 2026 23:25:20 +0000 (00:25 +0100)]
Fix Sonos S2 announcement 404 error on cloud queue context endpoint (#3208)
Marcel van der Veldt [Sat, 21 Feb 2026 22:59:42 +0000 (23:59 +0100)]
Small simplification for GroupPlayer
Marcel van der Veldt [Sat, 21 Feb 2026 22:36:29 +0000 (23:36 +0100)]
Some small code quality changes to DLNA Provider
Marcel van der Veldt [Sat, 21 Feb 2026 21:16:07 +0000 (22:16 +0100)]
Fix announcements typo
David Bishop [Sat, 21 Feb 2026 11:05:42 +0000 (03:05 -0800)]
Handle HEAD requests on root route (#3204)
scyto [Sat, 21 Feb 2026 11:04:20 +0000 (03:04 -0800)]
Fix group mute for protocol-synced players (#3205)
Tom Matheussen [Sat, 21 Feb 2026 11:04:03 +0000 (12:04 +0100)]
Fix HEOS source switching back to Local Music after starting stream (#3206)
Marcel van der Veldt [Sat, 21 Feb 2026 11:00:53 +0000 (12:00 +0100)]
Fix some more issues with syncgroups
Marcel van der Veldt [Sat, 21 Feb 2026 09:32:40 +0000 (10:32 +0100)]
Add comments to schema version constants
Marvin Schenkel [Sat, 21 Feb 2026 09:26:11 +0000 (10:26 +0100)]
Revert MIN_SCHEMA_VERSION to maintain HA compatability.
hmonteiro [Sat, 21 Feb 2026 07:27:10 +0000 (07:27 +0000)]
Expand PIN based auth in airplay 2 (#3165)
* add LG details
* Make pin based auth work in other devices
* remove reference to apple tv and macos in check
* remove unused constant and adjust airplay2 filter
* also apply pairing check to raop
* add unit test
music-assistant-machine [Sat, 21 Feb 2026 03:35:01 +0000 (04:35 +0100)]
⬆️ Update music-assistant-frontend to 2.17.92 (#3203)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Fri, 20 Feb 2026 23:55:06 +0000 (00:55 +0100)]
Fix use playerid for http profile
Eric Munson [Fri, 20 Feb 2026 23:22:20 +0000 (18:22 -0500)]
OpenSubsonic: Use server provided version tag if present (#3200)
Maxim Raznatovski [Fri, 20 Feb 2026 23:21:43 +0000 (00:21 +0100)]
Fix DSP not applying for AirPlay and Sendspin players (#3191)
Marcel van der Veldt [Fri, 20 Feb 2026 23:19:00 +0000 (00:19 +0100)]
Fixes for active source and current media with linked protocols
Jozef Kruszynski [Fri, 20 Feb 2026 17:04:41 +0000 (18:04 +0100)]
Feat/genres-v2-implementation (#3164)
* feat(genres): Core genre system
* feat(genres): add background scanner for metadata.genres
* refactor(genres): add genres to base
* test(genres): add test suite
* fix(genres): eixsting genres are not recreated at migration
* feat(genres): guard against infinite loops in scanner
* fix(genres): remove duplicate, improve tests
* fix(genres): limit genre tracks return
* refactor(genres): use logger rather than print
* refactor(genres): use asyncio.gather rather than sequential calls
* refactor(genres): various fixes after review comments
* refactor(genres): randomize selection, use asyncio gether
* refactor(genres): remove alias object
* fix(genres): fix n:n relationship, safeguard comparisons
* refactor(genres): address review comments
* fix(genres): fix issues after rebase
* test(genres): add missing param to library sync tests
Fabian Munkes [Fri, 20 Feb 2026 17:02:49 +0000 (18:02 +0100)]
abs: fix: do not add cover url if no cover present (#3202)
do not add cover url if path not present
music-assistant-machine [Fri, 20 Feb 2026 16:36:59 +0000 (17:36 +0100)]
⬆️ Update music-assistant-models to 1.1.99 (#3201)
Co-authored-by: MarvinSchenkel <17671719+MarvinSchenkel@users.noreply.github.com>
Marcel van der Veldt [Fri, 20 Feb 2026 14:20:15 +0000 (15:20 +0100)]
More fixes for protocol linking
Marcel van der Veldt [Fri, 20 Feb 2026 14:14:05 +0000 (15:14 +0100)]
Small fixes to grouped airplay playback and late joining
Marcel van der Veldt [Fri, 20 Feb 2026 13:05:22 +0000 (14:05 +0100)]
Fix: remove rate limiting from single item streams
Marvin Schenkel [Fri, 20 Feb 2026 10:40:45 +0000 (11:40 +0100)]
Merge branch 'dev' of https://github.com/music-assistant/server into dev
Marvin Schenkel [Fri, 20 Feb 2026 10:40:39 +0000 (11:40 +0100)]
Add debug logs to streamscontroller to debug smart fades sometimes skipping.
Brad Keifer [Fri, 20 Feb 2026 10:36:06 +0000 (21:36 +1100)]
Fix RAOP password handling (#3197)
Lorenzo Imbastari [Fri, 20 Feb 2026 10:28:44 +0000 (11:28 +0100)]
Added AriaCast Receiver plugin for Music Assistant (#3061)
* Add AriaCast Receiver plugin for Music Assistant
- Implemented AriaCast Receiver plugin to stream audio from Android devices to Music Assistant players.
- Added README.md with features, installation, configuration, and usage instructions.
- Created configuration classes for audio and server settings.
- Developed metadata handling for AriaCast streams.
- Implemented UDP discovery and WebSocket server for audio and metadata streaming.
- Added helper functions for local IP retrieval and artwork downloading.
- Included SVG icon for the plugin.
- Updated manifest.json with documentation link and requirements.
* Update README to simplify installation instructions
Removed installation instructions and updated configuration step for clarity.
* fixed mypy and pre-commit problems for my provider
* Delete music_assistant/providers/ariacast_receiver/README.md
* fixed pre-commit problems x2
* fixed icon
* Merge remote-tracking branch 'origin/dev' into dev
* Fixed Metadata and media controls after refactoring
* copilot notes addressing
* Addressing more copilot notes
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Addressing last notes
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: address code review feedback for ariacast_receiver
* fix(ariacast): add playback ready event for audio/player sync
- Add _playback_ready event to coordinate audio handler and player stream
- Audio handler waits up to 2s for player to become ready after starting playback
- get_audio_stream signals ready when it starts consuming frames
- Clear ready state on cleanup in _clear_active_player and stream end
This reduces audio frame loss during player setup by synchronizing
the audio receiver with the player's readiness to consume frames.
* Add multi-platform AriaCast receiver binaries (darwin/linux amd64/arm64/arm)
* renamed receiver name
* no redownload if same artwork
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/manifest.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: use shared http_session for ariacast websocket connection
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix in previous copilot commit messing up the way pipe was read (no loop)
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fixel last comments
* Change multi_instance setting to false
* Addressed latest comments after review
- Switched from pipe to stdout
- Dropped linux arm
- Moved _get_binary_path() to helpers.py
* Implemented stderr logging, robust WebSocket connection retries, improved artwork handling, and player switching control.
Updated Manifest
* Fix after PlayerController renamed all to all_players and players.get to get_player()
* Update music_assistant/providers/ariacast_receiver/__init__.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update music_assistant/providers/ariacast_receiver/__init__.py
Added suggested track change comments
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update documentation URL in manifest.json
* Added README for the binary of AriaCast Receiver
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Fabian Munkes [Fri, 20 Feb 2026 09:34:48 +0000 (10:34 +0100)]
fix: gpodder: pass verify_ssl to web requests (#3195)
* pass verify_ssl in gpodder
* default is True
music-assistant-machine [Fri, 20 Feb 2026 03:43:27 +0000 (04:43 +0100)]
⬆️ Update music-assistant-frontend to 2.17.91 (#3199)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Thu, 19 Feb 2026 21:05:11 +0000 (22:05 +0100)]
Fixes for sendspin web player
Marvin Schenkel [Thu, 19 Feb 2026 19:35:40 +0000 (20:35 +0100)]
Fix grouping for for players whos native protocol is a protocol of other players (#3192)
Marcel van der Veldt [Thu, 19 Feb 2026 19:19:45 +0000 (20:19 +0100)]
Small tweak to merged players concept
Marcel van der Veldt [Thu, 19 Feb 2026 17:27:07 +0000 (18:27 +0100)]
Simplify hidden_by_default
Marcel van der Veldt [Thu, 19 Feb 2026 12:41:37 +0000 (13:41 +0100)]
Update protocol linking test
David Anthoff [Thu, 19 Feb 2026 12:18:25 +0000 (04:18 -0800)]
Add a extensions.json file to .vscode (#3068)
* Add a extensions.json file to .vscode
* Update .vscode/extensions.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add another extension to the VS Code recommended set
* Remove Python env extension from recommended extensions
* Adjust whitespacing
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Marcel van der Veldt [Thu, 19 Feb 2026 10:21:15 +0000 (11:21 +0100)]
Fix universal player availability
Marcel van der Veldt [Thu, 19 Feb 2026 10:03:46 +0000 (11:03 +0100)]
Fix for protocol matching with locally administered mac
Łukasz Wawrzyk [Thu, 19 Feb 2026 09:03:14 +0000 (10:03 +0100)]
Reduce FFmpeg cover-art storms (#3109)
* fix(images): add in-memory cache and concurrency limit for image data
Add a TTL-based LRU memory cache (256 entries, 15min TTL) to
get_image_data() to avoid redundant fetches of the same image.
Deduplicate concurrent in-flight requests via task_id and limit
embedded image extractions to 2 concurrent ffmpeg processes
using a semaphore.
Includes unit tests for cache hits, TTL expiry, eviction, and
request deduplication.
* Revert "fix(images): add in-memory cache and concurrency limit for image data"
This reverts commit
a676a2484d24df1de4d2631118f1f0315c503fc8.
* feat(images): add on-disk thumbnail cache to avoid repeated ffmpeg extractions
Implement a two-tier caching system for image thumbnails:
- On-disk cache: thumbnails stored as {sha256(provider/path)}_{size}.{ext}
in a "thumbnails" subfolder of the cache directory, surviving restarts.
- In-memory FIFO cache: last 50 thumbnails for instant access on hot paths.
- In-flight deduplication: concurrent requests for the same thumbnail share
a single generation task via create_task, preventing ffmpeg bursts.
This eliminates repeated ffmpeg spawns for embedded cover art extraction,
which caused high CPU usage and playback interruptions especially on
lower-powered hardware and network-mounted music libraries (e.g. SMB).
OzGav [Thu, 19 Feb 2026 08:43:41 +0000 (18:43 +1000)]
Add APEv2 tag parsing for WavPack/Musepack/Monkey's Audio (#3185)
music-assistant-machine [Thu, 19 Feb 2026 03:47:30 +0000 (04:47 +0100)]
⬆️ Update music-assistant-frontend to 2.17.90 (#3190)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Wed, 18 Feb 2026 20:47:32 +0000 (21:47 +0100)]
Add eager start to create_task helper
Marvin Schenkel [Wed, 18 Feb 2026 18:38:49 +0000 (19:38 +0100)]
Fix library items not being deletes after providers have removed them (#3154)
Marvin Schenkel [Wed, 18 Feb 2026 18:04:47 +0000 (19:04 +0100)]
Switch to MA MusicBrainz mirror (#3186)
* Use MA Musicbrainz mirror and relax throttler.
* Use MA Musicbrainz mirror and relax throttler.
Marcel van der Veldt [Wed, 18 Feb 2026 11:16:02 +0000 (12:16 +0100)]
Fix: Don't merge player protocols for multiple software players on same host
music-assistant-machine [Wed, 18 Feb 2026 03:48:48 +0000 (04:48 +0100)]
⬆️ Update music-assistant-frontend to 2.17.89 (#3181)
Co-authored-by: marcelveldt <6389780+marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Tue, 17 Feb 2026 23:13:44 +0000 (00:13 +0100)]
Fix: ignore invalid mac and ip addresses in protocol linking
Maxim Raznatovski [Tue, 17 Feb 2026 21:46:52 +0000 (22:46 +0100)]
Update Sendspin provider to version 4.0 with many improvements (#3158)
Marcel van der Veldt [Tue, 17 Feb 2026 20:20:51 +0000 (21:20 +0100)]
Fix webplayer hide from UI by default
Marcel van der Veldt [Tue, 17 Feb 2026 18:48:59 +0000 (19:48 +0100)]
Use PlayerType player for sendspin web player
Marcel van der Veldt [Tue, 17 Feb 2026 18:47:00 +0000 (19:47 +0100)]
Fix player config entries
Marcel van der Veldt [Tue, 17 Feb 2026 17:45:29 +0000 (18:45 +0100)]
Fix: bind sendspin proxy to correct IP
Marcel van der Veldt [Tue, 17 Feb 2026 17:20:22 +0000 (18:20 +0100)]
Fix: Add PlayerFeature.PLAY_MEDIA to HEOS provider