Issue metadata
Sign in to add a comment
|
Web camera picture rubbish in M57 and M58
Reported by
graemehe...@agbarr.co.uk,
Apr 9 2017
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; CrOS armv7l 9202.64.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.146 Safari/537.36 Platform: 9202.64.0 (Official Build) stable-channel veyron_mickey Example URL: Steps to reproduce the problem: 1. open camera 2. open meets 3. try test my web cam What is the expected behavior? picture should be 720p What went wrong? image is rubbish, contrast too high or too dark, red or yellow ! Camera works fine on PC,MAC or Chromebook, but not on bit wotrked great on os56, dies on os57 Did this work before? Yes os56 Is it a problem with Flash or HTML5? N/A Does this work in other browsers? N/A Chrome version: 57.0.2987.146 Channel: stable OS Version: 9202.64.0 Flash Version: Shockwave Flash 25.0 r0 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: Enabled Native GpuMemoryBuffers: Software only. Hardware acceleration disabled Panel Fitting: Unavailable Rasterization: Software only. Hardware acceleration disabled Video Decode: Hardware accelerated Video Encode: Hardware accelerated VPx Video Decode: Hardware accelerated WebGL: Hardware accelerated WebGL2: Hardware accelerated Driver Bug Workarounds clear_uniforms_before_first_program_use disable_discard_framebuffer disable_framebuffer_cmaa disable_post_sub_buffers_for_onscreen_surfaces scalarize_vec_and_mat_constructor_args use_virtualized_gl_contexts Problems Detected Chrome OS panel fitting is only supported for Intel IVB and SNB Graphics Controllers Disabled Features: panel_fitting The Mali-Txxx driver does not guarantee flush ordering: 154715, 10068, 269829, 294779, 285292 Applied Workarounds: use_virtualized_gl_contexts Framebuffer discarding causes jumpy scrolling on Mali drivers: 301988 Applied Workarounds: disable_discard_framebuffer 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 The Mali-Txxx driver hangs when reading from currently displayed buffer: 457511 Applied Workarounds: disable_post_sub_buffers_for_onscreen_surfaces Limited enabling of Chromium GL_INTEL_framebuffer_CMAA: 535198 Applied Workarounds: disable_framebuffer_cmaa Disable KHR_blend_equation_advanced until cc shaders are updated: 661715 Accelerated rasterization has been disabled, either via blacklist, about:flags or the command line. Disabled Features: rasterization Native GpuMemoryBuffers have been disabled, either via about:flags or command line. Disabled Features: native_gpu_memory_buffers Version Information Data exported 09/04/2017, 20:59:57 Chrome version Chrome/57.0.2987.146 Operating system Linux 3.14.0 Software rendering list version 12.13 Driver bug list version 9.29 ANGLE commit id c1a5d16e964a 2D graphics backend Skia/57 0 Command Line Args --ppapi-flash-path=/opt/google/chrome/pepper/libpepflashplayer.so --ppapi-flash-version=25.0.0.148 --ui-prioritize-in-gpu-process --use-gl=egl --gpu-sandbox-failures-fatal=yes --gpu-sandbox-start-early --enable-logging --log-level=1 --use-cras --enable-wayland-server --user-data-dir=/home/chronos --max-unused-resource-memory-usage-percentage=5 --login-profile=user --aura-legacy-power-button --default-wallpaper-large=/usr/share/chromeos-assets/wallpaper/oem_large.jpg --default-wallpaper-small=/usr/share/chromeos-assets/wallpaper/oem_small.jpg --default-wallpaper-is-oem --guest-wallpaper-large=/usr/share/chromeos-assets/wallpaper/guest_large.jpg --guest-wallpaper-small=/usr/share/chromeos-assets/wallpaper/guest_small.jpg --enable-prefixed-encrypted-media --enable-consumer-kiosk --enterprise-enrollment-initial-modulus=15 --enterprise-enrollment-modulus-limit=19 --oobe-bootstrapping-slave --login-manager --first-exec-after-boot --vmodule=screen_locker=2,webui_screen_locker=2,lock_state_controller=2,webui_login_view=2,power_button_observer=2,*/ui/display/manager/chromeos/*=1,*/ash/display/*=1,*/ui/ozone/*=1,*zygote*=1,*plugin*=2,auto_enrollment_controller=1,*chromeos/login/*=1 Driver Information Initialization time 38 In-process GPU false Passthrough Command Decoder false Sandboxed true GPU0 VENDOR = 0x0000, DEVICE= 0x0000 Optimus false AMD switchable false Driver vendor ES Driver version 3.1 Driver date Pixel shader version 3.10 Vertex shader version 3.10 Max. MSAA samples 8 Machine model name Machine model version GL_VENDOR ARM GL_RENDERER Mali-T760 GL_VERSION OpenGL ES 3.1 v1.r12p0-04rel0.dfb06b468ceb6634dbcb6aceab037cc5 GL_EXTENSIONS GL_ARM_rgba8 GL_ARM_mali_shader_binary GL_OES_depth24 GL_OES_depth_texture GL_OES_depth_texture_cube_map GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_EXT_read_format_bgra GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture GL_OES_standard_derivatives GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3 GL_OES_EGL_sync GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_mapbuffer GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_type_2_10_10_10_REV GL_OES_fbo_render_mipmap GL_OES_element_index_uint GL_EXT_shadow_samplers GL_OES_texture_compression_astc GL_KHR_texture_compression_astc_ldr GL_KHR_texture_compression_astc_hdr GL_KHR_texture_compression_astc_sliced_3d GL_KHR_debug GL_EXT_occlusion_query_boolean GL_EXT_disjoint_timer_query GL_EXT_blend_minmax GL_EXT_discard_framebuffer GL_OES_get_program_binary GL_OES_texture_3D GL_EXT_texture_storage GL_EXT_multisampled_render_to_texture GL_OES_surfaceless_context GL_OES_texture_stencil8 GL_EXT_shader_pixel_local_storage GL_ARM_shader_framebuffer_fetch GL_ARM_shader_framebuffer_fetch_depth_stencil GL_ARM_mali_program_binary GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT_texture_sRGB_decode GL_OES_texture_storage_multisample_2d_array GL_OES_shader_image_atomic GL_EXT_robustness GL_EXT_draw_buffers_indexed GL_OES_draw_buffers_indexed GL_EXT_texture_border_clamp GL_OES_texture_border_clamp GL_EXT_texture_cube_map_array GL_OES_texture_cube_map_array GL_OES_sample_variables GL_OES_sample_shading GL_OES_shader_multisample_interpolation GL_EXT_shader_io_blocks GL_OES_shader_io_blocks GL_EXT_tessellation_shader GL_OES_tessellation_shader GL_EXT_primitive_bounding_box GL_OES_primitive_bounding_box GL_EXT_geometry_shader GL_OES_geometry_shader GL_ANDROID_extension_pack_es31a GL_EXT_gpu_shader5 GL_OES_gpu_shader5 GL_EXT_texture_buffer GL_OES_texture_buffer GL_EXT_copy_image GL_OES_copy_image GL_EXT_color_buffer_half_float GL_EXT_color_buffer_float GL_OVR_multiview GL_OVR_multiview2 GL_OVR_multiview_multisampled_render_to_texture Disabled Extensions GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent Window system binding vendor ARM Window system binding version 1.4 Midgard-"r12p0-04rel0" Window system binding extensions EGL_KHR_partial_update EGL_EXT_swap_buffers_with_damage EGL_KHR_swap_buffers_with_damage EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers EGL_KHR_image_pixmap EGL_KHR_config_attribs EGL_KHR_image EGL_KHR_image_base EGL_KHR_fence_sync EGL_KHR_wait_sync EGL_KHR_gl_colorspace EGL_KHR_get_all_proc_addresses EGL_IMG_context_priority EGL_ARM_pixmap_multisample_discard EGL_ARM_implicit_external_sync EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_create_context EGL_KHR_surfaceless_context EGL_KHR_gl_texture_cubemap_image EGL_EXT_create_context_robustness 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 GPU_READ RGBA_4444 Software only RGBX_8888 GPU_READ, SCANOUT RGBA_8888 GPU_READ BGRX_8888 GPU_READ, SCANOUT BGRA_8888 GPU_READ YVU_420 GPU_READ YUV_420_BIPLANAR Software only UYVY_422 Software only Log Messages [957:957:0118/085006.283334:ERROR:gles2_cmd_decoder.cc(2459)] : [GroupMarkerNotSet( crbug.com/242999 )!:6813493D]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : BackFramebuffer::Create: <- error from previous GL command [957:957:0118/085006.288544:ERROR:texture_manager.cc(3224)] : [.DisplayCompositor-0x3dfc6d80]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glTexImage2D: <- error from previous GL command [957:993:0118/085006.337013:VERBOSE1:drm_device_manager.cc(54)] : Could not initialize DRM device for /sys/devices/platform/vgem/drm/card0 [957:993:0118/085006.946643:VERBOSE1:drm_display.cc(102)] : DRM configuring: device=/sys/devices/display-subsystem.3/drm/card1 crtc=21 connector=27 origin=0,0 size=1360x768 [957:957:0409/114324.067227:ERROR:interface_registry.cc(203)] : Failed to locate a binder for interface: chrome::mojom::ResourceUsageReporter requested by: exposed by: via InterfaceProviderSpec "service_manager:connector". [957:957:0409/114324.067403:WARNING:interface_registry.cc(210)] : InterfaceRegistry(service_manager:connector): --> InterfaceRegistry is not yet bound to a pipe. [957:993:0409/115719.105300:WARNING:screen_manager.cc(101)] : Display controller (crtc=21) already present. [957:993:0409/115719.106443:VERBOSE1:drm_display.cc(102)] : DRM configuring: device=/sys/devices/display-subsystem.3/drm/card1 crtc=21 connector=27 origin=0,0 size=0x0 [957:993:0409/204245.526111:WARNING:screen_manager.cc(101)] : Display controller (crtc=21) already present. [957:993:0409/204245.527300:VERBOSE1:drm_display.cc(102)] : DRM configuring: device=/sys/devices/display-subsystem.3/drm/card1 crtc=21 connector=27 origin=0,0 size=1360x768 if I revert the OS to OS56 camera works fine again
,
Apr 11 2017
I've seen other reports on this happening on Chromebits starting in M57. +Alberto, who in your team could look into this?
,
Apr 11 2017
,
Apr 11 2017
Same happened to me with my Chromebit. I bought it 2 weeks ago and with the build the device shipped with (unfortunately didn't note it down), the USB cam was working perfectly. After installing the update, though, to , the image became red/yellow, over saturated, too bright and with too much contrast. I also notice this gets worse as the camera continues to be on. Feels like the software is trying to compensate the image wrongly. I tested this with Logitech 270, 170 and 920 as well as Microsoft Cinema Lifecam. Same behavior across the board. 58.0.3029.40 beta Piattaforma 9334.28.0 (Official Build) beta-channel veyron_mickey Firmware Google_Veyron_Mickey.6588.197.0 V8 5.8.283.21 User-agent Mozilla/5.0 (X11; CrOS armv7l 9334.28.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.40 Safari/537.36
,
Apr 11 2017
The most likely culprit is a combination between Os/driver and the routine that resets the user/camera controls to their default values [1] [1] https://cs.chromium.org/chromium/src/media/capture/video/linux/v4l2_capture_delegate.cc?sq=package:chromium&dr=C&l=207
,
Apr 11 2017
Ooops #5 was too fast :-) resetting the user/camera controls to their default values provided by UVC suffers from two problems: - flaky USB or device communications, which makes the driver ioctl()s fail in surprising ways (like, saying it has failed when having succeeded). - the USB-provided default value not being accurate or even legal. In this case what we could do is to blacklist this camera model, by its USB identifier. Could anyone dump here the contents of chrome://media-internals/, "video capture" tab, please?
,
Apr 11 2017
But it's every camera with the Chromebit ?
,
Apr 11 2017
,
Apr 11 2017
Issue 677573 has been merged into this issue.
,
Apr 11 2017
,
Apr 11 2017
,
Apr 12 2017
,
Apr 12 2017
I've tested it with the C920 and the same behavior is observed. Also notice this was working previously...
,
Apr 18 2017
I tested this on a veyron_minnie device with a Logitech C930 and found that the issue started with M57 and somehow disappeared with M59. I confirmed that the issue is related to the camera settings being reset at [1]. When I commented this out, the symptoms disappeared. Since there don't seem to be any significant changes in that code between the latest M57 and the earliest M59 builds, I assume something must have changed in the non-Chromium parts of Chromium OS that fixed the issue starting in M59. It would be nice if we could confirm this theory and understand what made the difference. @posciak: could you help with this please? Who would be the right person to ask about this? @affected users: If possible, could you please try an M59 build and check if it fixes the problem for your configuration as well?
,
Apr 18 2017
,
Apr 18 2017
I am wondering if, as a temporary mitigation (maybe for M58?), we could store a (static, per-device) flag when the camera settings have been changed via SetPhotoOptions() [1] and then only call ResetUserAndCameraControlsToDefault() at [2] if this flag indicates that it is needed. @mcasas: What are your thoughts on this? [1] https://cs.chromium.org/chromium/src/media/capture/video/linux/v4l2_capture_delegate.cc?sq=package:chromium&dr=C&l=641 [2] https://cs.chromium.org/chromium/src/media/capture/video/linux/v4l2_capture_delegate.cc?sq=package:chromium&dr=C&l=207
,
Apr 18 2017
Tested and working on M59 Dev Channel release. Bit jumpy but that's just the dev release I expect Thanks
,
Apr 18 2017
This issue was observed on Minnie, Jaq and Jerry with M57 and M58. Verified that it is working on Jerry with M59 59.0.3071.8 / 9460.1.0 dev
,
May 4 2017
Is there an ETA on a fix for this? Thanks
,
May 4 2017
The issue appears to be fixed in M59, which is currently in beta. With M58 already in stable, we may not be able to get a fix in for M58 anymore. If you get the chance, could you please check on M59 and see if it fixes the issue for you?
,
May 5 2017
I have to stay on the Dev channel OS59 for camera to work. Dev channel causes random reboots though. So 1 month without a decent working device coming up. Tried the Beta channel is gave me OS58 still.
,
May 23 2017
Since we won't be able to get a fix for this into M58, I am marking this as won't fix.
,
May 23 2017
just to clarify, is this fix coming to a later release?
,
May 23 2017
It appears that the issue is fixed by newer firmware in M59. If you can, please try M59 and check if it works for your configuration. If it doesn't, please let me know and I'll reopen this.
,
May 23 2017
I'll check it out and let you know.
,
May 24 2017
Tentatively updating the title.
,
Jun 12 2017
Just to clarify, received version 59 but didn't solve anything. Maybe just made the webcam more unreliable (shutting the video off even when the webcam is on sometimes). This is becoming really frustrating. Basically one day after purchasing the product it became totally useless and no fix after a quarter. Terrible customer experience. Pix attached. Any hope this will be fixed?
,
Jun 12 2017
Sorry, attached only one image. Attaching the other here:
,
Jun 12 2017
59 for me has issues with meet, the picture, although better, is slow and jumpy, and I get dropped off after around 15 minutes. We were looking to adopt this device across the business, but I've had no option other than to delay that project.
,
Jun 12 2017
Actually, I've checked again using also meets and I can confirm now, after my camera's LED powers up I directly get a message saying 'camera error' in both Hangouts and Meets. So I guess we went from good to bad to worse.
,
Jun 12 2017
leonardo.rossetti@: I am sorry to hear that 59 didn't solve the issue for you. In #4, you reported that you tried several different webcams. Do they still all show the same symptoms? To make sure there is no separate issue with Hangouts or Meets, please confirm that the issue reproduces when checking the video here: https://webrtc.github.io/samples/src/content/getusermedia/gum/ If it does, could you please post the names and usb ids of the webcams you tried? This information can be found at chrome://media-internals in the VideoCapture tab and should look similar to this (example for a Logitech C930): "Logitech Webcam C930e (046d:0843)". graemehendry@: According to #22, the issue with the colors and contrast you reported in #1 was fixed for you with 59. It sounds like the issues you mention in #34 are different. Could you please confirm?
,
Jun 15 2017
Ok, so: - the issue is happening also at the test URL you provided - the webcam I tried is Microsoft® LifeCam Cinema(TM) (045e:075d) - can't try more as I've already accumulated several credit cards at local retailers (in Italy they won't refund you if you return an item) and can't spend more money on of for this device - I am attaching further details including a picture of the room and an image of the room through webcam - if the above wasn't enough to make me regret the purchase, now hangouts doesn't even wanna use my cam (the camera app and other sites use it normally) I am not able to estimate how many Chromebits were sold and what % of them uses webcams and have this issue but I fear this issue will never be prioritized and solved. disappointing given the lifecycle of these products. And that it was perfectly working when purchased.
,
Jun 15 2017
Files attached here:
,
Jun 16 2017
We are currently trying to repro to confirm that 59 did indeed not fix the issue for all devices. Preliminary raising priority to 1.
,
Jun 16 2017
I just tested on a Chromebit (veyron_mickey) running 59.0.3071.91 and testing https://webrtc.github.io/samples/src/content/devices/input-output/ with the following cameras: Logitech UVC Camera (046d:0990) Logitech C920 (046d:082d) Logitech C930e (046d:0843) Microsoft Lifecam VX-200 (045e:0761) Microsoft Lifecam HD-3000 (045e:0779) The result is that the Logitech cameras appear to work fine, but the Microsoft ones only delivered a black image. For the VX-200 the black image resized itself after about 5 seconds. For the HD-3000 it stayed at the default. Unless this is a new issue, it is likely that M59 fixed the symptoms for the Logitech cameras but not for the Microsoft ones.
,
Jun 16 2017
There is an existing issue for Blank video with Microsoft camera in https://webrtc.github.io/samples/src/content/devices/input-output/ page : https://bugs.chromium.org/p/chromium/issues/detail?id=593513
,
Jun 16 2017
Cool. Let me reiterate this was working perfectly with Chromebit just out of the box. Thanks!
,
Jun 21 2017
I did more tests on the Chromebit (veyron_mickey) with the same set of cameras
listed in #40 and the following software versions:
Chrome OS Version Chrome Version Channel
8872.76.0 55.0.2883.105 Stable
9000.97.0 56.0.2924.121 Stable
9202.64.0 57.0.2987.146 Stable
9334.74.0 58.0.3029.145 Stable
9460.60.0 59.0.3071.91 Beta
9592.22.00 60.0.3112.34 Beta
9657.0.0 61.0.3113.0 Dev
9657.0.0 M61 local build with image capture controls disabled
Some interesting things I learned:
1.) The LifeCam VC-2000 worked on neither of the builds.
2.) The Logitech cameras worked fine on all builds except for Chrome 57 where
they had the issue that was originally reported here. The 58 build I tested
did not have that issue. Maybe it was a never version of 58 that already
had fixes.
3.) The LifeCam HD-3000 does not work when testing with
https://webrtc.github.io/samples/src/content/devices/input-output/
But it does work when testing with
https://webrtc.github.io/samples/src/content/getusermedia/gum/
4.) The LifeCam HD-3000 worked fine when I tested builds in the following order:
61, 58, 56, 55. When I tried 57 after that, it showed the same symptoms as
the other cameras. But different from them, it did not recover when I moved
on to 59, 60, and even when I went back to the 61 build where it had worked
before. The image was always too bright. Sometimes it started out okay but
then quickly adjusted back to being too bright. I tried using the camera
on a Linux desktop, on a MacBook (with Skype) and a Windows 10 laptop
(Camera app) and it still had that issue. By adjusting the camera brightness
control in the Win 10 Camera app, I could get it back to a proper picture.
However, after restarting the app the setting would be back to too bright.
It almost appears like a default value was overwritten in some persistent
camera memory.
,
Jul 1 2017
Hello there, I was just wondering if there was any update on this or if this won't fix. Leo
,
Jul 2 2017
Based on the tests in #43, the reported issue (which caused all webcams I tested to use wrong settings for their controls) appears to have been fixed with the Chrome OS versions 9460.1.0 or higher. The LifeCam VC-2000 does not appear to have worked in earlier versions as well, so it does not look like there is a regression there. As a result of the above considerations, I am going to mark the tracked issue as fixed. leonard.rossetti@: I acknowledge your reports of still having seen issues in Chrome 59 with one particular LifeCam model, but based on the tests in #43 I have to conclude that these have probably been caused by something else, e.g. either the Chrome OS version that came with the updated Chrome did not yet have the fix (i.e. a Chrome OS version < 9460.1.0), or the camera did not refresh its default values. It sounded like you may no longer have access to a Chromebit, but in case you do and still see a similar issue, please open a new bug entry for a separate investigation.
,
Jul 2 2017
I do have access to a Chromebit and: 1. Still lifecam doesn't work properly with that ( I attached all the details just a couple of weeks ago) 2. The webcam used to work perfectly. There has been a regression.
,
Jul 5 2017
re #46: I filed this as new issue tracker entry: https://crbug.com/739407
,
Jan 22 2018
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by dalecur...@chromium.org
, Apr 10 2017