Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
130 stars 2 forks source link

Video player randomly can get stuck in 2 - 5 frame loop #2579

Open FlameSoulis opened 1 month ago

FlameSoulis commented 1 month ago

Describe the bug?

While watching a video, at any (very) random moment, the video texture provider will loop five frames, but continue to play the audio without issue. Skipping around on the timeline will not solve the issue and can even reduce how many frames are looping, though the audio will update accordingly.

To Reproduce

  1. Spawn a video player
  2. Pray to RNGesus while watching a video
  3. If you get lucky, it will happen. It is best to use a video that does not have duplicate frames or a video you are familiar with.

Expected behavior

  1. Spawn a video player
  2. Not have the video player turn into a seizure-inducing nightmare

Screenshots

https://github.com/user-attachments/assets/3bfd0934-c1e3-4e3d-9f4d-6d1b940e4f78

Resonite Version Number

2024.7.12.1147

What Platforms does this occur on?

Windows

What headset if any do you use?

Valve Index, Quest Pro

Log Files

DEMONDOGGO-PC - 2024.7.12.1147 - 2024-07-13 02_17_03.log

Additional Context

If you duplicate the object, the duplicate will not contain the same problem. Additionally, this can also occur while you are not in the world. This has been going on for months, but due to how random it is, I have never been able to get a non-modded log of the incident. This has also occurred on other video players made by other users.

Reporters

Flame Soulis (FlameSoulis), MajorK (vessla)

shiftyscales commented 1 month ago

Are you able to isolate any common variables about videos that have exhibited this issue, @FlameSoulis? E.g. encoding settings.

Is it only for external videos that've been downloaded by yt-dlp? Or does it also occur for videos stored on Resonite's servers?

Was the video a live stream, or pre-recorded, if so, for the times this has happened- what was the stream property of the player set to / which video playback engine was in use? (Unity Native vs libVLC)?

Having as many possible variables narrowed down / isolated would help us to better figure out where the issue might be stemming from.

FlameSoulis commented 1 month ago

So, to break it down:

Common Variables: Frankly, it's so random, I can't really determine that. However, what I do know is that settings are not touched, so whatever the default is by the client, you can assume those to be the variables.

Video Type: These have all been regular YouTube videos, non-live streams. I think by default the Stream property is checked for YouTube videos, unless saved to the user's inventory, which these were not.

Playback Engine: Again, whatever the default is. I think that's UnityNative, since just spawning a video player directly has that set as the currentPlaybackEngine without user involvement.

I wish I could say there's some easy to make this happen, but I've encountered this bug so few times, I can still count the occurrences with my hands. However, lately they've been more frequent. The only saving grace is that they're only client side, as the person who was with me did not see the same problem. That said, I've had it happen with I was the only person in a session, so a second user's involvement doesn't seem to be a requirement.

jae1911 commented 1 month ago

I also experience this bug every now and then.

One thing I've noticed is that it usually appears after people fiddle with timeline on the bottom (see pic, I don't know how it's really called). Sometimes, changing it can cause this issue.

(highlighted in red) Resonite_LkG2U7OaZM

FlameSoulis commented 1 month ago

In my case, the fiddling of the timeline makes it worse when it starts. Otherwise, my occurrences have all happened without any interaction needed.

I am glad to hear that I'm not the only one with this issue.

shiftyscales commented 1 month ago

I see- it's probably not likely that there'd be much we could / would do with this issue at this time, then. It'd probably be something good to check in on / keep an eye on following the libVLC update #1476.