BillOatman 575 Posted August 3, 2022 Posted August 3, 2022 3 hours ago, ebr said: While I agree with that, I think you will need the ability to designate a "controller" or owner of the party from your plug-in because the only one that can create a party will be an admin and they may not always want to also be the controller. Or even a partygoer for that matter. 1
chef 3808 Posted August 3, 2022 Author Posted August 3, 2022 I have learned some very important things while testing this out. First of all, it is not a good idea to send a 'pause' command to the clients that are waiting. It just will not work the way you would expect. You must send the stop command to the clients that are waiting. then message them that they are in the queue When the Watch Party Controller starts playback on their device, send the play command to the other sessions, not the controlling session. I can tell you that initially it works. It is rough... But... things are always a little rough in the beginning. 6
Cheesegeezer 3102 Posted August 3, 2022 Posted August 3, 2022 (edited) Mate!! So it works. Like you say, creases need ironing out and yes the delay is because of the session starting twice. epic bro! Edited August 3, 2022 by Cheesegeezer 1 1 1
Mookdog 90 Posted August 4, 2022 Posted August 4, 2022 3 hours ago, chef said: I have learned some very important things while testing this out. First of all, it is not a good idea to send a 'pause' command to the clients that are waiting. It just will not work the way you would expect. You must send the stop command to the clients that are waiting. then message them that they are in the queue When the Watch Party Controller starts playback on their device, send the play command to the other sessions, not the controlling session. I can tell you that initially it works. It is rough... But... things are always a little rough in the beginning. Holy Hell @cheffor a first shot at it thats pretty darn awesome. Keep it up brother Mook
e123enitan 263 Posted August 4, 2022 Posted August 4, 2022 3 hours ago, chef said: I have learned some very important things while testing this out. First of all, it is not a good idea to send a 'pause' command to the clients that are waiting. It just will not work the way you would expect. You must send the stop command to the clients that are waiting. then message them that they are in the queue When the Watch Party Controller starts playback on their device, send the play command to the other sessions, not the controlling session. I can tell you that initially it works. It is rough... But... things are always a little rough in the beginning. @cheifWaooo you are awesome!
rbjtech 4996 Posted August 4, 2022 Posted August 4, 2022 @chef Amazing progress ! 10 hours ago, chef said: First of all, it is not a good idea to send a 'pause' command to the clients that are waiting. It just will not work the way you would expect. Yea that was just an initial idea on the first post but then realized myself that is not a good idea for a number of reasons haha - better to inform the user they are in the 'party' and then give them back control. They can either wait - or actually do something else (in the same session) if they wanted to. When ready, then the controller would start the playback - overwriting whatever they were doing at the time (including existing playback of something else for example such as a 'watch party' intro). 10 hours ago, chef said: 10 hours ago, chef said: When the Watch Party Controller starts playback on their device, send the play command to the other sessions, not the controlling session. When I did this initially (just via web api calls from a command line), there was no controller - so kicking off and pausing each 'session' was easy enough. My initial thought was that there is no overall 'controller' - each user/session has equal rights to do what they want to the session. The 'controlling' part is watching each session to get the playback state - and if this changes (ie somebody has paused), then re-broadcast that state to all the other sessions to re-sync it. Any resume state will probably need a 5 second rewind on all session to keep this sync across all the clients - not sure. 1
chef 3808 Posted August 4, 2022 Author Posted August 4, 2022 Here is a third test and attempt. Things for the next version: 1. The Controlling session needs to be paused after starting, it has to wait for each of the other session to catchup in the runtime. It is only a couple seconds wait, and this will create a solid sync between streams. 2. The "Added To Watch Party" message is flooding the clients. This means that each of the watch party sessions should have some kind of flag in the configuration that lets the Controller know that the client has been messaged, alerting the user that they have been added to the party. Pretty straight forward... 1
rbjtech 4996 Posted August 4, 2022 Posted August 4, 2022 56 minutes ago, chef said: Here is a third test and attempt. Things for the next version: 1. The Controlling session needs to be paused after starting, it has to wait for each of the other session to catchup in the runtime. It is only a couple seconds wait, and this will create a solid sync between streams. 2. The "Added To Watch Party" message is flooding the clients. This means that each of the watch party sessions should have some kind of flag in the configuration that lets the Controller know that the client has been messaged, alerting the user that they have been added to the party. Pretty straight forward... Steady progress Chef - looking great. So the 're-sync' is my thoughts too - all the clients 'fire' and then you 'resync' them all after X seconds. The reason for this is to allow all the network connections to open, transcoding to begin and buffer blah blah. As a 'controller' you have no control over that process on the clients - but what you do have control over is their session once it has settled down. hence the re-sync - maybe just send a message before hand - 'Watch Party is re-syncing' etc On the message - that's odd as you send the message to the session don't you ? I'm unsure why there are multiple messages being queued ? Another option is to wait for confirmation on the message - if you don't specify a timeout - then I believe it waits for an 'ok' on the remote. It did for me earlier via the api. 1
ebr 15662 Posted August 4, 2022 Posted August 4, 2022 As far as your message not being visible when it first showed - it looks like maybe you have framerate matching turned on on that device? If so, I think the message started while the TV was re-setting its mode. That is also going to be a situation that affects playback start time as we wait a couple seconds for that to happen when enabled (since the screen goes black). 1
chef 3808 Posted August 4, 2022 Author Posted August 4, 2022 Fourth attempt gets it about 95% of the way there! Really close to what we are looking for 3 1
Cheesegeezer 3102 Posted August 4, 2022 Posted August 4, 2022 4 minutes ago, chef said: Fourth attempt gets it about 95% of the way there! Really close to what we are looking for Awesome chef!! Grats mate
rbjtech 4996 Posted August 4, 2022 Posted August 4, 2022 Great stuff @chef Maybe post what you have on the Dev channel and we can have a play and give you some feedback on the delay etc ? 1
chef 3808 Posted August 4, 2022 Author Posted August 4, 2022 I think that instead of waiting for the device to be added to the party after the stream starts (which would include intros if enabled). The moment the user presses play, we'll kill the stream, and put all the logic for adding them then. That's what we have to do... Brb.
BillOatman 575 Posted August 4, 2022 Posted August 4, 2022 20 hours ago, chef said: I have learned some very important things while testing this out. First of all, it is not a good idea to send a 'pause' command to the clients that are waiting. It just will not work the way you would expect. You must send the stop command to the clients that are waiting. then message them that they are in the queue When the Watch Party Controller starts playback on their device, send the play command to the other sessions, not the controlling session. I can tell you that initially it works. It is rough... But... things are always a little rough in the beginning. 1 - 3 are counter to what I saw with comskipper. But, I did not pause. 1
Junglejim 383 Posted August 5, 2022 Posted August 5, 2022 (edited) 20 hours ago, chef said: I think that instead of waiting for the device to be added to the party after the stream starts (which would include intros if enabled). The moment the user presses play, we'll kill the stream, and put all the logic for adding them then. That's what we have to do... Brb. WOW!! This is cool! @chef your kicking butt here.. Get on the payroll mate. Edited August 5, 2022 by Junglejim 1
jspanitz 14 Posted August 5, 2022 Posted August 5, 2022 (edited) On 8/1/2022 at 6:00 PM, chef said: "watch party" works and conveys exactly what it is / does imo Wow - my comment was made before I realized how much progress had been made. Let me just say thanks to all working on this. Happy to test when you are ready. Roku here so hopeful it will work there but not counting on it based on previous comments. Edited August 5, 2022 by jspanitz
rbjtech 4996 Posted August 5, 2022 Posted August 5, 2022 (edited) btw - can a Mod please rename this thread 'Watch Party' ? @GrimReaper@CBers @Happy2Play.. thanks ! Edited August 5, 2022 by rbjtech
GrimReaper 4139 Posted August 5, 2022 Posted August 5, 2022 3 minutes ago, rbjtech said: btw - can a Mod please rename this thread 'Watch Party' ? *Done.* 2
Mookdog 90 Posted August 5, 2022 Posted August 5, 2022 20 minutes ago, jspanitz said: Wow - my comment was made before I realized how much progress had been made. Let me just say thanks to all working on this. Happy to test when you are ready. Roku here so hopeful it will work there but not counting on it based on previous comments. I agree cant wait to test it out. Turning out Fabulous @chef
Cheesegeezer 3102 Posted August 5, 2022 Posted August 5, 2022 (edited) Not that this would ever be used but a bit of fun for a watch party intro IMG_3225.MP4 I will do a cool animation for release. chef is smashing this solo btw… such a legend Edited August 5, 2022 by Cheesegeezer 5 1
chef 3808 Posted August 5, 2022 Author Posted August 5, 2022 I've come a realization while trying out different ways to produce this. If you use custom intros on your server, they will play when you are adding your self to the watch party. There isn't much at this time I can see to change that from happening. Not a deal breaker. 2
Mookdog 90 Posted August 6, 2022 Posted August 6, 2022 6 hours ago, chef said: I've come a realization while trying out different ways to produce this. If you use custom intros on your server, they will play when you are adding your self to the watch party. There isn't much at this time I can see to change that from happening. Not a deal breaker. I kinda got rid of my custom intros bc some of my family members could play the intro then the movie wouldnt start. I told them to stop using emby app on their tv and by a streaming device lol Mook 1
Junglejim 383 Posted August 6, 2022 Posted August 6, 2022 (edited) 11 hours ago, chef said: I've come a realization while trying out different ways to produce this. If you use custom intros on your server, they will play when you are adding your self to the watch party. There isn't much at this time I can see to change that from happening. Not a deal breaker. Yea I agree, intros are cool but not really necessary for the main scheme of things. I can forgo them.. Same for trailers, I've already watched them.. This would be so cool! Good luck mate.. It's already looking good to me. Edit: @chef @CheesegeezerYou 3rd party dev's have to get your resume filed with Emby..! Edited August 6, 2022 by Junglejim 1
BillOatman 575 Posted August 6, 2022 Posted August 6, 2022 14 hours ago, chef said: I've come a realization while trying out different ways to produce this. If you use custom intros on your server, they will play when you are adding your self to the watch party. There isn't much at this time I can see to change that from happening. Not a deal breaker. A "Don't do that" warning will suffice 1
Cheesegeezer 3102 Posted August 6, 2022 Posted August 6, 2022 Chef just disable the emby setting for cinemaintros and once watch party is completed reinstate it if it was enabled. and i can add code in to disable VantagePoint if watch party is active. 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now