[772] vrc stream sync players do not sync video state at all
closed
Temporal
As of build 772, there is a new issue observed with the vrc stream sync video players. While adding a track works, once a video is started, any state change to the video after is reflected locally on the owner of the video player and no one else.
Reproduction Steps:
- Go to wrld_fff5d510-fc53-4e88-9d4e-1e0e45a17aff
- Select the stream sync video player (option 1)
- Play any video, eg https://www.youtube.com/watch?v=yDjbTjelkgk
- Video will start playing for you and anyone else in the map
- Hit ANY controls that send an RPC call to the stream sync player, (pause, stop, fast forward, rewind, live/normal mode)
- Observe that the video will only pause/stop/fastfoward etc on the video owners client, and not on anyone elses. The same also applies when a stopped video is restarted.
If video controls are released to everyone, only the person who enters a url (who becomes the video owner) can see any state change to the video after it starts. If someone other than the video owner hits the controls, the state change is observed on the video owners client only.
This bug seems to affect all maps that use the sync stream component (eg, jetdogs stream player example map).
the video sync component seems to be unaffected and works as expected
In the vrchat logs, stream sync rpc calls look like they are being deffered because the instigator is not local.
If a stream sync player has a predefined play list, only the video owner can change tracks and see them as well
Log In
Fax
closed
Thank you for your request!
Oh my, 2019 video players 😲
SDK2 is no longer supported. Please let us know if you're experiencing issues with one of our newer SDKs.
Temporal
seems to be fixed in build 785
Tupper - VRChat Head of Community
tracked
Eremite
I'm experiencing the same issue where RPCs sent to owner are ignored by anyone but the owner. All are still able to trigger say a pause with buttons.
Not sure if related, but I had a rather long video playing that had looped at some point and got a message from someone saying that they had tried to join me twice and it crashed them both times in VR. I had a desktop boi join me just fine though.
Video in question: https://www.youtube.com/watch?v=yXWe8g0zziw
Eremite
Possibly related to the crash I mentioned: https://discordapp.com/channels/189511567539306508/354707126087843851/576254877777395717
[10:51 PM] Temporal: one common cause of crashes i've noticed is
[10:51 PM] Temporal: say you have a video that was entered via url and its at the 30min mark
[10:51 PM] Temporal: by default the video player has track 0 with a 5min video
[10:51 PM] Temporal: sometimes, when a player loads in, the default track loads and the url that was added later takes a while to load
[10:52 PM] Temporal: the client tries playing the default track first
[10:52 PM] Temporal: but it will attempt to sync the time stamp
[10:52 PM] Temporal: and going to the 30min mark on a 5 min video.. well, thats a crash for you
[10:52 PM] Temporal: this can also happen i the url is blank and it tries to go to 30mins of blank
[10:52 PM] Temporal: the same thing can happen if you're watching a livestream and you have it set on normal
[10:53 PM] Temporal: new player joins, sees video duration is at 30mins? tries to sync +30mins on a live stream
[10:53 PM] Temporal: boom
Temporal
After some vigorous testing, I've found that it is not that new joins can see the videos sync'd. I'd update the original post above but I cant seem to edit it anymore?
Also, the bug seems to affect BOTH videosync and streamsync players, and not what the original title of this canny suggests. I had a false impression because of the timing issue.
Specifically, the bug in question for this issue is, when you join an instance, a players clients will sync up with the video owners video state for the first 20-30 seconds they are in the instance, afterwards their client completely ignores any video sync information, even if video ownership is changed.
Reproduction steps:
- Go to wrld_fff5d510-fc53-4e88-9d4e-1e0e45a17aff
- Select the stream sync video player (option 1)
- Play any video, eg https://www.youtube.com/watch?v=DHqWggm18NI
- Video will start playing for you and anyone else in the map
- Anyone that has been in the instance for more than 20-30 seconds will still see the video start playing, but will not sync to any controls after.
- Have someone new join the map
- Continuously hit a video control, in this case fast forward 10 seconds is a good control that can be continuously used.
- Observe that after 20-30 seconds, their client no longer syncs the fast forward, or any other control for the stream sync player
Likewise, the above is observed if the video sync player (option 2) is used
Do note, that adding a new video via the url input box that does a clear and add url seems to sync with everyone the new video, but as with the conditions above, anything else is not sync'd
Kizzy
Sync on videos is definitely screwed up, played a video for people and we were all synced at different times in the video.
Temporal
edit: outdated info ignore this comment