flathub / io.freetubeapp.FreeTube

https://flathub.org/apps/details/io.freetubeapp.FreeTube
15 stars 10 forks source link

Stuttering playback when using video acceleration on XWayland #85

Closed loveisfoss closed 9 months ago

loveisfoss commented 1 year ago

I decided lately to try using video acceleration with Freetube.

I have tried this in two devices running Fedora 37 (Gnome) and experienced exact the same behavior.

In an X11 session

I managed to make video acceleration work (both with the flatpak and the rpm version of FreeTube) with the following command and everything worked fine. flatpak run io.freetubeapp.FreeTube --disable-features=UseChromeOSDirectVideoDecoder --use-gl=egl

In a Wayland session

Freetube defaults to using XWayland. I managed to make video acceleration work with the previous command but the video playback is stuttering when video acceleration is turned on.

The catch

When using the rpm provided at the FreeTube website, the above issue does not happen. Video acceleration works on a Wayland session, by using XWayland, and the video is smooth and nice.

So, my question is: Could there exist some limitation when it comes to hardware acceleration when using Freetube in XWayland with flatpak?

Note: I managed to run FreeTube using Wayland (not XWayland) with the following command but was never able to make video acceleration work (neither with the flatpak nor with the rpm version). flatpak run --nosocket=x11 --socket=fallback-x11 --socket=wayland io.freetubeapp.FreeTube --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland --disable-features=UseChromeOSDirectVideoDecoder --use-gl=egl

Note2: I check if video acceleration is up and running by using the intel_gpu_top command. One can also get an indication about gpu usage with the radeontop command.

JoshuaMacklin commented 1 year ago

Hello loveisfoss, would love to see if my PR fixed your issue on your end, its working for me :)

loveisfoss commented 1 year ago

Hey @JoshuaMacklin

Thanks for this PR! FreeTube defaults to Wayland with it and video playback is smooth. However, as I had mentioned in my issue report, video acceleration does not work when FreeTube runs on Wayland, even if the flags --use-gl=egl --disable-features=UseChromeOSDirectVideoDecoder are set.

I am not so surprised though, as I have understood that even Google Chrome doesn't support video acceleration on Wayland.

On a side note, video acceleration on XWayland has been working fine for some months now! :)

absidue commented 1 year ago

@loveisfoss If video acceleration doesn't work in Chrome, it won't work in FreeTube either, as FreeTube use Electron which is built on top of Chromium.

loveisfoss commented 9 months ago

It seems like this issue has been fixed at some point. No more stuttering for hardware aceclerated video playback on XWayland.