Issue metadata
Sign in to add a comment
|
freeze frames and no audio support in html 5 video
Reported by
miriam.p...@gmail.com,
Sep 8 2017
|
||||||||||||||||||||||||
Issue descriptionExample URL: cd.via4all.de/ruehrkuchen/story_html5.html Steps to reproduce the problem: 1. install Version 60.* of Androic chrome 2. got to the URL below 3. start the video / subvideos in courses. What is the expected behavior? - no freeze frames - you can hear the sourndtrack (voice) What went wrong? - no audio - the video freezes sometimes Did this work before? Yes android chrome version 57 works well Is it a problem with Flash or HTML5? HTML5 Does this work in other browsers? Yes Chrome version: 60.0.3112.113 Channel: stable OS Version: 5, 6.0.1, 7 Flash Version: -- Contents of chrome://gpu: Graphics Feature Status • Canvas: Hardware accelerated • Flash: Hardware accelerated • Flash Stage3D: Hardware accelerated • Flash Stage3D Baseline profile: Hardware accelerated • Compositing: Hardware accelerated • Multiple Raster Threads: Disabled • Native GpuMemoryBuffers: Software only. Hardware acceleration disabled • Rasterization: Hardware accelerated • Video Decode: Hardware accelerated • Video Encode: Hardware accelerated • VPx Video Decode: Hardware accelerated • WebGL: Hardware accelerated Driver Bug Workarounds • clear_uniforms_before_first_program_use • disable_chromium_framebuffer_multisample • disable_depth_texture • disable_framebuffer_cmaa • disable_program_cache • disable_timestamp_queries • force_cube_map_positive_x_allocation • max_copy_texture_chromium_size_1048576 • max_texture_size_limit_4096 • scalarize_vec_and_mat_constructor_args • unbind_egl_context_to_flush_driver_caches • use_virtualized_gl_contexts • wake_up_gpu_before_drawing Problems Detected • Disable depth textures on Android with Qualcomm GPUs Applied Workarounds: disable_depth_texture • Non-virtual contexts on Qualcomm sometimes cause out-of-order frames: 289461 Applied Workarounds: use_virtualized_gl_contexts • The first draw operation from an idle state is slow: 309734 Applied Workarounds: wake_up_gpu_before_drawing • ES3 MSAA is broken on Qualcomm Applied Workarounds: disable_chromium_framebuffer_multisample • Clear uniforms before first program use on all platforms: 124764, 349137 Applied Workarounds: clear_uniforms_before_first_program_use • Always rewrite vec/mat constructors to be consistent: 398694 Applied Workarounds: scalarize_vec_and_mat_constructor_args • EXT_disjoint_timer_query fails after 2 queries on adreno 3xx in lollypop: 477514 Applied Workarounds: disable_timestamp_queries • glFinish doesn't clear caches on Android: 509727 Applied Workarounds: unbind_egl_context_to_flush_driver_caches • Program binaries contain incorrect bound attribute locations on Adreno 3xx GPUs: 510637 Applied Workarounds: disable_program_cache • Android Adreno crashes on binding incomplete cube map texture to FBO: 518889 Applied Workarounds: force_cube_map_positive_x_allocation • CHROMIUM_copy_texture with 1MB copy per flush to avoid unwanted cache growth on Adreno: 542478 Applied Workarounds: max_copy_texture_chromium_size_1048576 • Limit max texure size to 4096 on all of Android Applied Workarounds: max_texture_size_limit_4096 • Limited enabling of Chromium GL_INTEL_framebuffer_CMAA: 535198 Applied Workarounds: disable_framebuffer_cmaa • Raster is using a single thread. Disabled Features: multiple_raster_threads • Native GpuMemoryBuffers have been disabled, either via about:flags or command line. Disabled Features: native_gpu_memory_buffers Version Information Data exported 8.9.2017, 08:52:42 Chrome version Chrome/55.0.2883.84 Operating system Android 6.0.1 Software rendering list version 11.17 Driver bug list version 9.15 ANGLE commit id 4d208abb1926 2D graphics backend Skia/55 d1740f81c843c65acd58d1b571ce94b90fee99d0 Command Line Args --top-controls-show-threshold=0.27 --top-controls-hide-threshold=0.17 --enable-pinch --enable-viewport --enable-overlay-scrollbar --validate-input-event-stream --enable-longpress-drag-selection --touch-selection-strategy=direction --disable-gpu-process-crash-limit --main-frame-resizes-are-orientation-changes --disable-composited-antialiasing --ui-prioritize-in-gpu-process --profiler-timing=0 --prerender-from-omnibox=enabled --enable-dom-distiller --flag-switches-begin --flag-switches-end --enable-instant-extended-api Driver Information Initialization time 435 In-process GPU false Sandboxed false GPU0 VENDOR = 0x0000 [Qualcomm], DEVICE= 0x0000 [Adreno (TM) 306] Optimus false AMD switchable false Driver vendor Driver version 140.0 Driver date Pixel shader version 3.00 Vertex shader version 3.00 Max. MSAA samples 4 Machine model name SM-T550 Machine model version GL_VENDOR Qualcomm GL_RENDERER Adreno (TM) 306 GL_VERSION OpenGL ES 3.0 V@140.0 AU@ (GIT@Ia10634f51b) GL_EXTENSIONS GL_AMD_compressed_ATC_texture GL_AMD_performance_monitor GL_AMD_program_binary_Z400 GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_robustness GL_EXT_texture_format_BGRA8888 GL_EXT_texture_type_2_10_10_10_REV GL_NV_fence GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth_texture GL_OES_depth24 GL_OES_EGL_image GL_OES_EGL_sync GL_OES_EGL_image_external GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_fragment_precision_high GL_OES_get_program_binary GL_OES_packed_depth_stencil GL_OES_depth_texture_cube_map GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_3D GL_OES_texture_float GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_vertex_type_10_10_10_2 GL_OES_vertex_array_object GL_QCOM_alpha_test GL_QCOM_binning_control GL_QCOM_driver_control GL_QCOM_perfmon_global_mode GL_QCOM_extended_get GL_QCOM_extended_get2 GL_QCOM_tiled_rendering GL_QCOM_writeonly_rendering GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT_texture_sRGB_decode GL_EXT_texture_filter_anisotropic GL_EXT_multisampled_render_to_texture GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_disjoint_timer_query Disabled Extensions GL_OES_depth_texture Window system binding vendor Window system binding version Window system binding extensions Direct rendering Yes Reset notification strategy 0x8252 GPU process crash count 0 Compositor Information Tile Update Mode One-copy Partial Raster Enabled GpuMemoryBuffers Status ATC Software only ATCIA Software only DXT1 Software only DXT5 Software only ETC1 Software only R_8 Software only RG_88 Software only BGR_565 Software only RGBA_4444 Software only RGBX_8888 Software only RGBA_8888 Software only BGRX_8888 Software only BGRA_8888 Software only YVU_420 Software only YUV_420_BIPLANAR Software only UYVY_422 Software only
,
Sep 8 2017
Please provide the device details.
,
Sep 9 2017
Issue repros on Nexus5X/ N2G48E, on latest chrome stable: 60.0.3112.116. Last good build 56.0.2924.122, I will provide per CL bisect info asap.
,
Sep 11 2017
Device details: Sony Xperia Tablet SGP621, Samsung Galaxy Tab A SM-T550, Samsung Galaxy Tab A (2016) and some others. It seems to be a general problem, not depending on divices.
,
Sep 11 2017
(devices.. not divices... sorry)
,
Sep 11 2017
Able to reproduce the issue on Samsung J710 (Android 6.0) using Chrome Stable# 61.0.3163.81. This is a regression issue in M57. Below is the bisect info -- Chrome Good Build -- 57.0.2952.0 (Revision: 438707) Chrome Bad Build -- 57.0.2953.0 (Revision: 438989) Using per-revision bisect assigning to the concern owner -- You are looking for a change made after 438986(GOOD), but before 438987(BAD). Suspecting Commit# https://chromium.googlesource.com/chromium/src/+/f58de349230213827cd1e057d10b7a61411c328a @rtoy -- Could you please look into the issue, kindly re-assign if this is not related to your changes. Please find the logs and screen recording in the below URL -- go/chrome-androidlogs/763269 Thank You.
,
Sep 13 2017
,
Sep 15 2017
The suspected commit is irrelevant, only removing the webkit prefix. This appears to be a user-gesture problem. I see the following console messages: player_compiled.js:2 Failed to execute 'play' on 'HTMLMediaElement': API can only be initiated by a user gesture. player_compiled.js:2 Uncaught (in promise) DOMException: play() can only be initiated by a user gesture. Assigning to mlamouri@ for further triage on user gestures.
,
Sep 15 2017
Seeing change in HTMLMediaElement in the regression range, may this is the suspect. Not sure though. https://chromium.googlesource.com/chromium/src/+/af29d4183dd123c234c142edbb818180ce0529ab
,
Sep 15 2017
The commit mentioned in Comment 9 should be irrelevant. It adds the check of whether video covers most of the viewport ONLY when tab mirroring starts.
,
Sep 19 2017
This seems to be working as intended. The only possible change that could have created this regression is if the user gesture definition had changed in a way that would break this website. The best I can think of is if `setTimeout()` rules were strengthen as I can see a call to `setTimeout()` in the stack.
,
Sep 19 2017
I don't know of any changes in user gestures around setTimeout on M57. Code search doesn't seem to suggest any significant changes either. Adding Rick in case he has any clue. Other possible cause could be Promise related changes too, but I can't comment without a through code search since I didn't work on user gestures back in M57.
,
Oct 25 2017
It seems the site is trying to play a media on touchstart, which is not considered to be a user gesture. So mlamouri@'s observation is correct, this is WAI. |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by miriam.p...@gmail.com
, Sep 8 2017