Hardware acceleration is not working properly
-
Hi all. I’m using 3 chromium based browsers Vivaldi, Chrome and Edge on an Thinkpad laptop with a Intel HD Graphics (Intel Pentium B950) on Windows 10 Pro.
Chrome and Vivaldi have their GPU Acceleration not working but vivaldi://gpu Graphics Feature Status shows "Video Decode:Hardware accelerated"
When playing videos on Youtube or Twitch, the CPU is loaded up to 100%. In vivaldi://media-internals shows the use of "WMFVideoDecoder" decoder.
If play video in Edge, browser uses the "VDAVideoDecoder" decoder and the CPU utilization does not exceed 50%.
How to force Vivaldi to use decoder "VDAVideoDecoder" like in Edge?
-
@hiptop Hello and Welcome to the Vivaldi Community
Video decode issues are notoriously tricky to troubleshoot as all systems are different. But at least you've provided some information. I'm not sure what "VDAVideoDecoder" is though. My initial suspicion would be you don't have D3D11/12 installed? I.e. not updated your system D3D drivers and still running D3D9. The log from Edge also seems to indicate the same ("Using D3D9 device...")
On my system (Also Windows 10 x64) I get D3D11VideoDecoder:
00:00:00.952 kVideoDecoderName "D3D11VideoDecoder" 00:00:00.952 info "Selected D3D11VideoDecoder for video decoding, config: codec: vp9, profile: vp9 profile0, level: not available, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}"
Note that I'm not sure about the specifics here - on older systems with Intel GPU cards, it's possible D3D11/12 is simply not supported. Usually Direct3D is updated along with the system during Windows Update with DirectX, but it can be installed from here:
https://support.microsoft.com/en-gb/topic/how-to-install-the-latest-version-of-directx-d1f5ffa5-dae2-246c-91b1-ee1e973ed8c2
(EDIT: looks like there's no standalone installer, you have to use Windows Update...)Try using Dxdiag to check your DirectX version:
https://support.microsoft.com/en-us/windows/checking-your-version-of-directx-7b71e74f-02e8-456f-72c7-9a1c1bbf0e9a -
@Pathduck said in Hardware acceleration is not working properly:
Try using Dxdiag to check your DirectX version:
https://support.microsoft.com/en-us/windows/checking-your-version-of-directx-7b71e74f-02e8-456f-72c7-9a1c1bbf0e9adxdiag shows that my version of DirectX 12.
If run Edge with the --use-angle=D3D11 argument, it will still use the VDA decoder. It doesn't seem to matter.
-
@hiptop I have no idea then. I guess this "WMFVideDecoder" is a software decoder.
What is your Vivaldi version?
Do you get the same results in Chrome?
Do you have a specific video on YT you test with? Codecs vary from video to video.Please try the troubleshooting steps, including testing in a clean profile and disabling adblocking/extensions:
https://help.vivaldi.com/desktop/troubleshoot/troubleshooting-issues/ -
I have the same issue on an old intel GPU (it is 1st gen Intel HD Graphics in core i5-450m). Can't wrap my head around what's going on. I've also tried latest vivaldi snapshot (3105.4, with a clean user profile), vivaldi 5.6, chromium 116 and chrome 116 — all with the same result of WMFVideoDecoder selected as a decoder, which is software decoder.
I have also tried using Edge, where HW acceleration works as expected (VdaVideoDecoder selected). And also I have tried Firefox to check if there are maybe some proprietary libraries Microsoft used to make this work exclusively in Edge, but HW decode also works for h264 in Firefox.
My OS is x64 Windows 10 22H2, with the latest Intel driver available being 8.15.10.2900. I use enhanced-h264ify extension to force h264 on YouTube. I have D3D9 selected for ANGLE backend, same as in Edge browser (both by default or forced with a flag). Also tried to force D3D11 — same result.
I have another old system with AMD graphics (although it supports D3D11), where I've tested vivaldi 5.6 (it's the latest for windows 7 installed there), and the only thing to do to make HW acceleration work was to enable #ignore-gpu-blocklist flag. On my machine this workaround didn't help
One significant difference I found between Edge and Vivaldi in GPU Internals page is Video Acceleration Information section is empty in Vivaldi, while it shows supported profiles in Edge
vivaldi://about
Vivaldi 6.1.3035.302 (Stable channel) (64-bit) Revision 773772e7e92bf14ad0c8f85f41e3d133d0a2b876 OS Windows 10 Version 22H2 (Build 19045.3324) JavaScript V8 11.4.183.29 User Agent Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Command Line "C:\Users\egor\AppData\Local\Vivaldi\Application\vivaldi.exe" --flag-switches-begin --enable-smooth-scrolling --use-angle=d3d9 --enable-features=UseXpsForPrintingFromPdf,WindowsScrollingPersonality --disable-features=DesktopPartialTranslate --flag-switches-end --origin-trial-disabled-features=WebGPU --save-page-as-mhtml
vivaldi://gpu
Graphics Feature Status Canvas: Hardware accelerated Canvas out-of-process rasterization: Disabled Direct Rendering Display Compositor: Disabled Compositing: Hardware accelerated Multiple Raster Threads: Enabled OpenGL: Enabled Rasterization: Unavailable Raw Draw: Disabled Video Decode: Hardware accelerated Video Encode: Unavailable Vulkan: Disabled WebGL: Hardware accelerated WebGL2: Unavailable WebGPU: Hardware accelerated Driver Bug Workarounds clear_uniforms_before_first_program_use decode_encode_srgb_for_generatemipmap disable_accelerated_vp9_decode disable_accelerated_vp9_encode disable_d3d11 disable_decode_swap_chain disable_direct_composition_sw_video_overlays disable_dynamic_video_encode_framerate_update disable_imagebitmap_from_video_using_gpu disable_nv12_dynamic_textures disable_vp_super_resolution enable_bgra8_overlays_with_yuv_overlay_support enable_webgl_timer_query_extensions exit_on_context_lost max_msaa_sample_count_4 msaa_is_slow msaa_is_slow_2 disabled_extension_GL_KHR_blend_equation_advanced disabled_extension_GL_KHR_blend_equation_advanced_coherent Problems Detected GPU rasterization should only be enabled on NVIDIA and Intel and AMD RX-R2 GPUs with DX11+ or any GPU using ANGLE's GL backend.: 1047002 Disabled Features: gpu_rasterization Old Intel drivers cannot reliably support D3D11/WebGL2: 363721 Disabled Features: accelerated_webgl2 Disable hardware MFT video encoder on older Intel drivers: 1251071 Disabled Features: accelerated_video_encode Some drivers are unable to reset the D3D device in the GPU process sandbox Applied Workarounds: exit_on_context_lost Clear uniforms before first program use on all platforms: 124764, 349137 Applied Workarounds: clear_uniforms_before_first_program_use Old Intel drivers cannot reliably support D3D11: 363721 Applied Workarounds: disable_d3d11 On Intel GPUs MSAA performance is not acceptable for GPU rasterization: 527565, 1298585 Applied Workarounds: msaa_is_slow Disable KHR_blend_equation_advanced until cc shaders are updated: 661715 Applied Workarounds: disable(GL_KHR_blend_equation_advanced), disable(GL_KHR_blend_equation_advanced_coherent) Decode and Encode before generateMipmap for srgb format textures on Windows: 634519 Applied Workarounds: decode_encode_srgb_for_generatemipmap Accelerated VP9 decoding is hanging on some videos.: 654111 Applied Workarounds: disable_accelerated_vp9_decode Expose WebGL's disjoint_timer_query extensions on platforms with site isolation: 808744, 870491 Applied Workarounds: enable_webgl_timer_query_extensions Dynamic texture map crashes on Intel drivers less than version 24: 890227 Applied Workarounds: disable_nv12_dynamic_textures Disable using GPU backed resource for imageBitmap from video on d3d9: 1098445, 1105923 Applied Workarounds: disable_imagebitmap_from_video_using_gpu Disable DecodeSwapChain for Intel Gen9 and older devices: 1107403 Applied Workarounds: disable_decode_swap_chain Intel GPUs fail to report BGRA8 overlay support: 1119491 Applied Workarounds: enable_bgra8_overlays_with_yuv_overlay_support 8x MSAA for WebGL contexts is slow on Win Intel: 1145793 Applied Workarounds: max_msaa_sample_count_4 Disable software overlays for Intel GPUs. All Skylake+ devices support hw overlays, older devices peform poorly.: 1192748 Applied Workarounds: disable_direct_composition_sw_video_overlays AVC/AV1 hardware encoder MFT output bitrate incorrect upon framerate update on Intel GPUs.: 1295815 Applied Workarounds: disable_dynamic_video_encode_framerate_update Only enable video processor super resolution on Intel Gen10+ GPUs and NVIDIA GPUs with 530+ drivers: 1318380 Applied Workarounds: disable_vp_super_resolution On pre-Ice Lake Intel GPUs MSAA performance is not acceptable for GPU rasterization: 527565, 1298585, 1341830 Applied Workarounds: msaa_is_slow_2 Disable VP9 HW encode on Intel GPU with old drivers: 1433287 Applied Workarounds: disable_accelerated_vp9_encode Disable VP9 HW encode on Intel GPUs preceding Ice Lake: 1217298, 1107331 Applied Workarounds: disable_accelerated_vp9_encode ANGLE Features allowCompressedFormats (Frontend workarounds): Enabled: true Allow compressed formats cacheCompiledShader (Frontend features) anglebug:7036: Disabled Enable to cache compiled shaders disableAnisotropicFiltering (Frontend workarounds): Disabled Disable support for anisotropic filtering disableDrawBuffersIndexed (Frontend features) anglebug:7724: Disabled Disable support for OES_draw_buffers_indexed and EXT_draw_buffers_indexed disableProgramBinary (Frontend features) anglebug:5007: Disabled Disable support for GL_OES_get_program_binary disableProgramCaching (Frontend features) anglebug:1423136: Disabled Disables saving programs to the cache disableProgramCachingForTransformFeedback (Frontend workarounds): Disabled On some GPUs, program binaries don't contain transform feedback varyings dumpShaderSource (Frontend features) anglebug:7760: Disabled Write shader source to temp directory emulatePixelLocalStorage (Frontend features) anglebug:7279: Enabled: true Emulate ANGLE_shader_pixel_local_storage using shader images enableCaptureLimits (Frontend features) anglebug:5750: Disabled Set the context limits like frame capturing was enabled enableProgramBinaryForCapture (Frontend features) anglebug:5658: Disabled Even if FrameCapture is enabled, enable GL_OES_get_program_binary enableShaderSubstitution (Frontend workarounds) anglebug:7761: Disabled Check the filesystem for shaders to use instead of those provided through glShaderSource forceDepthAttachmentInitOnClear (Frontend workarounds) anglebug:7246: Disabled Force depth attachment initialization on clear ops forceGlErrorChecking (Frontend features) https://issuetracker.google.com/220069903: Disabled Force GL error checking (i.e. prevent applications from disabling error checking forceInitShaderVariables (Frontend features): Disabled Force-enable shader variable initialization forceRobustResourceInit (Frontend features) anglebug:6041: Disabled Force-enable robust resource init loseContextOnOutOfMemory (Frontend workarounds): Enabled: true Some users rely on a lost context notification if a GL_OUT_OF_MEMORY error occurs singleThreadedTextureDecompression (Frontend workarounds): Disabled Disables multi-threaded decompression of compressed texture formats addMockTextureNoRenderTarget (D3D workarounds) anglebug:2152: Disabled On some drivers when rendering with no render target, two bugs lead to incorrect behavior allowClearForRobustResourceInit (D3D workarounds) 941620: Enabled: true Some drivers corrupt texture data when clearing for robust resource initialization. allowES3OnFL100 (D3D workarounds): Disabled Allow ES3 on 10.0 devices allowTranslateUniformBlockToStructuredBuffer (D3D workarounds) anglebug:3682: Disabled There is a slow fxc compile performance issue with dynamic uniform indexing if translating a uniform block with a large array member to cbuffer. borderColorSrgb (D3D workarounds): Disabled: IsNvidia(vendorID) Some drivers expect sRGB border color for sRGB texture formats callClearTwice (D3D workarounds) 655534: Disabled Using clear() may not take effect depthStencilBlitExtraCopy (D3D workarounds) anglebug:1452: Disabled Bug in some drivers triggers a TDR when using CopySubresourceRegion from a staging texture to a depth/stencil disableB5G6R5Support (D3D workarounds): Disabled Textures with the format DXGI_FORMAT_B5G6R5_UNORM have incorrect data disableRasterizerOrderViews (D3D workarounds) anglebug:7279: Disabled Disable ROVs for testing emulateIsnanFloat (D3D workarounds) 650547: Disabled Using isnan() on highp float will get wrong answer emulateTinyStencilTextures (D3D workarounds): Disabled 1x1 and 2x2 mips of depth/stencil textures aren't sampled correctly enableTimestampQueries (D3D workarounds): Disabled Enable timestamp on GL_EXT_disjoint_timer_query extension expandIntegerPowExpressions (D3D workarounds): Enabled: true The HLSL optimizer has a bug with optimizing 'pow' in certain integer-valued expressions flushAfterEndingTransformFeedback (D3D workarounds): Disabled Some drivers sometimes write out-of-order results to StreamOut buffers when transform feedback is used to repeatedly write to the same buffer positions forceAtomicValueResolution (D3D workarounds) anglebug:3246: Disabled On some drivers the return value from RWByteAddressBuffer.InterlockedAdd does not resolve when used in the .yzw components of a RWByteAddressBuffer.Store operation getDimensionsIgnoresBaseLevel (D3D workarounds): Disabled Some drivers do not take into account the base level of the texture in the results of the HLSL GetDimensions builtin mrtPerfWorkaround (D3D workarounds): Enabled: true Some drivers have a bug where they ignore null render targets preAddTexelFetchOffsets (D3D workarounds): Disabled HLSL's function texture.Load returns 0 when the parameter Location is negative, even if the sum of Offset and Location is in range rewriteUnaryMinusOperator (D3D workarounds): Disabled Evaluating unary minus operator on integer may get wrong answer in vertex shaders selectViewInGeometryShader (D3D workarounds): Disabled The viewport or render target slice will be selected in the geometry shader stage for the ANGLE_multiview extension setDataFasterThanImageUpload (D3D workarounds): Disabled: false Set data faster than image upload skipVSConstantRegisterZero (D3D workarounds): Disabled In specific cases the driver doesn't handle constant register zero correctly useInstancedPointSpriteEmulation (D3D workarounds): Disabled: false Some D3D11 renderers do not support geometry shaders for pointsprite emulation useSystemMemoryForConstantBuffers (D3D workarounds) 593024: Disabled Copying from staging storage to constant buffer storage does not work zeroMaxLodWorkaround (D3D workarounds): Disabled Missing an option to disable mipmaps on a mipmapped texture DAWN Info <CPU> D3D12 backend - Microsoft Basic Render Driver [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_d3d12_resource_heap_tier2: https://crbug.com/dawn/27: Enable support for resource heap tier 2. Resource heap tier 2 allows mixing of texture and buffers in the same heap. This allows better heap re-use and reduces fragmentation. use_d3d12_render_pass: https://crbug.com/dawn/36: Use the D3D12 render pass API introduced in Windows build 1809 by default. On versions of Windows prior to build 1809, or when this toggle is turned off, Dawn will emulate a render pass. use_d3d12_residency_management: https://crbug.com/dawn/193: Enable residency management. This allows page-in and page-out of resource heaps in GPU memory. This component improves overcommitted performance by keeping the most recently used resources local to the GPU. Turning this component off can cause allocation failures when application memory exceeds physical device memory. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. d3d12_split_buffer_texture_copy_for_rows_per_image_paddings: https://crbug.com/dawn/1289: D3D12 requires more buffer storage than it should when rowsPerImage is greater than copyHeight, which means there are pure padding row(s) on each image. In this situation, the buffer used for B2T/T2B copy might be big enough according to WebGPU's spec but it doesn't meet D3D12's requirement, then we need to workaround it via split the copy operation into two copies, in order to make B2T/T2B copy being done correctly on D3D12. d3d12_use_temp_buffer_in_texture_to_texture_copy_between_different_dimensions: https://crbug.com/dawn/1216: Use an intermediate temporary buffer when copying between textures of different dimensions. Force-enabled on D3D12 when the driver does not have the TextureCopyBetweenDimensionsSupported feature. apply_clear_big_integer_color_value_with_draw: https://crbug.com/dawn/537: Apply the clear value of the color attachment with a draw call when load op is 'clear'. This toggle is enabled by default on D3D12 backends when we set large integer values (> 2^24 or < -2^24 for signed integer formats) as the clear value of a color attachment with 32-bit integer or unsigned integer formats because D3D12 APIs only support using float numbers as clear values, while a float number cannot always precisely represent an integer that is greater than 2^24 or smaller than -2^24). This toggle is also enabled on Intel GPUs on Metal backend due to a driver issue on Intel Metal driver. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc pipeline-statistics-query timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage dawn-internal-usages multiplanar-formats dawn-native implicit-device-sync surface-capabilities <CPU> Vulkan backend - SwiftShader Device (Subzero) [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_temporary_buffer_in_texture_to_texture_copy: https://crbug.com/dawn/42: Split texture-to-texture copy into two copies: copy from source texture into a temporary buffer, and copy from the temporary buffer into the destination texture when copying between compressed textures that don't have block-aligned sizes. This workaround is enabled by default on all Vulkan drivers to solve an issue in the Vulkan SPEC about the texture-to-texture copies with compressed formats. See #1005 (https://github.com/KhronosGroup/Vulkan-Docs/issues/1005) for more details. vulkan_use_d32s8: https://crbug.com/dawn/286: Vulkan mandates support of either D32_FLOAT_S8 or D24_UNORM_S8. When available the backend will use D32S8 (toggle to on) but setting the toggle to off will make it use the D24S8 format when possible. vulkan_use_s8: https://crbug.com/dawn/666: Vulkan has a pure stencil8 format but it is not universally available. When this toggle is on, the backend will use S8 for the stencil8 format, otherwise it will fallback to D32S8 or D24S8. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. use_placeholder_fragment_in_vertex_only_pipeline: https://crbug.com/dawn/136: Use a placeholder empty fragment shader in vertex only render pipeline. This toggle must be enabled for OpenGL ES backend, the Vulkan Backend, and serves as a workaround by default enabled on some Metal devices with Intel GPU to ensure the depth result is correct. use_vulkan_zero_initialize_workgroup_memory_extension: https://crbug.com/dawn/1302: Initialize workgroup memory with OpConstantNull on Vulkan when the Vulkan extension VK_KHR_zero_initialize_workgroup_memory is supported. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc texture-compression-etc2 texture-compression-astc timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage dawn-internal-usages dawn-native implicit-device-sync surface-capabilities Version Information Data exported 2023-08-22T01:06:01.441Z Chrome version Chrome/114.0.5735.321 Operating system Windows NT 10.0.19045 Software rendering list URL https://chromium.googlesource.com/chromium/src/+/072cade41590c7ce084e0dbd3bba8cf7b26e9ef5/gpu/config/software_rendering_list.json Driver bug list URL https://chromium.googlesource.com/chromium/src/+/072cade41590c7ce084e0dbd3bba8cf7b26e9ef5/gpu/config/gpu_driver_bug_list.json ANGLE commit id 43e3d8c8e6d6 2D graphics backend Skia/114 ea1a1635fcf5b1f68b59cd3f8649a0abfab65cfd Command Line "C:\Users\egor\AppData\Local\Vivaldi\Application\vivaldi.exe" --gpu-testing-vendor-id=0x8086 --origin-trial-disabled-features=WebGPU --restart --save-page-as-mhtml --restart --flag-switches-begin --enable-smooth-scrolling --use-angle=d3d9 --enable-features=UseXpsForPrintingFromPdf,WindowsScrollingPersonality --disable-features=DesktopPartialTranslate --flag-switches-end Driver Information Initialization time 485 In-process GPU false Passthrough Command Decoder true Sandboxed true GPU0 VENDOR= 0x8086, DEVICE=0x0046, SUBSYS=0x035c1025, REV=24, LUID={0,53564683}, DRIVER_VENDOR=Intel, DRIVER_VERSION=8.15.10.2900 *ACTIVE* GPU1 VENDOR= 0x1414, DEVICE=0x008c, LUID={0,67153}, DRIVER_VERSION=10.0.19041.2788 Optimus false AMD switchable false Desktop compositing Aero Glass Direct composition false Supports overlays false YUY2 overlay support NONE NV12 overlay support NONE BGRA8 overlay support NONE RGB10A2 overlay support NONE Diagonal Monitor Size of \\.\DISPLAY7 15.5" Driver D3D12 feature level Not supported Driver Vulkan API version Not supported GPU CUDA compute capability major version 0 Pixel shader version 3.0 Vertex shader version 3.0 Max. MSAA samples 1 Machine model name Machine model version GL implementation parts (gl=egl-angle,angle=d3d9) Display type ANGLE_D3D9 GL_VENDOR Google Inc. (Intel) GL_RENDERER ANGLE (Intel, Intel(R) HD Graphics Direct3D9Ex vs_3_0 ps_3_0, igdumd64.dll -8.15.10.2900) GL_VERSION OpenGL ES 2.0.0 (ANGLE 2.1.20987 git hash: 43e3d8c8e6d6) GL_EXTENSIONS GL_AMD_performance_monitor GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_get_serialized_context_string GL_ANGLE_get_tex_level_parameter GL_ANGLE_instanced_arrays GL_ANGLE_memory_size GL_ANGLE_multi_draw GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control 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_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_texture GL_CHROMIUM_lose_context GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_float_blend GL_EXT_frag_depth GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_border_clamp GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_mirror_clamp_to_edge GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_NV_fence GL_NV_pack_subimage GL_NV_read_depth GL_NV_read_stencil GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_depth32 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_border_clamp 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 GL_WEBGL_video_texture Disabled Extensions GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent Disabled WebGL Extensions Window system binding vendor Google Inc. (Intel) Window system binding version 1.5 (ANGLE 2.1.20987 git hash: 43e3d8c8e6d6) Window system binding 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_NV_post_sub_buffer EGL_KHR_create_context EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_display_semaphore_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization EGL_ANGLE_create_context_extensions_enabled EGL_ANDROID_blob_cache EGL_ANDROID_recordable EGL_ANGLE_create_context_backwards_compatible EGL_KHR_no_config_context EGL_KHR_create_context_no_error EGL_KHR_reusable_sync Direct rendering version unknown Reset notification strategy 0x8252 GPU process crash count 0 gfx::BufferFormats supported for allocation and texturing R_8: not supported, R_16: not supported, RG_88: not supported, RG_1616: not supported, BGR_565: not supported, RGBA_4444: not supported, RGBX_8888: not supported, RGBA_8888: not supported, BGRX_8888: not supported, BGRA_1010102: not supported, RGBA_1010102: not supported, BGRA_8888: not supported, RGBA_F16: not supported, YVU_420: not supported, YUV_420_BIPLANAR: not supported, YUVA_420_TRIPLANAR: not supported, P010: not supported Compositor Information Tile Update Mode One-copy Partial Raster Enabled GpuMemoryBuffers Status R_8 Software only R_16 Software only RG_88 Software only RG_1616 Software only BGR_565 Software only RGBA_4444 Software only RGBX_8888 GPU_READ, SCANOUT RGBA_8888 GPU_READ, SCANOUT BGRX_8888 Software only BGRA_1010102 Software only RGBA_1010102 Software only BGRA_8888 Software only RGBA_F16 Software only YVU_420 Software only YUV_420_BIPLANAR Software only YUVA_420_TRIPLANAR Software only P010 Software only Display(s) Information Info Display[3958967264] bounds=[0,0 1366x768], workarea=[0,0 1366x738], scale=1, rotation=0, panel_rotation=0 internal. Color space (sRGB/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (sRGB/no-alpha) BGRX_8888 Color space (sRGB/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (sRGB/alpha) BGRA_8888 Color space (WCG/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (WCG/no-alpha) BGRX_8888 Color space (WCG/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (WCG/alpha) BGRA_8888 Color space (HDR/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (HDR/no-alpha) BGRX_8888 Color space (HDR/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (HDR/alpha) BGRA_8888 Color volume {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]} SDR white level in nits 203 HDR relative maximum luminance 1 Bits per color component 8 Bits per pixel 24 Refresh Rate in Hz 60 Video Acceleration Information Decoding Encoding Vulkan Information Device Performance Information Total Physical Memory (Gb) 7 Total Disk Space (Gb) 117 Hardware Concurrency 4 System Commit Limit (Gb) 15 D3D11 Feature Level 10_0 Has Discrete GPU yes Intel GPU Generation 5 Software Rendering No Diagnostics 0 b3DAccelerationEnabled true b3DAccelerationExists true bAGPEnabled true bAGPExistenceValid true bAGPExists true bCanRenderWindow true bDDAccelerationEnabled true bDriverBeta false bDriverDebug false bDriverSigned false bDriverSignedValid false bNoHardware false dwBpp 32 dwDDIVersion 10 dwHeight 768 dwRefreshRate 60 dwWHQLLevel 0 dwWidth 1366 iAdapter 0 lDriverSize 8369024 lMiniVddSize 0 szAGPStatusEnglish Enabled szAGPStatusLocalized Enabled szChipType Intel(R) HD Graphics (Core i5) szD3DStatusEnglish Enabled szD3DStatusLocalized Enabled szDACType Internal szDDIVersionEnglish 10 szDDIVersionLocalized 10 szDDStatusEnglish Enabled szDDStatusLocalized Enabled szDXVAHDEnglish Supported szDXVAModes ModeMPEG2_A ModeMPEG2_C ModeWMV9_B ModeWMV9_C ModeVC1_B ModeVC1_C szDescription Intel(R) HD Graphics szDeviceId 0x0046 szDeviceIdentifier {D7B78E66-4306-11CF-C178-5623B8C2C535} szDeviceName \\.\DISPLAY7 szDisplayMemoryEnglish 1760 MB szDisplayMemoryLocalized 1760 MB szDisplayModeEnglish 1366 x 768 (32 bit) (60Hz) szDisplayModeLocalized 1366 x 768 (32 bit) (60Hz) szDriverAssemblyVersion 8.15.10.2900 szDriverAttributes Final Retail szDriverDateEnglish 26.11.2012 4:00:00 szDriverDateLocalized 11/26/2012 04:00:00 szDriverLanguageEnglish English szDriverLanguageLocalized English szDriverModelEnglish WDDM 1.1 szDriverModelLocalized WDDM 1.1 szDriverName igdumd64.dll,igd10umd64.dll szDriverNodeStrongName oem59.inf:5f63e5349ded771f:iILKM0:8.15.10.2900:pci\ven_8086&dev_0046 szDriverSignDate Unknown szDriverVersion 8.15.0010.2900 szKeyDeviceID Enum\PCI\VEN_8086&DEV_0046&SUBSYS_035C1025&REV_18 szKeyDeviceKey \Registry\Machine\System\CurrentControlSet\Control\Video\{0E178A19-86BB-11EC-9166-F1C282E5055F}\0000 szManufacturer Intel Corporation szMiniVdd unknown szMiniVddDateEnglish Unknown szMiniVddDateLocalized unknown szMonitorMaxRes Unknown szMonitorName Generic PnP Monitor szNotesEnglish No problems found. szNotesLocalized No problems found. szOverlayEnglish Supported szRankOfInstalledDriver 00E02001 szRegHelpText Unknown szRevision Unknown szRevisionId 0x0018 szSubSysId 0x035C1025 szTestResultD3D7English Not run szTestResultD3D7Localized Not run szTestResultD3D8English Not run szTestResultD3D8Localized Not run szTestResultD3D9English Not run szTestResultD3D9Localized Not run szTestResultDDEnglish Not run szTestResultDDLocalized Not run szVdd unknown szVendorId 0x8086 Log Messages [16064:10604:0822/050542.056:ERROR:gl_display.cc(520)] : EGL Driver message (Error) eglCreateContext: Requested GLES version (3.0) is greater than max supported (2, 0). [16064:10604:0822/050542.110:ERROR:gl_display.cc(520)] : EGL Driver message (Error) eglCreateContext: Requested GLES version (3.0) is greater than max supported (2, 0). GpuProcessHost: The info collection GPU process exited normally. Everything is okay.
-
The video sample from YouTube is here
vivaldi://media-internals
render_id: 23 player_id: 5 created: 2023-08-22 01:27:29.900 UTC origin_url: https://www.youtube.com/ kFrameUrl: https://www.youtube.com/watch?v=LXb3EKWsInQ&t=199s kFrameTitle: COSTA RICA IN 4K 60fps HDR (ULTRA HD) - YouTube url: blob:https://www.youtube.com/7d2b4d09-fe76-4474-88c7-b3b442ac05b7 kTextTracks: info: Selected video track: [] kRendererName: RendererImpl pipeline_state: kPlaying kVideoTracks: [object Object] kAudioTracks: [object Object] kIsAudioDecryptingDemuxerStream: false kAudioDecoderName: FFmpegAudioDecoder kIsPlatformAudioDecoder: false kIsVideoDecryptingDemuxerStream: false kVideoDecoderName: WMFVideoDecoder kIsPlatformVideoDecoder: false event: kPlay duration: 313.801 audio_buffering_state: [object Object] dimensions: 640x360 kResolution: 640x360 pipeline_buffering_state: [object Object]
And event log
Timestamp Property Value 00:00:00.000 created "2023-08-22 01:27:29.900 UTC" 00:00:00.001 origin_url "https://www.youtube.com/" 00:00:00.001 kFrameUrl "https://www.youtube.com/watch?v=LXb3EKWsInQ&t=199s" 00:00:00.001 kFrameTitle "COSTA RICA IN 4K 60fps HDR (ULTRA HD) - YouTube" 00:00:00.003 url "blob:https://www.youtube.com/7d2b4d09-fe76-4474-88c7-b3b442ac05b7" 00:00:00.003 kTextTracks [] 00:00:00.003 info "ChunkDemuxer" 00:00:00.003 kRendererName "RendererImpl" 00:00:00.005 pipeline_state "kStarting" 00:00:00.699 kVideoTracks [{"alpha mode":"is_opaque","codec":"h264","coded size":"640x360","color space":{"matrix":"BT709","primaries":"BT709","range":"LIMITED","transfer":"BT709"},"encryption scheme":"Unencrypted","has extra data":false,"hdr metadata":"unset","natural size":"640x360","orientation":"0°","profile":"h264 main","visible rect":"0,0 640x360"}] 00:00:00.721 kAudioTracks [{"bytes per channel":4,"bytes per frame":8,"channel layout":"STEREO","channels":2,"codec":"opus","codec delay":312,"discard decoder delay":true,"encryption scheme":"Unencrypted","has extra data":true,"profile":"unknown","sample format":"Float 32-bit","samples per second":48000,"seek preroll":"80000us"}] 00:00:00.733 kIsAudioDecryptingDemuxerStream false 00:00:00.733 kAudioDecoderName "FFmpegAudioDecoder" 00:00:00.733 kIsPlatformAudioDecoder false 00:00:00.733 info "Selected FFmpegAudioDecoder for audio decoding, config: codec: opus, profile: unknown, bytes_per_channel: 4, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Float 32-bit, bytes_per_frame: 8, seek_preroll: 80000us, codec_delay: 312, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: true, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format, has aac extra data: false" 00:00:00.733 info "Cannot select DecryptingVideoDecoder for video decoding" 00:00:00.733 info "Cannot select D3D11VideoDecoder for video decoding" 00:00:00.733 info "Cannot select VpxVideoDecoder for video decoding" 00:00:00.733 info "Cannot select Dav1dVideoDecoder for video decoding" 00:00:00.733 info "Cannot select FFmpegVideoDecoder for video decoding" 00:00:00.738 kIsVideoDecryptingDemuxerStream false 00:00:00.738 kVideoDecoderName "WMFVideoDecoder" 00:00:00.738 kIsPlatformVideoDecoder false 00:00:00.738 info "Selected WMFVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: not available, alpha_mode: is_opaque, coded size: [640,360], visible rect: [0,0,640,360], natural size: [640,360], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}" 00:00:00.738 pipeline_state "kPlaying" 00:00:00.843 info "Effective playback rate changed from 0 to 1" 00:00:00.843 event "kPlay" 00:00:00.837 duration 313.801 00:00:00.744 audio_buffering_state {"state":"BUFFERING_HAVE_ENOUGH"} 00:00:01.217 dimensions "640x360" 00:00:01.217 kResolution "640x360" 00:00:01.218 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"} 00:00:10.845 info "Selected video track: []" 00:00:10.849 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"} 00:00:44.385 info "Selected video track: [1]" 00:00:44.594 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"} 00:00:58.765 info "Selected video track: []" 00:00:58.769 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"}
-
edge://version
Microsoft Edge 115.0.1901.203 (Official build) (64-bit) Revision a5a2b1779bcfe71f081bc9104cca968d420a89ac Chromium version 115.0.5790.171 Operating system Windows 10 Version 22H2 (Build 19045.3324) JavaScript V8 11.5.17.12 User agent Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.203 Command-line "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --inprivate --flag-switches-begin --enable-smooth-scrolling --enable-features=msHttpsUpgradesEnabled --flag-switches-end
edge://gpu
Graphics Feature Status Canvas: Hardware accelerated Canvas out-of-process rasterization: Disabled Direct Rendering Display Compositor: Disabled Compositing: Hardware accelerated Multiple Raster Threads: Enabled OpenGL: Enabled Rasterization: Unavailable Raw Draw: Disabled Skia Graphite: Disabled Video Decode: Hardware accelerated Video Encode: Unavailable Vulkan: Disabled WebGL: Hardware accelerated WebGL2: Unavailable WebGPU: Hardware accelerated Driver Bug Workarounds clear_uniforms_before_first_program_use decode_encode_srgb_for_generatemipmap disable_accelerated_vp9_decode disable_accelerated_vp9_encode disable_d3d11 disable_decode_swap_chain disable_direct_composition_sw_video_overlays disable_dynamic_video_encode_framerate_update disable_imagebitmap_from_video_using_gpu disable_ms_video_super_resolution disable_nv12_dynamic_textures disable_vp_super_resolution enable_bgra8_overlays_with_yuv_overlay_support enable_webgl_timer_query_extensions exit_on_context_lost max_msaa_sample_count_4 msaa_is_slow msaa_is_slow_2 disabled_extension_GL_KHR_blend_equation_advanced disabled_extension_GL_KHR_blend_equation_advanced_coherent Problems Detected GPU rasterization should only be enabled on NVIDIA and Intel and AMD RX-R2 GPUs with DX11+ or any GPU using ANGLE's GL backend.: 1047002 Disabled Features: gpu_rasterization Old Intel drivers cannot reliably support D3D11/WebGL2: 363721 Disabled Features: accelerated_webgl2 Disable hardware MFT video encoder on older Intel drivers: 1251071 Disabled Features: accelerated_video_encode Some drivers are unable to reset the D3D device in the GPU process sandbox Applied Workarounds: exit_on_context_lost Clear uniforms before first program use on all platforms: 124764, 349137 Applied Workarounds: clear_uniforms_before_first_program_use Old Intel drivers cannot reliably support D3D11: 363721 Applied Workarounds: disable_d3d11 On Intel GPUs MSAA performance is not acceptable for GPU rasterization: 527565, 1298585 Applied Workarounds: msaa_is_slow Disable KHR_blend_equation_advanced until cc shaders are updated: 661715 Applied Workarounds: disable(GL_KHR_blend_equation_advanced), disable(GL_KHR_blend_equation_advanced_coherent) Decode and Encode before generateMipmap for srgb format textures on Windows: 634519 Applied Workarounds: decode_encode_srgb_for_generatemipmap Accelerated VP9 decoding is hanging on some videos.: 654111 Applied Workarounds: disable_accelerated_vp9_decode Expose WebGL's disjoint_timer_query extensions on platforms with site isolation: 808744, 870491 Applied Workarounds: enable_webgl_timer_query_extensions Dynamic texture map crashes on Intel drivers less than version 24: 890227 Applied Workarounds: disable_nv12_dynamic_textures Disable using GPU backed resource for imageBitmap from video on d3d9: 1098445, 1105923 Applied Workarounds: disable_imagebitmap_from_video_using_gpu Disable DecodeSwapChain for Intel Gen9 and older devices: 1107403 Applied Workarounds: disable_decode_swap_chain Intel GPUs fail to report BGRA8 overlay support: 1119491 Applied Workarounds: enable_bgra8_overlays_with_yuv_overlay_support 8x MSAA for WebGL contexts is slow on Win Intel: 1145793 Applied Workarounds: max_msaa_sample_count_4 Disable software overlays for Intel GPUs. All Skylake+ devices support hw overlays, older devices peform poorly.: 1192748 Applied Workarounds: disable_direct_composition_sw_video_overlays AVC/AV1 hardware encoder MFT output bitrate incorrect upon framerate update on Intel GPUs.: 1295815 Applied Workarounds: disable_dynamic_video_encode_framerate_update Only enable video processor super resolution on Intel Gen10+ GPUs and NVIDIA GPUs with 530+ drivers: 1318380 Applied Workarounds: disable_vp_super_resolution On pre-Ice Lake Intel GPUs MSAA performance is not acceptable for GPU rasterization: 527565, 1298585, 1341830 Applied Workarounds: msaa_is_slow_2 Disable VP9 HW encode on Intel GPU with old drivers: 1433287 Applied Workarounds: disable_accelerated_vp9_encode Disable VP9 HW encode on Intel GPUs preceding Ice Lake: 1217298, 1107331 Applied Workarounds: disable_accelerated_vp9_encode Only enable Microsoft Video Super Resolution capabilities for specific GPUs. Applied Workarounds: disable_ms_video_super_resolution ANGLE Features allowCompressedFormats (Frontend workarounds): Enabled: true Allow compressed formats cacheCompiledShader (Frontend features) anglebug:7036: Disabled Enable to cache compiled shaders disableAnisotropicFiltering (Frontend workarounds): Disabled Disable support for anisotropic filtering disableDrawBuffersIndexed (Frontend features) anglebug:7724: Disabled Disable support for OES_draw_buffers_indexed and EXT_draw_buffers_indexed disableProgramBinary (Frontend features) anglebug:5007: Disabled Disable support for GL_OES_get_program_binary disableProgramCaching (Frontend features) anglebug:1423136: Disabled Disables saving programs to the cache disableProgramCachingForTransformFeedback (Frontend workarounds): Disabled On some GPUs, program binaries don't contain transform feedback varyings dumpShaderSource (Frontend features) anglebug:7760: Disabled Write shader source to temp directory emulatePixelLocalStorage (Frontend features) anglebug:7279: Enabled: true Emulate ANGLE_shader_pixel_local_storage using shader images enableCaptureLimits (Frontend features) anglebug:5750: Disabled Set the context limits like frame capturing was enabled enableProgramBinaryForCapture (Frontend features) anglebug:5658: Disabled Even if FrameCapture is enabled, enable GL_OES_get_program_binary enableShaderSubstitution (Frontend workarounds) anglebug:7761: Disabled Check the filesystem for shaders to use instead of those provided through glShaderSource forceDepthAttachmentInitOnClear (Frontend workarounds) anglebug:7246: Disabled Force depth attachment initialization on clear ops forceGlErrorChecking (Frontend features) https://issuetracker.google.com/220069903: Disabled Force GL error checking (i.e. prevent applications from disabling error checking forceInitShaderVariables (Frontend features): Disabled Force-enable shader variable initialization forceRobustResourceInit (Frontend features) anglebug:6041: Disabled Force-enable robust resource init loseContextOnOutOfMemory (Frontend workarounds): Enabled: true Some users rely on a lost context notification if a GL_OUT_OF_MEMORY error occurs singleThreadedTextureDecompression (Frontend workarounds): Disabled Disables multi-threaded decompression of compressed texture formats addMockTextureNoRenderTarget (D3D workarounds) anglebug:2152: Disabled On some drivers when rendering with no render target, two bugs lead to incorrect behavior allowClearForRobustResourceInit (D3D workarounds) 941620: Enabled: true Some drivers corrupt texture data when clearing for robust resource initialization. allowES3OnFL100 (D3D workarounds): Disabled Allow ES3 on 10.0 devices allowTranslateUniformBlockToStructuredBuffer (D3D workarounds) anglebug:3682: Disabled There is a slow fxc compile performance issue with dynamic uniform indexing if translating a uniform block with a large array member to cbuffer. borderColorSrgb (D3D workarounds): Disabled: IsNvidia(vendorID) Some drivers expect sRGB border color for sRGB texture formats callClearTwice (D3D workarounds) 655534: Disabled Using clear() may not take effect depthStencilBlitExtraCopy (D3D workarounds) anglebug:1452: Disabled Bug in some drivers triggers a TDR when using CopySubresourceRegion from a staging texture to a depth/stencil disableB5G6R5Support (D3D workarounds): Disabled Textures with the format DXGI_FORMAT_B5G6R5_UNORM have incorrect data disableRasterizerOrderViews (D3D workarounds) anglebug:7279: Disabled Disable ROVs for testing emulateIsnanFloat (D3D workarounds) 650547: Disabled Using isnan() on highp float will get wrong answer emulateTinyStencilTextures (D3D workarounds): Disabled 1x1 and 2x2 mips of depth/stencil textures aren't sampled correctly enableTimestampQueries (D3D workarounds): Disabled Enable timestamp on GL_EXT_disjoint_timer_query extension expandIntegerPowExpressions (D3D workarounds): Enabled: true The HLSL optimizer has a bug with optimizing 'pow' in certain integer-valued expressions flushAfterEndingTransformFeedback (D3D workarounds): Disabled Some drivers sometimes write out-of-order results to StreamOut buffers when transform feedback is used to repeatedly write to the same buffer positions forceAtomicValueResolution (D3D workarounds) anglebug:3246: Disabled On some drivers the return value from RWByteAddressBuffer.InterlockedAdd does not resolve when used in the .yzw components of a RWByteAddressBuffer.Store operation getDimensionsIgnoresBaseLevel (D3D workarounds): Disabled Some drivers do not take into account the base level of the texture in the results of the HLSL GetDimensions builtin mrtPerfWorkaround (D3D workarounds): Enabled: true Some drivers have a bug where they ignore null render targets preAddTexelFetchOffsets (D3D workarounds): Disabled HLSL's function texture.Load returns 0 when the parameter Location is negative, even if the sum of Offset and Location is in range rewriteUnaryMinusOperator (D3D workarounds): Disabled Evaluating unary minus operator on integer may get wrong answer in vertex shaders selectViewInGeometryShader (D3D workarounds): Disabled The viewport or render target slice will be selected in the geometry shader stage for the ANGLE_multiview extension setDataFasterThanImageUpload (D3D workarounds): Disabled: false Set data faster than image upload skipVSConstantRegisterZero (D3D workarounds): Disabled In specific cases the driver doesn't handle constant register zero correctly useInstancedPointSpriteEmulation (D3D workarounds): Disabled: false Some D3D11 renderers do not support geometry shaders for pointsprite emulation useSystemMemoryForConstantBuffers (D3D workarounds) 593024: Disabled Copying from staging storage to constant buffer storage does not work zeroMaxLodWorkaround (D3D workarounds): Disabled Missing an option to disable mipmaps on a mipmapped texture DAWN Info <CPU> D3D11 backend - Microsoft Basic Render Driver [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. apply_clear_big_integer_color_value_with_draw: https://crbug.com/dawn/537: Apply the clear value of the color attachment with a draw call when load op is 'clear'. This toggle is enabled by default on D3D12 backends when we set large integer values (> 2^24 or < -2^24 for signed integer formats) as the clear value of a color attachment with 32-bit integer or unsigned integer formats because D3D12 APIs only support using float numbers as clear values, while a float number cannot always precisely represent an integer that is greater than 2^24 or smaller than -2^24). This toggle is also enabled on Intel GPUs on Metal backend due to a driver issue on Intel Metal driver. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc depth-clip-control depth32float-stencil8 dawn-internal-usages dawn-native implicit-device-sync surface-capabilities <CPU> D3D12 backend - Microsoft Basic Render Driver [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_d3d12_resource_heap_tier2: https://crbug.com/dawn/27: Enable support for resource heap tier 2. Resource heap tier 2 allows mixing of texture and buffers in the same heap. This allows better heap re-use and reduces fragmentation. use_d3d12_render_pass: https://crbug.com/dawn/36: Use the D3D12 render pass API introduced in Windows build 1809 by default. On versions of Windows prior to build 1809, or when this toggle is turned off, Dawn will emulate a render pass. use_d3d12_residency_management: https://crbug.com/dawn/193: Enable residency management. This allows page-in and page-out of resource heaps in GPU memory. This component improves overcommitted performance by keeping the most recently used resources local to the GPU. Turning this component off can cause allocation failures when application memory exceeds physical device memory. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. d3d12_split_buffer_texture_copy_for_rows_per_image_paddings: https://crbug.com/dawn/1289: D3D12 requires more buffer storage than it should when rowsPerImage is greater than copyHeight, which means there are pure padding row(s) on each image. In this situation, the buffer used for B2T/T2B copy might be big enough according to WebGPU's spec but it doesn't meet D3D12's requirement, then we need to workaround it via split the copy operation into two copies, in order to make B2T/T2B copy being done correctly on D3D12. d3d12_use_temp_buffer_in_texture_to_texture_copy_between_different_dimensions: https://crbug.com/dawn/1216: Use an intermediate temporary buffer when copying between textures of different dimensions. Force-enabled on D3D12 when the driver does not have the TextureCopyBetweenDimensionsSupported feature. apply_clear_big_integer_color_value_with_draw: https://crbug.com/dawn/537: Apply the clear value of the color attachment with a draw call when load op is 'clear'. This toggle is enabled by default on D3D12 backends when we set large integer values (> 2^24 or < -2^24 for signed integer formats) as the clear value of a color attachment with 32-bit integer or unsigned integer formats because D3D12 APIs only support using float numbers as clear values, while a float number cannot always precisely represent an integer that is greater than 2^24 or smaller than -2^24). This toggle is also enabled on Intel GPUs on Metal backend due to a driver issue on Intel Metal driver. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc pipeline-statistics-query timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage float32-filterable dawn-internal-usages multiplanar-formats dawn-native implicit-device-sync surface-capabilities <CPU> D3D12 backend - Microsoft Basic Render Driver [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_d3d12_resource_heap_tier2: https://crbug.com/dawn/27: Enable support for resource heap tier 2. Resource heap tier 2 allows mixing of texture and buffers in the same heap. This allows better heap re-use and reduces fragmentation. use_d3d12_render_pass: https://crbug.com/dawn/36: Use the D3D12 render pass API introduced in Windows build 1809 by default. On versions of Windows prior to build 1809, or when this toggle is turned off, Dawn will emulate a render pass. use_d3d12_residency_management: https://crbug.com/dawn/193: Enable residency management. This allows page-in and page-out of resource heaps in GPU memory. This component improves overcommitted performance by keeping the most recently used resources local to the GPU. Turning this component off can cause allocation failures when application memory exceeds physical device memory. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. d3d12_split_buffer_texture_copy_for_rows_per_image_paddings: https://crbug.com/dawn/1289: D3D12 requires more buffer storage than it should when rowsPerImage is greater than copyHeight, which means there are pure padding row(s) on each image. In this situation, the buffer used for B2T/T2B copy might be big enough according to WebGPU's spec but it doesn't meet D3D12's requirement, then we need to workaround it via split the copy operation into two copies, in order to make B2T/T2B copy being done correctly on D3D12. d3d12_use_temp_buffer_in_texture_to_texture_copy_between_different_dimensions: https://crbug.com/dawn/1216: Use an intermediate temporary buffer when copying between textures of different dimensions. Force-enabled on D3D12 when the driver does not have the TextureCopyBetweenDimensionsSupported feature. apply_clear_big_integer_color_value_with_draw: https://crbug.com/dawn/537: Apply the clear value of the color attachment with a draw call when load op is 'clear'. This toggle is enabled by default on D3D12 backends when we set large integer values (> 2^24 or < -2^24 for signed integer formats) as the clear value of a color attachment with 32-bit integer or unsigned integer formats because D3D12 APIs only support using float numbers as clear values, while a float number cannot always precisely represent an integer that is greater than 2^24 or smaller than -2^24). This toggle is also enabled on Intel GPUs on Metal backend due to a driver issue on Intel Metal driver. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc pipeline-statistics-query timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage float32-filterable dawn-internal-usages multiplanar-formats dawn-native implicit-device-sync surface-capabilities <CPU> Vulkan backend - SwiftShader Device (Subzero) [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_temporary_buffer_in_texture_to_texture_copy: https://crbug.com/dawn/42: Split texture-to-texture copy into two copies: copy from source texture into a temporary buffer, and copy from the temporary buffer into the destination texture when copying between compressed textures that don't have block-aligned sizes. This workaround is enabled by default on all Vulkan drivers to solve an issue in the Vulkan SPEC about the texture-to-texture copies with compressed formats. See #1005 (https://github.com/KhronosGroup/Vulkan-Docs/issues/1005) for more details. vulkan_use_d32s8: https://crbug.com/dawn/286: Vulkan mandates support of either D32_FLOAT_S8 or D24_UNORM_S8. When available the backend will use D32S8 (toggle to on) but setting the toggle to off will make it use the D24S8 format when possible. vulkan_use_s8: https://crbug.com/dawn/666: Vulkan has a pure stencil8 format but it is not universally available. When this toggle is on, the backend will use S8 for the stencil8 format, otherwise it will fallback to D32S8 or D24S8. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. use_placeholder_fragment_in_vertex_only_pipeline: https://crbug.com/dawn/136: Use a placeholder empty fragment shader in vertex only render pipeline. This toggle must be enabled for OpenGL ES backend, the Vulkan Backend, and serves as a workaround by default enabled on some Metal devices with Intel GPU to ensure the depth result is correct. use_vulkan_zero_initialize_workgroup_memory_extension: https://crbug.com/dawn/1302: Initialize workgroup memory with OpConstantNull on Vulkan when the Vulkan extension VK_KHR_zero_initialize_workgroup_memory is supported. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc texture-compression-etc2 texture-compression-astc timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage float32-filterable dawn-internal-usages dawn-native implicit-device-sync surface-capabilities transient-attachments <CPU> Vulkan backend - SwiftShader Device (Subzero) [WebGPU Status] Blocklisted [Default Toggle Names] lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource. use_temporary_buffer_in_texture_to_texture_copy: https://crbug.com/dawn/42: Split texture-to-texture copy into two copies: copy from source texture into a temporary buffer, and copy from the temporary buffer into the destination texture when copying between compressed textures that don't have block-aligned sizes. This workaround is enabled by default on all Vulkan drivers to solve an issue in the Vulkan SPEC about the texture-to-texture copies with compressed formats. See #1005 (https://github.com/KhronosGroup/Vulkan-Docs/issues/1005) for more details. vulkan_use_d32s8: https://crbug.com/dawn/286: Vulkan mandates support of either D32_FLOAT_S8 or D24_UNORM_S8. When available the backend will use D32S8 (toggle to on) but setting the toggle to off will make it use the D24S8 format when possible. vulkan_use_s8: https://crbug.com/dawn/666: Vulkan has a pure stencil8 format but it is not universally available. When this toggle is on, the backend will use S8 for the stencil8 format, otherwise it will fallback to D32S8 or D24S8. disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet. use_placeholder_fragment_in_vertex_only_pipeline: https://crbug.com/dawn/136: Use a placeholder empty fragment shader in vertex only render pipeline. This toggle must be enabled for OpenGL ES backend, the Vulkan Backend, and serves as a workaround by default enabled on some Metal devices with Intel GPU to ensure the depth result is correct. use_vulkan_zero_initialize_workgroup_memory_extension: https://crbug.com/dawn/1302: Initialize workgroup memory with OpConstantNull on Vulkan when the Vulkan extension VK_KHR_zero_initialize_workgroup_memory is supported. [WebGPU Forced Toggles - enabled] disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process. [Supported Features] texture-compression-bc texture-compression-etc2 texture-compression-astc timestamp-query timestamp-query-inside-passes depth-clip-control depth32float-stencil8 indirect-first-instance rg11b10ufloat-renderable bgra8unorm-storage float32-filterable dawn-internal-usages dawn-native implicit-device-sync surface-capabilities transient-attachments Version Information Data exported 2023-08-22T01:26:38.353Z Chrome version Edg/115.0.1901.203 Operating system Windows NT 10.0.19045 Software rendering list URL https://chromium.googlesource.com/chromium/src/+/cf9067bf10d8f798c24643029af1d24e275646d6/gpu/config/software_rendering_list.json Driver bug list URL https://chromium.googlesource.com/chromium/src/+/cf9067bf10d8f798c24643029af1d24e275646d6/gpu/config/gpu_driver_bug_list.json ANGLE commit id bea5765dbfbc 2D graphics backend Skia/115 d0d16e9faa7fae0d53ca78c8dc966eae446cb130 Command Line "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --inprivate --flag-switches-begin --enable-smooth-scrolling --enable-features=msHttpsUpgradesEnabled --flag-switches-end Driver Information Initialization time 231 In-process GPU false Passthrough Command Decoder true Sandboxed true GPU0 VENDOR= 0x8086, DEVICE=0x0046, SUBSYS=0x035c1025, REV=24, LUID={0,53564683}, DRIVER_VENDOR=Intel, DRIVER_VERSION=8.15.10.2900 *ACTIVE* GPU1 VENDOR= 0x1414, DEVICE=0x008c, LUID={0,67153}, DRIVER_VERSION=10.0.19041.2788 Optimus false AMD switchable false Desktop compositing Aero Glass Direct composition false Supports overlays false YUY2 overlay support NONE NV12 overlay support NONE BGRA8 overlay support NONE RGB10A2 overlay support NONE Diagonal Monitor Size of \\.\DISPLAY7 15.5" Driver D3D12 feature level Not supported Driver Vulkan API version Not supported GPU CUDA compute capability major version 0 Pixel shader version 3.0 Vertex shader version 3.0 Max. MSAA samples 1 Machine model name Machine model version GL implementation parts (gl=egl-angle,angle=d3d9) Display type ANGLE_D3D9 GL_VENDOR Google Inc. (Intel) GL_RENDERER ANGLE (Intel, Intel(R) HD Graphics Direct3D9Ex vs_3_0 ps_3_0, igdumd64.dll -8.15.10.2900) GL_VERSION OpenGL ES 2.0.0 (ANGLE 2.1.32831 git hash: bea5765dbfbc) GL_EXTENSIONS GL_AMD_performance_monitor GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_get_serialized_context_string GL_ANGLE_get_tex_level_parameter GL_ANGLE_instanced_arrays GL_ANGLE_memory_size GL_ANGLE_multi_draw GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control 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_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_texture GL_CHROMIUM_lose_context GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_float_blend GL_EXT_frag_depth GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_border_clamp GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_mirror_clamp_to_edge GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_NV_fence GL_NV_pack_subimage GL_NV_read_depth GL_NV_read_stencil GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_depth32 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_border_clamp 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 GL_WEBGL_video_texture Disabled Extensions GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent Disabled WebGL Extensions Window system binding vendor Google Inc. (Intel) Window system binding version 1.5 (ANGLE 2.1.32831 git hash: bea5765dbfbc) Window system binding 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_NV_post_sub_buffer EGL_KHR_create_context EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_display_semaphore_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization EGL_ANGLE_create_context_extensions_enabled EGL_ANDROID_blob_cache EGL_ANDROID_recordable EGL_ANGLE_create_context_backwards_compatible EGL_KHR_no_config_context EGL_KHR_create_context_no_error EGL_KHR_reusable_sync Direct rendering version unknown Reset notification strategy 0x8252 GPU process crash count 0 gfx::BufferFormats supported for allocation and texturing R_8: not supported, R_16: not supported, RG_88: not supported, RG_1616: not supported, BGR_565: not supported, RGBA_4444: not supported, RGBX_8888: not supported, RGBA_8888: not supported, BGRX_8888: not supported, BGRA_1010102: not supported, RGBA_1010102: not supported, BGRA_8888: not supported, RGBA_F16: not supported, YVU_420: not supported, YUV_420_BIPLANAR: not supported, YUVA_420_TRIPLANAR: not supported, P010: not supported Compositor Information Tile Update Mode One-copy Partial Raster Enabled GpuMemoryBuffers Status R_8 Software only R_16 Software only RG_88 Software only RG_1616 Software only BGR_565 Software only RGBA_4444 Software only RGBX_8888 GPU_READ, SCANOUT RGBA_8888 GPU_READ, SCANOUT BGRX_8888 Software only BGRA_1010102 Software only RGBA_1010102 Software only BGRA_8888 Software only RGBA_F16 Software only YVU_420 Software only YUV_420_BIPLANAR Software only YUVA_420_TRIPLANAR Software only P010 Software only ...
-
edge://gpu (continues)
Media Foundation Rendering Capabilities PlayReady Hardware DRM disabled false Direct Composition false Dolby Atmos support false AV1 installed true AV1 activable true AV1 version AV1:1.1.61781.0 HEVC installed false HEVC activable false Display: Scaled: [0,0 1366x768] Scale: 1.00 Actual: [0,0 1366x768] GPU Index GPU0 HEVC - Dolby Vision support false HEVC - HDR10 support false HDCP 2.2 support false HEVC - 4K support false Display(s) Information Info Display[3958967264] bounds=[0,0 1366x768], workarea=[0,0 1366x738], scale=1, rotation=0, panel_rotation=0 internal. Color space (sRGB/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (sRGB/no-alpha) BGRX_8888 Color space (sRGB/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (sRGB/alpha) BGRA_8888 Color space (WCG/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (WCG/no-alpha) BGRX_8888 Color space (WCG/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (WCG/alpha) BGRA_8888 Color space (HDR/no-alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (HDR/no-alpha) BGRX_8888 Color space (HDR/alpha) {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL} Buffer format (HDR/alpha) BGRA_8888 Color volume {r:[0.6410, 0.3298], g:[0.3034, 0.6065], b:[0.1475, 0.3298], w:[0.3127, 0.3290]} SDR white level in nits 203 HDR relative maximum luminance 1 Bits per color component 8 Bits per pixel 24 Refresh Rate in Hz 60 Video Acceleration Information Decoding Decode h264 baseline 64x64 to 1920x1088 pixels Decode h264 main 64x64 to 1920x1088 pixels Decode h264 high 64x64 to 1920x1088 pixels Decode av1 profile main 48x48 to 8192x8192 pixels Decode av1 profile high 48x48 to 8192x8192 pixels Decode av1 profile pro 48x48 to 8192x8192 pixels Encoding Vulkan Information Device Performance Information Total Physical Memory (Gb) 7 Total Disk Space (Gb) 117 Hardware Concurrency 4 System Commit Limit (Gb) 15 D3D11 Feature Level 10_0 Has Discrete GPU yes Intel GPU Generation 5 Software Rendering No Diagnostics 0 b3DAccelerationEnabled true b3DAccelerationExists true bAGPEnabled true bAGPExistenceValid true bAGPExists true bCanRenderWindow true bDDAccelerationEnabled true bDriverBeta false bDriverDebug false bDriverSigned false bDriverSignedValid false bNoHardware false dwBpp 32 dwDDIVersion 10 dwHeight 768 dwRefreshRate 60 dwWHQLLevel 0 dwWidth 1366 iAdapter 0 lDriverSize 8369024 lMiniVddSize 0 szAGPStatusEnglish Enabled szAGPStatusLocalized Enabled szChipType Intel(R) HD Graphics (Core i5) szD3DStatusEnglish Enabled szD3DStatusLocalized Enabled szDACType Internal szDDIVersionEnglish 10 szDDIVersionLocalized 10 szDDStatusEnglish Enabled szDDStatusLocalized Enabled szDXVAHDEnglish Supported szDXVAModes ModeMPEG2_A ModeMPEG2_C ModeWMV9_B ModeWMV9_C ModeVC1_B ModeVC1_C szDescription Intel(R) HD Graphics szDeviceId 0x0046 szDeviceIdentifier {D7B78E66-4306-11CF-C178-5623B8C2C535} szDeviceName \\.\DISPLAY7 szDisplayMemoryEnglish 1760 MB szDisplayMemoryLocalized 1760 MB szDisplayModeEnglish 1366 x 768 (32 bit) (60Hz) szDisplayModeLocalized 1366 x 768 (32 bit) (60Hz) szDriverAssemblyVersion 8.15.10.2900 szDriverAttributes Final Retail szDriverDateEnglish 26.11.2012 4:00:00 szDriverDateLocalized 11/26/2012 04:00:00 szDriverLanguageEnglish English szDriverLanguageLocalized English szDriverModelEnglish WDDM 1.1 szDriverModelLocalized WDDM 1.1 szDriverName igdumd64.dll,igd10umd64.dll szDriverNodeStrongName oem59.inf:5f63e5349ded771f:iILKM0:8.15.10.2900:pci\ven_8086&dev_0046 szDriverSignDate Unknown szDriverVersion 8.15.0010.2900 szKeyDeviceID Enum\PCI\VEN_8086&DEV_0046&SUBSYS_035C1025&REV_18 szKeyDeviceKey \Registry\Machine\System\CurrentControlSet\Control\Video\{0E178A19-86BB-11EC-9166-F1C282E5055F}\0000 szManufacturer Intel Corporation szMiniVdd unknown szMiniVddDateEnglish Unknown szMiniVddDateLocalized unknown szMonitorMaxRes Unknown szMonitorName Generic PnP Monitor szNotesEnglish No problems found. szNotesLocalized No problems found. szOverlayEnglish Supported szRankOfInstalledDriver 00E02001 szRegHelpText Unknown szRevision Unknown szRevisionId 0x0018 szSubSysId 0x035C1025 szTestResultD3D7English Not run szTestResultD3D7Localized Not run szTestResultD3D8English Not run szTestResultD3D8Localized Not run szTestResultD3D9English Not run szTestResultD3D9Localized Not run szTestResultDDEnglish Not run szTestResultDDLocalized Not run szVdd unknown szVendorId 0x8086 Log Messages [5732:3824:0822/050027.070:ERROR:gl_display.cc(520)] : EGL Driver message (Error) eglCreateContext: Requested GLES version (3.0) is greater than max supported (2, 0). [5732:3824:0822/050027.082:ERROR:gl_display.cc(520)] : EGL Driver message (Error) eglCreateContext: Requested GLES version (3.0) is greater than max supported (2, 0). GpuProcessHost: The info collection GPU process exited normally. Everything is okay.
edge://media-internals
render_id: 54 player_id: 0 created: 2023-08-22 01:41:14.996 UTC info: Selected VDAVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: not available, alpha_mode: is_opaque, coded size: [640,360], visible rect: [0,0,640,360], natural size: [640,360], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED} origin_url: https://www.youtube.com/ kFrameUrl: https://www.youtube.com/watch?v=LXb3EKWsInQ kFrameTitle: COSTA RICA IN 4K 60fps HDR (ULTRA HD) - YouTube kMediaAutoplayPolicy: document-user-activation-required autoplay_decision: [object Object] url: blob:https://www.youtube.com/fa6bfed3-6eda-41fc-a14b-285bf0e96772 kTextTracks: kRendererName: RendererImpl renderer_created: [object Object] pipeline_state: kPlaying duration: 313.801 kVideoTracks: [object Object] kAudioTracks: [object Object] kIsAudioDecryptingDemuxerStream: false kAudioDecoderName: FFmpegAudioDecoder kIsPlatformAudioDecoder: false event: kPlay kIsVideoDecryptingDemuxerStream: false kVideoDecoderName: VDAVideoDecoder kIsPlatformVideoDecoder: true dimensions: 640x360 kResolution: 640x360 pipeline_buffering_state: [object Object] video_buffering_state: [object Object]
Event log
Timestamp Property Value 00:00:00.000 created "2023-08-22 01:41:14.996 UTC" 00:00:00.008 info "AV1 decoder support: 1, WebMfDecoderCheck: not null, kMediaFoundationClearAV1Support enabled: 1, disable_av1_accelerated_decode_gpu_workaround: 0, av1_hw_decoder_support: 0, vp9_decoder_support: 1" 00:00:00.008 info "CmdLinePresent:No;DCompDisabled:Yes;RemotePlaybackDisabled:No;ClearPlaybackSupported:No;DomainOverride:Uninitialized;ForceMFMediaEngine:No;CDMAvailable:Yes;MFOverrideEnabled:No;MFClearWorkaround:Enabled;CanUseVidSuperRes:No" 00:00:00.009 origin_url "https://www.youtube.com/" 00:00:00.009 kFrameUrl "https://www.youtube.com/watch?v=LXb3EKWsInQ" 00:00:00.009 kFrameTitle "COSTA RICA IN 4K 60fps HDR (ULTRA HD) - YouTube" 00:00:00.009 kMediaAutoplayPolicy "document-user-activation-required" 00:00:00.009 autoplay_decision {"effectively_muted":false,"policy":"document-user-activation-required","source":"method","was_blocked":false} 00:00:00.009 url "blob:https://www.youtube.com/fa6bfed3-6eda-41fc-a14b-285bf0e96772" 00:00:00.009 kTextTracks [] 00:00:00.010 info "ChunkDemuxer" 00:00:00.010 kRendererName "RendererImpl" 00:00:00.010 renderer_created {"renderer_engine":"Default","renderer_type":"RendererImpl"} 00:00:00.011 pipeline_state "kStarting" 00:00:00.112 duration 314 00:00:02.093 kVideoTracks [{"alpha mode":"is_opaque","codec":"h264","coded size":"640x360","color space":{"matrix":"BT709","primaries":"BT709","range":"LIMITED","transfer":"BT709"},"encryption scheme":"Unencrypted","has extra data":false,"hdr metadata":"unset","natural size":"640x360","orientation":"0°","profile":"h264 main","visible rect":"0,0 640x360"}] 00:00:02.094 kAudioTracks [{"bytes per channel":4,"bytes per frame":8,"channel layout":"STEREO","channels":2,"codec":"opus","codec delay":312,"discard decoder delay":true,"encryption scheme":"Unencrypted","has extra data":true,"profile":"unknown","sample format":"Float 32-bit","samples per second":48000,"seek preroll":"80000us"}] 00:00:02.366 kIsAudioDecryptingDemuxerStream false 00:00:02.366 kAudioDecoderName "FFmpegAudioDecoder" 00:00:02.366 kIsPlatformAudioDecoder false 00:00:02.367 info "Selected FFmpegAudioDecoder for audio decoding, config: codec: opus, profile: unknown, bytes_per_channel: 4, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Float 32-bit, bytes_per_frame: 8, seek_preroll: 80000us, codec_delay: 312, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: true, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format, has aac extra data: false" 00:00:02.367 info "Cannot select DecryptingVideoDecoder for video decoding" 00:00:02.395 info "Effective playback rate changed from 0 to 1" 00:00:02.395 event "kPlay" 00:00:02.477 info "Starting Initialization of DXVAVDA" 00:00:02.482 info "Using D3D9 device for DXVA" 00:00:02.519 kIsVideoDecryptingDemuxerStream false 00:00:02.519 kVideoDecoderName "VDAVideoDecoder" 00:00:02.519 kIsPlatformVideoDecoder true 00:00:02.519 info "Selected VDAVideoDecoder for video decoding, config: codec: h264, profile: h264 main, level: not available, alpha_mode: is_opaque, coded size: [640,360], visible rect: [0,0,640,360], natural size: [640,360], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}" 00:00:02.521 pipeline_state "kPlaying" 00:00:02.752 dimensions "640x360" 00:00:02.753 kResolution "640x360" 00:00:02.382 duration 313.801 00:00:02.753 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"} 00:00:10.394 video_buffering_state {"state":"BUFFERING_HAVE_ENOUGH"} 00:00:26.752 info "Selected video track: []" 00:00:26.755 pipeline_buffering_state {"for_suspended_start":false,"state":"BUFFERING_HAVE_ENOUGH"}
-
@Pathduck said in Hardware acceleration is not working properly:
Какая у вас версия Вивальди?
After several tests I found that VDAVideoDecoder stopped working after Vivaldi 4.1 (Chromium 92) version. All browsers based on Chromium 92 supported hardware acceleration and use VDAVideoDecoder. Why DXVA stopped working after version 92 I could not find in any release notes.
@gorskii said in Hardware acceleration is not working properly:
I have also tried using Edge, where HW acceleration works as expected (VdaVideoDecoder selected).
It is interesting that Chromium 116.0.5808.2 code base mentions DXVA decoder, but 116.0.5809.0 does not. I assume that when Edge reaches version 116.0.5809.0, it will stop supporting it as well
-
UPD: If run with --ignore-gpu-blocklist --use-angle=d3d9 --disable_d3d11_video_decoder flags VDA decoder starts. Works only until Vivaldi 5.7 or Chromium v111. After these versions flags do not work and starts WMFVideoDecoder. Maybe removal of DXVA support is somehow connected with discontinuation of new versions for Win7/Win 8.1?
-
@hiptop thank you for additional testing and info on chromium sources
I've managed to enable VDAVideoDecoder in vivaldi 6.1.3035.302 with these args: --enable-features=DXVAVideoDecoding --disable_d3d11_video_decoder
Seems like DXVAVideoDecoder was disabled by default in vivaldi after it's deprecation.
@hiptop said in Hardware acceleration is not working properly:
I assume that when Edge reaches version 116.0.5809.0, it will stop supporting it as well.
This is indeed what I have observed in Edge Dev 117.0.2045.1 (based on chromium 117.0.5938.0). And there is no way to enable DXVADecoder since chromium developers removed it in M116. According to discussion you have mentioned before, they have completely switched to D3D11 decoder since they had less than 4% users (less than 2% by the end of testing) on Win10 using D3D9/DXVADecoder, and had no complaints after they have disabled DXVADecoder in M112. Not to mention they had to support systems with old intel drivers since 2014.
So, you can only use accelerated decoding on chromium-based browsers in the future if your GPU (and the driver installed) fully support DirectX 11 (feature level 11_1, if I'm not mistaken). My GPU is too old (10_0), but maybe you will have better luck with yours! I don't see Vivaldi patching chromium to get DXVADecoder back
-
@gorskii said in Hardware acceleration is not working properly:
My GPU is too old (10_0)
Strange thing is I have VLC playing video using D3D11 (not DXVA) decoder, and DXVAChecker logs confirm GPU decoding is working
I've tried to make Vivaldi or Edge to run D3D11VideoDecoder by forcing D3D11 rendering and ignoring gpu blocklist, but that didn't work. Both browsers still reporting "Video Decode: Hardware accelerated" in GPU Internals report, but it is not working, so maybe it is a good idea to file a bug to chromium?
-
@hiptop said in Hardware acceleration is not working properly:
After these versions flags do not work and starts WMFVideoDecoder
Another strange thing is that, in case of software encoding, Vivaldi falls back to WMFVideoDecoder with "Cannot select FFmpegVideoDecoder for video decoding" message in vivaldi://media-internals, and Edge falls back to FFmpegVideoDecoder, which gives slightly less CPU load
-
@gorskii said in Hardware acceleration is not working properly:
So, you can only use accelerated decoding on chromium-based browsers in the future if your GPU (and the driver installed) fully support DirectX 11 (feature level 11_1, if I'm not mistaken). My GPU is too old (10_0), but maybe you will have better luck with yours! I don't see Vivaldi patching chromium to get DXVADecoder back
My GPU is also too old (feature level 10_1 in dxdiag).
@gorskii said in Hardware acceleration is not working properly:
Strange thing is I have VLC playing video using D3D11 (not DXVA) decoder, and DXVAChecker logs confirm GPU decoding is working
I tried to run VLC with logging and using D3D11 decoder. Log:
-- logger module started -- main: one instance mode ENABLED main: Running vlc with the default interface. Use 'cvlc' to use vlc without interface. avcodec: Using D3D11VA (Intel(R) HD Graphics, vendor 8086(Intel), device 106, revision 9) for hardware decoding -- logger module stopped --
On this line found in chromium sources such lines in the file gpu_driver_bug_list.json
{ "id": 352, "cr_bugs": [1038006], "description": "Intel device 0x1066 can't use d3d11 video decoder", "os": { "type": "win" }, "vendor_id": "0x8086", "device_id": ["0x0166"], "features": [ "disable_d3d11_video_decoder" ] }, { "id": 353, "cr_bugs": [1038006], "description": "Intel device 0x8a56 with specific drivers can't use d3d11 video decoder", "os": { "type": "win" }, "vendor_id": "0x8086", "device_id": ["0x8a56"], "features": [ "disable_d3d11_video_decoder" ], "driver_version": { "op": "between", "value": "26", "value2": "27" } },
Apparently this bug has been around for a long time and will not be fixed.
-
@hiptop I don't think these particular bug workarounds apply to your device or driver version (you can bypass these workarounds with flags), but there is a strict baseline of D3D11 feature level 11_0 in d3d11_video_decoder.cc
bool D3D11VideoDecoder::GetD3D11FeatureLevel( ComD3D11Device dev, const gpu::GpuDriverBugWorkarounds& gpu_workarounds, D3D_FEATURE_LEVEL* feature_level) { if (!dev || !feature_level) return false; *feature_level = dev->GetFeatureLevel(); if (*feature_level < D3D_FEATURE_LEVEL_11_0) return false; if (gpu_workarounds.limit_d3d11_video_decoder_to_11_0) *feature_level = D3D_FEATURE_LEVEL_11_0; return true; }
And, if you use D3D9 in ANGLE, which is a default for old intel drivers, it will fail even before feature level check on initializing D3D11 device
device_ = get_d3d11_device_cb_.Run(); if (!device_) { // This happens if, for example, if chrome is configured to use // D3D9 for ANGLE. return NotifyError(D3D11Status::Codes::kFailedToGetAngleDevice); }
Try to run with
--ignore-gpu-blocklist --use-angle=d3d11 --disable_d3d11_video_decoder=0or less specific
--ignore-gpu-blocklist --disable-gpu-driver-bug-workarounds --use-angle=d3d11
and see if that helps, but I think it won't because of feature level minimum
-
@gorskii said in Hardware acceleration is not working properly:
Try to run with
--ignore-gpu-blocklist --use-angle=d3d11 --disable_d3d11_video_decoder=0or less specific
--ignore-gpu-blocklist --disable-gpu-driver-bug-workarounds --use-angle=d3d11
and see if that helps, but I think it won't because of feature level minimum
You're right, it didn't work.