xuanruiqi / vdpau-va-driver-vp9

Experimental VP9 codec support for vdpau-va-driver (NVIDIA VDPAU-VAAPI wrapper) and chromium-vaapi
GNU General Public License v2.0
16 stars 3 forks source link

Chromium 98 Seems to Introduce Some Breaking Change #5

Closed gardotd426 closed 2 years ago

gardotd426 commented 2 years ago

Since this fork began, I've had perfectly working VP9 decode in every VP9 video I've played inside Chromium, Brave, or Chrome. It's never failed to work. Chromium updated to version 98 today, and now even though it shows that I have hardware acceleration and support for VP9 in chrome://gpu, it now refuses to work. Chrome and Brave, which haven't moved to 98 yet (but will in the next day or so I imagine) still work perfectly with VP9 video decoding.

I'm not sure what exactly changed, I imagine it's something small, there are no errors in the terminal when trying to play a YT video (like there used to be on the original project before you forked it), there are no errors in the log messages on chrome://gpu.

And I believe I've at least found a lead. On Chromium 97, and current Chrome and Brave, the "Video Acceleration Information" section in chrome://gpu shows this:

Screenshot_20220203_194724

Note that it's got both Decoding (VideoDecoder) and Decoding (Legacy VideoDecodeAccelerator).

Now look at Chromium 98:

Screenshot_20220203_195043

It only has the Legacy section.

So now with Chromium 98, VP9 videos don't just fail to play or anything (like they did before you forked the project), but they just don't use the GPU, GPU accelerated video decode fails somehow, and use the CPU instead.

insilications commented 2 years ago

--disable-features=UseChromeOSDirectVideoDecoder as mentioned here https://bugs.chromium.org/p/chromium/issues/detail?id=1236697&sort=-modified&q=Vaapi&can=1 seems to fix...

xuanruiqi commented 2 years ago

Same, --disable-features=UseChromeOSDirectVideoDecoder.

gardotd426 commented 2 years ago

yeah, I found that out a while ago, and somehow forgot to close this.

Adding --disable-features=UseChromeOSDirectVideoDecoder to your flags is the solution.