(In reply to Tim Richardson from comment #9) > Hi. The only way to get hardware decoding in Firefox currently under Wayland is to do this: pref("media.rdd-process.enabled", false); This is not quite correct and I'll clarify it here. Firefox uses two VAAPI video decoders on Linux - ffvpx and ffmpeg. - ffvpx is Firefox build-in decoder (based on ffmpeg project) which can decode VP8 and VP9. It can use VAAPI when media.ffmpeg.vaapi.enabled is set. It's run by default in RDD process where VAAPI is blocked by sandbox. RDD can be disabled by 'media.rdd-ffvpx.enabled' pref value. - ffmpeg is external (system wide) decoder and it's supposed to decode H.264, VP8 and VP9 (AV1 is decoded by DAV1DDecoder). It can use VAAPI when media.ffmpeg.vaapi.enabled is set. It's run by default in content process where VAAPI is allowed by sandbox. RDD can be enabled by media.rdd-ffmpeg.enabled pref value which is off by default. Decoder pickup sequence is ffvpx first and then ffmpeg, so when you open VP8 and VP9 (which is suported by), ffvpx is selected. When media.ffmpeg.vaapi.enabled is set we try to open VAAPI but it fails so SW decoder is used. Short term solution is to disable ffvpx and use ffmpeg only, set 'media.ffvpx.enabled' to false and restart browser. Long term solution is to move both ffvpx and ffmpeg to GPU process where GPU access is enabled. As for RDD, it's highly restricted process which is used for third party decoders and should not be generally disabled. When you set 'media.rdd-process.enabled' to false all SW video decoders are running in content process without restrictions.
Bug 1683808 Comment 10 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
(In reply to Tim Richardson from comment #9) > Hi. The only way to get hardware decoding in Firefox currently under Wayland is to do this: pref("media.rdd-process.enabled", false); This is not quite correct and I'll clarify it here. Firefox uses two VAAPI video decoders on Linux - ffvpx and ffmpeg. - ffvpx is Firefox build-in decoder (based on ffmpeg project) which can decode VP8 and VP9. It can use VAAPI when media.ffmpeg.vaapi.enabled is set. It's run by default in RDD process where VAAPI is blocked by sandbox. RDD can be disabled by 'media.rdd-ffvpx.enabled' pref value. - ffmpeg is external (system wide) decoder and it's supposed to decode H.264, VP8 and VP9 (AV1 is decoded by DAV1DDecoder). It can use VAAPI when media.ffmpeg.vaapi.enabled is set. It's run by default in content process where VAAPI is allowed by sandbox. RDD can be enabled by media.rdd-ffmpeg.enabled pref value which is off by default. Decoder pickup sequence is ffvpx first and then ffmpeg, so when you open VP8 and VP9 (which is suported by ffvpx), ffvpx is selected. When media.ffmpeg.vaapi.enabled is set we try to open VAAPI but it fails so SW decoder is used. Short term solution is to disable ffvpx and use ffmpeg only, set 'media.ffvpx.enabled' to false and restart browser. Long term solution is to move both ffvpx and ffmpeg to GPU process where GPU access is enabled. As for RDD, it's highly restricted process which is used for third party decoders and should not be generally disabled. When you set 'media.rdd-process.enabled' to false all SW video decoders are running in content process without restrictions.