Godot version:
3.0.2 stable
OS/device including version:
ubuntu 16.04 LTS
Issue description:
What happened:
When playing back some VP9 encoded Webm videos in a VideoPlayer node, video playback freezes. This happens with videos that are CPU intense, in my case 60 fps videos at 1280x720* pixel resolution. At first video playback runs perfectly smooth, then just freezes. This makes it seem like the decoder crashed due to a skipped frame. Trying to restart playback with $VideoPlayer.stop() and $VideoPlayer.play() doesn't work.
What was expected:
When video decoding lags behind, the decoder should skip frames and re-synchronize with the audio.
Steps to reproduce:
a)
b)
Minimal reproduction project:
Uploaded externally, due to big size (26.7 MB): https://drive.google.com/open?id=1dcYsdgCLLRkb1YR0x9QyNGtDX0jTbyvu
While this is a bug, do note that you could use the older VP8 codec to decrease CPU usage.
@Calinou Thanks for the quick reply! I tried using VP8, but it's performance was actually worse than VP9. It lagged a lot and playback also froze after a while. From observing the task in the system monitor, it seems like VP8 doesn't use multi threading, which could explain the bad performance.
I can confirm this bug. My workaround for now is to use Theora (ogv) videos, which don't seem to suffer from this issue.
I have only black screen.
It stuck in swap_buffers like in #33472
I can confirm the black screen with 3.2 stable on Kubuntu 18.04. Sound plays, the stream_position value increases as expected, and I can control the playback, but the video output always stays black.
@qarmin @Takuyax still no fix for black screen with 3.2 stable!!
did you guys find any workaround for this issue?
@qarmin @Takuyax still no fix for black screen with 3.2 stable!!
did you guys find any workaround for this issue?
Silent video playback works for me since version 3.2.1, after this fix: https://github.com/godotengine/godot/pull/35993
However the problem still occurs for me in 3.2.1 if the video has an audio track. I haven't tried the 3.2.2. beta yet.
Most helpful comment
I can confirm this bug. My workaround for now is to use Theora (ogv) videos, which don't seem to suffer from this issue.