Gramophone icon indicating copy to clipboard operation
Gramophone copied to clipboard

[FR] cast plugin roadmap

Open nift4 opened this issue 11 months ago • 1 comments

Is your feature request related to a problem? Please describe. I'm always frustrated when someone with Spotify Connect effortlessy casts their music to literally every device there is and I can't do that

Describe the solution you'd like Integration of RemotePlaybackClient from androidx MediaRouter into Gramophone UI, together with a cast plugin that hosts a ContentProvider -> HTTP proxy. Make the cast plugin provide media routes for every relevant casting protocol (Chromecast, AirPlay, UPnP and Miracast - did I miss any?)

Describe alternatives you've considered Use Spotify

Additional context There are open source implementations for practically every cast sender protocol:

  • Chromecast 2: https://github.com/vitalidze/chromecast-java-api-v2

  • AirPlay 2: https://github.com/philippe44/libraop

  • UPnP/DLNA: https://framagit.org/medoc92/npupnp

  • (Miracast seems complicated to implement considering it's based on Wi-Fi Direct and it also requires video, so it's out of scope even though it'd be nice-to-have for TVs - maybe once the initial milestone is reached? :D)

  • [X] I will open one issue per request, follow the issue format and will add [FR] to the start of my issue title, and I acknowledge that if I don't follow the format, my issue might get closed without further explanation.

nift4 avatar Jan 26 '25 19:01 nift4

Forgot to note: GMS already includes a MediaRouteProvider for Chromecast, so Chromecast on devices with GMS can be supported with just androidx.mediarouter and a HTTP server

nift4 avatar Jan 26 '25 19:01 nift4

need to figure out transcoding: https://github.com/androidx/media/issues/2600

nift4 avatar Jul 15 '25 09:07 nift4

when I do any casting thing, the maximum acceptable default volume is 10%. because with pipewire's airplay support i just figured out how to blast away the entire neighbourhood

nift4 avatar Aug 06 '25 16:08 nift4

Might be nice to make a "local network plugin" instead of "cast plugin", that allows playing music from and to the local network. Important protocols seem to be UPnP AV, Kodi remote control, DAAP, Samba, somewhat Logitech Media Server's SlimProto? Might also be nice to implement a small UPnP AV or DAAP server for sharing with other instances of Gramophone. Maybe also add a HTTP server with a simple web page so that you can up/download music to device via Wifi.

nift4 avatar Sep 19 '25 08:09 nift4