xbvr
xbvr copied to clipboard
Support DeoVR remote control protocol
Devovr added a new feature in the last few weeks to allow remote control the player. This is done by opening up a tcp port on port 23554. This will return a number of bytes of the payload followed by a json payload of the currently playing video. You need to send a packet every 3 seconds either 0 or the bytes in a json payload followed by the payload.
Example json data: {"path":"http://nas.home:9999/api/dms/file/138","duration":2639.624,"currentTime":1.925,"playbackSpeed":1.0,"playerState":0}
See the api docs: https://deovr.com/doc#remote-control
Already implemented it on a private branch to test, but tbh I don’t see much of a use cases right now
Edit: but ofc I am open to ideas
The relevantly easy things to add would be playlists and bookmarks. As you are getting the position you could stop the video and return back to the list of videos. If you add a tab for controls and have a virtual video that marks the position of the previous video as a bookmark.
The other major feature would be to add script player support such as buttplug.io. This might be something best done by another program that sits to the side. Adding a proxy support for this protocol or a set of api's that provide more details on what the video is. As xbvr knows what site the video was downloaded from and the file name it is it would have the information to find the right script for that video and sync it up with the video.
All of the above are valid ideas, but they could only work if supported by DeoVR interface.
Integration with buttplug.io is something I’ve thought about but it looks like absolute nightmare to support in the long run.
With the remote control protocol is it possible to have a separate computer browser control an instance of DeoVR running on an Oculus Quest? Because that would be the ideal use case in my opinion, to browse and load it up from the desktop interface, and then put on the headset.