Closed kanishka-linux closed 5 years ago
Following options have been added to PC To PC Casting Contextmenu of Master
In options 1 and 2, the application will automatically search and send subtitle matching name of the video file, if both video and subtitle are in same directory.
In option 6, application will show more control options by opening web interface of slave using internal web browser (either using qtwebkit or qtwebengine). This web interface contains other playback options like play/pause, toggle fullscreen, seeking etc.. Users can open web interface of slave using any external browser of their choice. Only advantage of using internal browser is that it will consume less memory compared to any full fledged browser. If users have setup username/password for slave then authentication can't be done via internal browser, they have to use external browser for it. Once authentication is done, they can use internal browser for controlling it.
Recently few commits have been pushed implementing pc-to-pc casting feature. In this feature one can cast local file or playlist managed by kawaii-player from one computer to another computer.
Current Design:
Currently this feature has been designed as master-slave protocol.
In master-slave design, one PC running kawaii-player will be assigned as Master, while another PC running kawaii-player will be assigned as slave.
Master can send audio/video and other playback commands. Slave can receive and play audio/video and execute playback commands as given by master.
It is possible to setup username and password for slave. Authentication will be done via its web interface.
How to use this feature?
Install kawaii-player from master branch on two computers let's say Master and Slave. Add few items in the library of Master and update its Video/Music section.
On Master, go to preferences->Other.
Now repeat similar procedure on slave computer.
Once setup is complete on master and slave, select any playlist of master and from its contextmenu send either single item or entire playlist to slave. For thumbnails, enable 'Preferences->Appearance->List With Thumbnail' option on both.
For controlling other playback activities on slave, enable its remote control functionality.
Does it work with chromecast? No, this feature won't work with chromecast, instead this feature will help users to create their own version of casting device. This feature intends to work as a free, open and cross-platform software solution to audio/video casting. Use any OS of your choice on master and install any OS on slave, and use any browser to control slave. No restrictions whatsoever on users.
Any other benefits apart from being free, open and cross-platform software solution to audio/video casting?
If possible consider providing suggestions and feedback on following points
Currently master client application can send only single entry or entire playlist to slave. What more options are needed on master for controlling slave? mpv provides multiple options, it is almost impossible to provide all of them. But it is possible to implement subset of them. Now the question is what should be that subset, and if more controls are provided then how they should be exposed. Sending various commands to slave via contextmenu of master is tedious, so how should control panel for slave be designed on master for better experience.
Instead of providing more control options on master and cluttering the interface, should more options be provided in web interface. Most users will use web interface (on mobiles) for controlling the slave, as it is convenient. So what control options should be accommodated in web interface apart from existing options?
If users/developers want to discuss any other point not mentioned above (including alternative to master-slave design or authentication) then they are welcome to do so.