User Tools

Site Tools


general:firefox

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
general:firefox [2020/11/27 11:28] sunkangeneral:firefox [2022/02/05 07:39] (current) sunkan
Line 6: Line 6:
 ====== HW video decoding using VAAPI ====== ====== HW video decoding using VAAPI ======
  
 +===== Update 2022-02-05 =====
 +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.
 <code> <code>
-MOZ_X11_EGL=1 firefox+gfx.x11-egl.force-enabled true 
 +media.ffmpeg.vaapi.enabled true 
 +</code> 
 + 
 +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 
 +[[https://www.youtube.com/playlist?list=PLyqf6gJt7KuHBmeVzZteZUlNUQAVLwrZS|AV1 Beta playlist]] 
 +<code> 
 +media.av1.enabled = false 
 +</code> 
 + 
 +vainfo from AMD Ryzen 7 5700G with Radeon Graphics 
 +<code> 
 +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 
 +</code> 
 + 
 +==== To check if HW decoding is active ==== 
 +On newer AMD 
 +<code> 
 +while true; do cat /sys/kernel/debug/dri/0/amdgpu_pm_info | grep ^VCN; sleep 1; done 
 +</code> 
 + 
 +On Intel - check for Video engine activity 
 +<code> 
 +intel_gpu_top 
 +</code> 
 + 
 +===== Old information ===== 
 + 
 +https://bugzilla.mozilla.org/show_bug.cgi?id=1683808 
 +https://bugzilla.mozilla.org/show_bug.cgi?id=1610199 
 + 
 + 
 +<code> 
 +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.ffmpeg.vaapi.enabled = true
 media.ffvpx.enabled = false media.ffvpx.enabled = false
 gfx.webrender.enabled = true 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' 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"
 +
 +</code>
 +
 +===== Checking if HW decoder is active =====
 +==== AMD ====
 +Check if "uvd" is enabled. UVD stands for Unified Video Decoder
 +<code>
 +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'
 </code> </code>
  
Line 86: Line 166:
 === Tested workaround (as in turning off acceleration) === === Tested workaround (as in turning off acceleration) ===
 media.ffvpx.enabled = true media.ffvpx.enabled = true
 +
 +====== Using Telavox web based SIP phone with FF ======
 +===== Need to spoof the user-agent to include "Chrome" =====
 +
 +Install [[https://addons.mozilla.org/en-US/firefox/addon/user-agent-string-switcher/|User-Agent switcher]] \\
 +
 +Then add this to the "Custom Mode" configuration
 +
 +<code ecmascript>
 +{
 +  "app.telavox.com": "${userAgent} Chrome"
 +}
 +</code>
 +
 +===== Now you also need to manually enable accepting calls =====
 +This is due to [[https://stackoverflow.com/questions/59131286/how-to-check-if-the-permission-to-access-microphone-has-been-rejected-by-the-use|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.
general/firefox.1606476488.txt.gz · Last modified: 2020/11/27 11:28 by sunkan

Donate Powered by PHP Valid HTML5 Valid CSS Run on Debian Driven by DokuWiki