As of now it seems that it is working with RDD enabled (tested with Firefox 96.0.3)
Only these two options need to be set on my AMD machine to enable it.
gfx.x11-egl.force-enabled true media.ffmpeg.vaapi.enabled true
If needed disable av1/av01 codec if there is no HW decode support (YouTube may use this with 1080p otherwise) This can of course affect media at other sites. Note that av1/av01 is NOT the same as avc1 AV1 Beta playlist
media.av1.enabled = false
vainfo from AMD Ryzen 7 5700G with Radeon Graphics
vainfo: VA-API version: 1.10 (libva 2.10.0) vainfo: Driver version: Mesa Gallium driver 20.3.5 for AMD RENOIR (DRM 3.40.0, 5.10.0-11-amd64, LLVM 11.0.1) vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileVC1Simple : VAEntrypointVLD VAProfileVC1Main : VAEntrypointVLD VAProfileVC1Advanced : VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSlice VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSlice VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointEncSlice VAProfileHEVCMain10 : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointEncSlice VAProfileJPEGBaseline : VAEntrypointVLD VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointVLD VAProfileNone : VAEntrypointVideoProc
On newer AMD
while true; do cat /sys/kernel/debug/dri/0/amdgpu_pm_info | grep ^VCN; sleep 1; done
On Intel - check for Video engine activity
intel_gpu_top
https://bugzilla.mozilla.org/show_bug.cgi?id=1683808 https://bugzilla.mozilla.org/show_bug.cgi?id=1610199
MOZ_X11_EGL=1 firefox # Not needed anymore as there is option gfx.x11-egl.force-enabled gfx.x11-egl.force-enabled = true media.ffmpeg.vaapi.enabled = true media.ffvpx.enabled = false gfx.webrender.enabled = true Possibly disable use of av1/av01 (YouTube uses this with 1080p otherwise) media.av1.enabled = false There are now also new settings for separate rendering process (RDD) Have not fully understood yet what needs to be set. MOZ_X11_EGL=1 MOZ_LOG="PlatformDecoderModule:5" firefox 2>&1 | grep 'VA-API' To get better log why VAAPI is disabled run Firefox with: MOZ_LOG="Dmabuf:5, PlatformDecoderModule:5"
Check if “uvd” is enabled. UVD stands for Unified Video Decoder
watch -n '0.1' cat '/sys/kernel/debug/dri/0/radeon_pm_info' or watch -n '0.1' cat '/sys/kernel/debug/dri/0/amdgpu_pm_info'
When a screen is shared from remote end only a black screen is shown.
Log output from:
MOZ_X11_EGL=1 MOZ_LOG="PlatformDecoderModule:5" firefox
[Child 145: Unnamed thread 0x7f899b1e8940]: D/PlatformDecoderModule Sandbox decoder rejects requested type [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule Initialising VA-API FFmpeg decoder libva info: VA-API version 1.4.0 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so libva info: Found init function __vaDriverInit_1_4 libva info: va_openDriver() returns 0 [AVHWDeviceContext @ 0x7f899adbf440] Format 0x3231564e -> nv12. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x30313050 -> p010le. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x36313050 -> unknown. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x32315659 -> yuv420p. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x56595559 -> unknown. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x59565955 -> uyvy422. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x41524742 -> bgra. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x41424752 -> rgba. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x58524742 -> bgr0. [AVHWDeviceContext @ 0x7f899adbf440] Format 0x58424752 -> rgb0. [AVHWDeviceContext @ 0x7f899adbf440] VAAPI driver: Mesa Gallium driver 18.3.6 for AMD KAVERI (DRM 2.50.0, 4.19.0-12-amd64, LLVM 7.0.1). [AVHWDeviceContext @ 0x7f899adbf440] Driver not found in known nonstandard list, using standard behaviour. [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule VA-API FFmpeg init successful [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule Choosing FFmpeg pixel format for VA-API video decoding. [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule Requesting pixel format VAAPI_VLD [vp8 @ 0x7f899a96c800] Format vaapi_vld chosen by get_format(). [vp8 @ 0x7f899a96c800] Format vaapi_vld requires hwaccel initialisation. [vp8 @ 0x7f899a96c800] No support for codec vp8 profile -99. [vp8 @ 0x7f899a96c800] Failed setup for format vaapi_vld: hwaccel initialisation returned error. [vp8 @ 0x7f899a96c800] Format vaapi_vld not usable, retrying get_format() without it. [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule Choosing FFmpeg pixel format for VA-API video decoding. [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule avcodec_send_packet error: -22 [Child 145: Unnamed thread 0x7f899b1e8940]: D/PlatformDecoderModule Sandbox decoder rejects requested type [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule Initialising VA-API FFmpeg decoder libva info: VA-API version 1.4.0 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so libva info: Found init function __vaDriverInit_1_4 libva info: va_openDriver() returns 0 [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x3231564e -> nv12. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x30313050 -> p010le. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x36313050 -> unknown. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x32315659 -> yuv420p. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x56595559 -> unknown. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x59565955 -> uyvy422. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x41524742 -> bgra. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x41424752 -> rgba. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x58524742 -> bgr0. [AVHWDeviceContext @ 0x7f8999cc3ec0] Format 0x58424752 -> rgb0. [AVHWDeviceContext @ 0x7f8999cc3ec0] VAAPI driver: Mesa Gallium driver 18.3.6 for AMD KAVERI (DRM 2.50.0, 4.19.0-12-amd64, LLVM 7.0.1). [AVHWDeviceContext @ 0x7f8999cc3ec0] Driver not found in known nonstandard list, using standard behaviour. [Child 145: MediaPDecoder #1]: D/PlatformDecoderModule VA-API FFmpeg init successful [Child 145: MediaPDecoder #3]: D/PlatformDecoderModule Choosing FFmpeg pixel format for VA-API video decoding. [Child 145: MediaPDecoder #3]: D/PlatformDecoderModule Requesting pixel format VAAPI_VLD [vp8 @ 0x7f8999df7000] Format vaapi_vld chosen by get_format(). [vp8 @ 0x7f8999df7000] Format vaapi_vld requires hwaccel initialisation. [vp8 @ 0x7f8999df7000] No support for codec vp8 profile -99. [etc]...
media.ffvpx.enabled = true
Install User-Agent switcher
Then add this to the “Custom Mode” configuration
{ "app.telavox.com": "${userAgent} Chrome" }
This is due to microphone permisssion not queryable
First make sure that you have allowed persistent access to microphone.
Then add the value registerSoftphone:“true” to the “Local Storage” for https://app.telavox.com
If you then go to “Settings | Phone and audio” you should see that “Receive incoming calls” is now enabled.