You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue contains only one feature request. I will open one issue for every feature I want to request.
What feature do you want?
As seen in #668, there is a demand for some sort of "casting" (a really misleading name, by the way) played videos to another device, e.g., a TV screen. In said issue, Chromecast was suggested. However, this is not a great idea to begin with (there are privacy and other concerns), and Chromecast cannot easily be used in open-source projects (especially when Google doesn't like you anyway) because it is tightly coupled to Google's servers.
While taking another look at the reverse engineering of Google Chromecast, I found a reference pointing to a new open protocol developed within the W3C called Open Screen Protocol. In comparison to ancient existing protocols like UPnP/DLNA, there is a Remote Playback Protocol which basically covers our use case: instructing another device to play back a stream from an external source (i.e., the sending device does not have to stream the source itself to the receiver) while being able to control the player's behavior (play, pause, etc.).
The advantages are obvious. Not only is it an open protocol that does not depend on proprietary services (at least as far as I have read the document so far), it also limits our scope to implementing the sender bit. Receivers can be all kinds of devices, and there are likely going to be open-source implementations (e.g., based on Kodi). Instead of reinventing the wheel ourselves (I started to implement my own socket protocol in my Kodi Invidious plugin, which would have supported Invidious only), any kind of player can play back any kind of stream on any kind of device.
The protocol's editor is from Google, and apparently this protocol shall ultimately replace the proprietary, limited Chromecast system anyway.
In my opinion, we should finally close #668 and bury the idea to implement Chromecast. Instead, development efforts should focus on the Open Screen Protocol once it is stable enough. The current specification is already relatively sophisticated. In fact, it looks like it even combines two existing specifications, which means there might be some implementations for remote playback already.
The explainer considers the alternatives, but ends up with the same criticism we have discussed in #668 already: those existing, proprietary protocols are not supposed to be used by third parties.
Checklist
What feature do you want?
As seen in #668, there is a demand for some sort of "casting" (a really misleading name, by the way) played videos to another device, e.g., a TV screen. In said issue, Chromecast was suggested. However, this is not a great idea to begin with (there are privacy and other concerns), and Chromecast cannot easily be used in open-source projects (especially when Google doesn't like you anyway) because it is tightly coupled to Google's servers.
While taking another look at the reverse engineering of Google Chromecast, I found a reference pointing to a new open protocol developed within the W3C called Open Screen Protocol. In comparison to ancient existing protocols like UPnP/DLNA, there is a Remote Playback Protocol which basically covers our use case: instructing another device to play back a stream from an external source (i.e., the sending device does not have to stream the source itself to the receiver) while being able to control the player's behavior (play, pause, etc.).
The advantages are obvious. Not only is it an open protocol that does not depend on proprietary services (at least as far as I have read the document so far), it also limits our scope to implementing the sender bit. Receivers can be all kinds of devices, and there are likely going to be open-source implementations (e.g., based on Kodi). Instead of reinventing the wheel ourselves (I started to implement my own socket protocol in my Kodi Invidious plugin, which would have supported Invidious only), any kind of player can play back any kind of stream on any kind of device.
The protocol's editor is from Google, and apparently this protocol shall ultimately replace the proprietary, limited Chromecast system anyway.
In my opinion, we should finally close #668 and bury the idea to implement Chromecast. Instead, development efforts should focus on the Open Screen Protocol once it is stable enough. The current specification is already relatively sophisticated. In fact, it looks like it even combines two existing specifications, which means there might be some implementations for remote playback already.
Why do you want this feature?
This has been discussed thoroughly in #668.
The text was updated successfully, but these errors were encountered: