BrowserWorks / Waterfox

The official Waterfox 💧 source code repository
https://www.waterfox.net
Other
3.9k stars 343 forks source link

Youtube 4k quality option not showing up with Waterfox #706

Closed Kherby closed 3 years ago

Kherby commented 6 years ago

I'm using Waterfox 56.2.2 64-bit on my Win 10 machine. I really like the performance compared to my old Firefox ESR 52.x but for some reason there is no more Youtube 4K content showing up ? 1080p is the highest option i can choose...

Is there any way to fix this or is Waterfox simply not compatible with youtube 4k contents ?

Kherby commented 6 years ago

Nvm, i've fixed it... media.mediasource.webm.enabled was set to false, setting it to true did the trick and now the 4k quality option is showing up!

jbeich commented 6 years ago

Waterfox won't offer 4K on YouTube if VP9 decoding is slower than H.264, see https://github.com/MrAlex94/Waterfox/blob/715e79f8f87e9f96e4a26f92ee02c8aec0c3b4e6/dom/media/mediasource/MediaSource.cpp#L86 Windows has VP9 acceleration since 788c9353ccb7, so it shouldn't happen unless your GPU is blacklisted, media.benchmark.vp9.fps is out of date, etc.

Kherby commented 6 years ago

Sorry but i dont understand this at all... my gpu is Intel HD620. media.benchmark.vp9.fps 143 After setting media.mediasource.webm.enabled > true 4k is showing up and working fine. (vp9 (313) / opus (251) Maybe my config is messed up from using Firefox ESR 52 before... I've imported bookmarks, settings aso after the first start of Waterfox... Could this be the problem?

jbeich commented 6 years ago

media.benchmark.vp9.fps=143

What's the value in Firefox? Waterfox disables WebM for media.mediasource.webm.enabled=false because of media.benchmark.vp9.threshold=150.

Note, in Firefox ESR52 VP9 hardware decoding is disabled by default. I wonder how it affects the benchmark. https://github.com/mozilla/gecko-dev/blob/esr52/modules/libpref/init/all.js#L356

Kherby commented 6 years ago

media.benchmark.vp9.fps=156 in FF ESR52 media.mediasource.webm.enabled=false is standart in FF ESR52 media.wmf.vp9.enabled=true is standard in Waterfox 56.2.2 and false in FF ESR52.

It is realy weird. Is there a safe way to load the default config/settings for Waterfox without deleting my Bookmarks, Passwords aso ? I find it kinda strange that 4k playback (vp9) on youtube isn't supported with the default config... I dont need Firefox ESR52 anymore but i haven't uninstalled it yet because i first wanted to make sure that Waterfox is running fine.

Btw, Firefox ESR52 was causing a CPU load of ~66% with youtube @4k while Waterfox and ungoogled Chromium is only showing a CPU load of ~13% at the same 4k video (i guess because of media.wmf.vp9.enabled=false)!! CPU: i5 7200U (the cpu is undervolted (Core voltage offset -0,090v) so it holds the 3.1GHz Turbo boost all the time) Driver Intel HD620: 23.20.16.4973 (undervolted -0,080v) OS: Win 10 x64, 1803

Oh and another thing i noticed is that Watferfox doesn't show any statistik for dropped frames at youtube 4k (right click > statistics for nerds). edit: https://imgur.com/e6rhwe2

I think that my config is somehow screwed up... :/

Kherby commented 6 years ago

So i did a backup of my passwords and bookmarks and uninstalled firefox ESR52 and also deleted the profiles in AppData. Then i uninstalled Waterfox and also deleted profiles and reinstalled it...

Now youtube 4k option is showing out of the box my the high CPU load is back, ~70% when watching a 4k video at youtube!! :/

How can i fix this ?

media.wmf.vp9.enabled;true
media.benchmark.vp9.threshold;150
media.mediasource.webm.enabled;true (changed this)

I really don't understand this why the high CPU load is back again... It's so freaking weird! Please help me, i want to use Waterfox as my main browser and watch 4k youtube without having my CPU running at 70%...

edit: It seems that GPU0 - Video Decode isn't used anymore and that's why the cpu load is so high once again... For example chromium is using GP0 - Video Decode when watching 4k at youtube. It was working fine with Waterfox before, i don't understand why its not used anymore with a fresh install and profile! How can i tell Watferfox to use GPU Video Decode again?

Kherby commented 6 years ago

Okay so it seems that media.hardware-video-decoding.failed=true is responsible for the high CPU load! I wonder why it is set to true on a fresh install? I've set it to false and high CPU load is gone... My GPU does support hardware-video-decoding so why was it set to true and why it didn't happen with my last installation (same version)? Imho there is clearly something wrong with the detection...

grahamperrin commented 6 years ago

For what it's worth,

about:config?filter=media.hardware-video-decoding.failed

… undervolted …

Is the issue reproducible without under-volting?

… something wrong with the detection …

Troubleshooting information, please. Use the Copy text to clipboard button at about:support

… Is there a safe way to load the default config/settings for Waterfox without deleting my Bookmarks, Passwords aso ? …

about:support ▶ Try safe mode

Kherby commented 6 years ago

I've tried everything without undervolting and it was the same. The high ram usage also returned today with only 3 active tabs... (https://github.com/MrAlex94/Waterfox/issues/711) I'm think that i'll give up on Waterfox for now as i don't know how to debug these kind of problems and i need a "stable" browser for my daily usage that works fine out of the box.

Application Basics

Name: Waterfox Version: 56.2.2 Build ID: 20180712180347 Update Channel: release User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 OS: Windows_NT 10.0 Multiprocess Windows: 1/1 (Enabled by user) Web Content Processes: 2/1 Stylo: false (disabled by default) Google Key: Missing Mozilla Location Service Key: Missing Safe Mode: false

Waterfox Features

Extensions

Name: CanvasBlocker Version: 0.5.2b Enabled: true ID: CanvasBlocker@kkapsner.de

Name: Cookie Controller Version: 6.1 Enabled: true ID: {ac2cfa60-bc96-11e0-962b-0800200c9a66}

Name: Disable WebRTC Version: 1.0.20 Enabled: true ID: jid1-5Fs7iTLscUaZBgwr@jetpack

Name: Enhancer for YouTube™ Version: 2.0.73 Enabled: true ID: enhancerforyoutube@maximerf.addons.mozilla.org

Name: Google Translator with Right Click Version: 2.1.6 Enabled: true ID: {b384b75c-c978-4c4d-b3cf-62a82d8f8f12}

Name: HTTPS Everywhere Version: 2018.6.21 Enabled: true ID: https-everywhere-eff@eff.org

Name: NoScript Version: 5.1.8.4 Enabled: true ID: {73a6fe31-595d-460b-a920-fcc0f8843232}

Name: Page Translate Version: 1.6 Enabled: true ID: {087ef4e1-4286-4be6-9aa3-8d6c420ee1db}

Name: Password Exporter Version: 1.3.4 Enabled: true ID: {B17C1C5A-04B1-11DB-9804-B622A1EF5492}

Name: uBlock Origin Version: 1.16.14 Enabled: true ID: uBlock0@raymondhill.net

Graphics

Features Compositing: Direct3D 11 Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled WebGL 1 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 000000000000b232) EGL_VERSION: 1.4 (ANGLE 2.1.0.dec065540d5f) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses WebGL 1 Driver Renderer: Google Inc. -- ANGLE (Intel(R) HD Graphics 620 Direct3D11 vs_5_0 ps_5_0) WebGL 1 Driver Version: OpenGL ES 2.0 (ANGLE 2.1.0.dec065540d5f) WebGL 1 Driver Extensions: GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc MOZ_WEBGL_depth_texture WebGL 2 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 000000000000b232) EGL_VERSION: 1.4 (ANGLE 2.1.0.dec065540d5f) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses WebGL 2 Driver Renderer: Google Inc. -- ANGLE (Intel(R) HD Graphics 620 Direct3D11 vs_5_0 ps_5_0) WebGL 2 Driver Version: OpenGL ES 3.0 (ANGLE 2.1.0.dec065540d5f) WebGL 2 Driver Extensions: GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_norm16 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3 GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object WebGL 2 Extensions: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc Direct2D: true DirectWrite: true (10.0.17134.1) GPU #1 Active: Yes Description: Intel(R) HD Graphics 620 Vendor ID: 0x8086 Device ID: 0x5916 Driver Version: 24.20.100.6194 Driver Date: 6-20-2018 Drivers: igdumdim64 igd10iumd64 igd10iumd64 igd12umd64 igdumdim32 igd10iumd32 igd10iumd32 igd12umd32 Subsys ID: 16501043 RAM: Unknown GPU #2 Active: No Description: NVIDIA GeForce 940MX Vendor ID: 0x10de Device ID: 0x134d Driver Version: 24.21.13.9836 Driver Date: 6-24-2018 Drivers: C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumdx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nvami.inf_amd64_04684a8a250a4a2e\nvldumd.dll Subsys ID: 16501043 RAM: 4096 Diagnostics ClearType Parameters: Gamma: 2,2 Pixel Structure: RGB ClearType Level: 50 Enhanced Contrast: 0 AzureCanvasAccelerated: 0 AzureCanvasBackend: Direct2D 1.1 AzureCanvasBackend (UI Process): skia AzureContentBackend: Direct2D 1.1 AzureContentBackend (UI Process): skia AzureFallbackCanvasBackend (UI Process): cairo GPUProcessPid: 3652 ClearType Parameters: Gamma: 2,2 Pixel Structure: RGB ClearType Level: 50 Enhanced Contrast: 0 Decision Log WEBRENDER: opt-in by default: WebRender is an opt-in feature unavailable by runtime: Build doesn't include WebRender ADVANCED_LAYERS: disabled by default: Disabled by default

Media

Audio Backend: wasapi Max Channels: 2 Preferred Channel Layout: stereo Preferred Sample Rate: 48000 Output Devices Name: Group : Digitalaudio (HDMI) (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_8086&DEV_280B&SUBSYS_80860101&REV_1000\4&40278eb&0&0201 Lautsprecher (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 Kopfhörer (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 Lautsprecher (Realtek High Definition Audio): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 Input Devices Name: Group Mikrofon (Realtek High Definition Audio): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 Interne AUX-Buchse (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 Interne AUX-Buchse (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_8086&DEV_280B&SUBSYS_80860101&REV_1000\4&40278eb&0&0201 Stereomix (Realtek High Definition Audio): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001 : Mikrofon (High Definition Audio-Gerät): HDAUDIO\FUNC_01&VEN_10EC&DEV_0255&SUBSYS_10431650&REV_1000\4&40278eb&0&0001

Important Modified Preferences

accessibility.typeaheadfind.flashBar: 0 browser.cache.disk.capacity: 358400 browser.cache.disk.filesystem_reported: 1 browser.cache.disk.smart_size.first_run: false browser.cache.disk.smart_size.use_old_max: false browser.cache.frecency_experiment: 1 browser.download.useDownloadDir: false browser.places.smartBookmarksVersion: 8 browser.sessionstore.upgradeBackup.latestBuildID: 20180712180347 browser.startup.homepage_override.buildID: 20180712180347 browser.startup.homepage_override.mstone: 56.2.2 browser.urlbar.lastSuggestionsPromptDate: 20180730 browser.urlbar.timesBeforeHidingSuggestionsHint: 0 extensions.lastAppVersion: 56.2.2 general.useragent.locale: en-US layers.mlgpu.sanity-test-failed: false media.gmp-gmpopenh264.abi: x86_64-msvc-x64 media.gmp-gmpopenh264.lastUpdate: 1532961852 media.gmp-gmpopenh264.version: 1.7.1 media.gmp-manager.buildID: 20180712180347 media.gmp-manager.lastCheck: 1533759787 media.gmp.storage.version.observed: 1 media.hardware-video-decoding.failed: false media.mediasource.webm.enabled: true media.peerconnection.enabled: false media.peerconnection.ice.proxy_only: true media.video_stats.enabled: true network.cookie.cookieBehavior: 2 network.cookie.prefsMigrated: true network.dns.disablePrefetch: true network.http.speculative-parallel-limit: 0 network.predictor.cleaned-up: true network.predictor.enabled: false network.prefetch-next: false places.database.lastMaintenance: 1533594267 places.history.expiration.transient_current_max_pages: 72734 plugin.disable_full_page_plugin_for_types: application/pdf privacy.cpd.downloads: false privacy.cpd.history: false privacy.history.custom: true privacy.sanitize.timeSpan: 0 security.sandbox.content.tempDirSuffix: {5f4caf75-1bc3-4050-9080-da9a07dc3e93} services.sync.declinedEngines: storage.vacuum.last.index: 1 storage.vacuum.last.places.sqlite: 1532969777 ui.osk.debug.keyboardDisplayReason: IKPOS: Touch screen not found.

Important Locked Preferences

Places Database

JavaScript

Incremental GC: true

Accessibility

Activated: false Prevent Accessibility: 0 Accessible Handler Used: true

Library Versions

NSPR Expected minimum version: 4.16 Version in use: 4.16

NSS Expected minimum version: 3.32.1 Version in use: 3.32.1

NSSSMIME Expected minimum version: 3.32.1 Version in use: 3.32.1

NSSSSL Expected minimum version: 3.32.1 Version in use: 3.32.1

NSSUTIL Expected minimum version: 3.32.1 Version in use: 3.32.1

Experimental Features

Sandbox

Content Process Sandbox Level: 1 Effective Content Process Sandbox Level: 1

grahamperrin commented 5 years ago

imgur.com/e6rhwe2

In the screenshot:

grahamperrin commented 5 years ago

Cross reference: https://www.reddit.com/r/waterfox/comments/deuzev/-/f31pz23/?context=1 under a post for Waterfox 68.0b1.

Can anyone with 4k capability tell whether this issue is reproducible with Waterfox Current?