BillOatman 496 Posted August 3, 2022 Share 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 Link to comment Share on other sites More sharing options...
chef 3745 Posted August 3, 2022 Author Share 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 Link to comment Share on other sites More sharing options...
Cheesegeezer 3086 Posted August 3, 2022 Share 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 Link to comment Share on other sites More sharing options...
Mookdog 89 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
e123enitan 237 Posted August 4, 2022 Share 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! Link to comment Share on other sites More sharing options...
rbjtech 4223 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
chef 3745 Posted August 4, 2022 Author Share 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 Link to comment Share on other sites More sharing options...
rbjtech 4223 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
ebr 14905 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
chef 3745 Posted August 4, 2022 Author Share Posted August 4, 2022 Fourth attempt gets it about 95% of the way there! Really close to what we are looking for 3 1 Link to comment Share on other sites More sharing options...
Cheesegeezer 3086 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
rbjtech 4223 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
chef 3745 Posted August 4, 2022 Author Share 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. Link to comment Share on other sites More sharing options...
BillOatman 496 Posted August 4, 2022 Share 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 Link to comment Share on other sites More sharing options...
Junglejim 345 Posted August 5, 2022 Share 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 Link to comment Share on other sites More sharing options...
jspanitz 7 Posted August 5, 2022 Share 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 Link to comment Share on other sites More sharing options...
rbjtech 4223 Posted August 5, 2022 Share 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 Link to comment Share on other sites More sharing options...
GrimReaper 3274 Posted August 5, 2022 Share Posted August 5, 2022 3 minutes ago, rbjtech said: btw - can a Mod please rename this thread 'Watch Party' ? *Done.* 2 Link to comment Share on other sites More sharing options...
Mookdog 89 Posted August 5, 2022 Share 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 Link to comment Share on other sites More sharing options...
Cheesegeezer 3086 Posted August 5, 2022 Share 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 Link to comment Share on other sites More sharing options...
chef 3745 Posted August 5, 2022 Author Share 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 Link to comment Share on other sites More sharing options...
Mookdog 89 Posted August 6, 2022 Share 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 Link to comment Share on other sites More sharing options...
Junglejim 345 Posted August 6, 2022 Share 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 Link to comment Share on other sites More sharing options...
BillOatman 496 Posted August 6, 2022 Share 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 Link to comment Share on other sites More sharing options...
Cheesegeezer 3086 Posted August 6, 2022 Share 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 Link to comment Share on other sites More sharing options...
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