New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 887016 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 28
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

screenshot command can cause flickering in display

Project Member Reported by jkardatzke@chromium.org, Sep 19

Issue description

Chrome version: 71.0.3556.0
OS: Chrome OS 11043.0.0

Repro steps:
1. Log into Chrome OS in dev mode
2. SSH in and run: screenshot --internal foo.png
3. Screen may flicker

Expected: Screen doesn't flicker
Actual: Screen sometimes flickers, leading to inaccurate screenshots

The effect of flickering in the screenshot isn't visible unless I run a Crostini X11 app; but you can see the flickering on the display manually. I've attached an example of the correct screen shot for a test and the one that results sometimes due to the flickering.

Also, if I'm running a Wayland app in Crostini then I never see flickering while that is active.

The flickering can be seen with just Chrome running as well (but I haven't seen it actually appear in a screenshot in that mode yet).

 
screenshot_terminal_x11.png
66.0 KB View Download
screenshot_launcher_x11_demo.png
88.2 KB View Download
Cc: dcasta...@chromium.org djmk@chromium.org mcasas@chromium.org marc...@chromium.org andrescj@chromium.org
Components: OS>Kernel>Graphics
Which device(s) are you seeing this one?
This was on eve, haven't checked on others.
Cc: reve...@chromium.org
I found an even more odd case. If I have a Wayland demo app running in Crostini (my test app just draws blue in a maximized window) and then I run my X11 demo app (which just draws green in a maximized window)....then the screenshot shows all blue. I don't see any flickering when I execute that way...but it's just ignoring the top most app altogether. 

If I bring up the launcher it gets more odd where there's horizontal bands from both apps bleeding through.

I'll attach a few examples of a real picture of the screen and then also a screenshot. This was all on eve.
screenshot_ignores_topmost.png
40.0 KB View Download
actual_screen_ignores_topmost.jpg
2.8 MB View Download
screenshot_with_launcher_bad.png
51.6 KB View Download
actual_screen_with_launcher_bad.jpg
3.2 MB View Download
Owner: jkardatzke@chromium.org
Status: Started (was: Untriaged)
Project Member

Comment 5 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2b323e1e757bfbc5f62bea7bad11744fd688eacc

commit 2b323e1e757bfbc5f62bea7bad11744fd688eacc
Author: Jeffrey Kardatzke <jkardatzke@google.com>
Date: Fri Sep 28 19:12:09 2018

Add autotest private API for taking a screenshot

This is a temporary solution to taking screenshots for tast-tests that
will work properly on ARM devices as well as deal with hardware
overlays. Longer term the plan is to implement this via the DRM API with
a write-back connector and then use that from the CLI screenshot
program.

BUG= chromium:849438 ,chromium:880597, chromium:887016 
TEST=tast run graphics.Screenshot (after updating it to use this)

Change-Id: I3919822599338e4786c715d7b0419742417b83c2
Reviewed-on: https://chromium-review.googlesource.com/1247181
Commit-Queue: Jeffrey Kardatzke <jkardatzke@google.com>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Ben Wells <benwells@chromium.org>
Reviewed-by: Achuith Bhandarkar <achuith@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595173}
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/chrome/browser/chromeos/extensions/autotest_private/DEPS
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/chrome/browser/chromeos/extensions/autotest_private/autotest_private_api.cc
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/chrome/browser/chromeos/extensions/autotest_private/autotest_private_api.h
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/chrome/common/extensions/api/autotest_private.idl
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/chrome/test/data/extensions/api_test/autotest_private/test.js
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/extensions/browser/extension_function_histogram_value.h
[modify] https://crrev.com/2b323e1e757bfbc5f62bea7bad11744fd688eacc/tools/metrics/histograms/enums.xml

Status: Fixed (was: Started)
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/7938385ddbb8683775b47fb2c6efc4f6696c4706

commit 7938385ddbb8683775b47fb2c6efc4f6696c4706
Author: Jeffrey Kardatzke <jkardatzke@google.com>
Date: Tue Oct 02 12:19:19 2018

tast-tests: Use autotest API for screenshots

This is a temporary solution until the CLI screenshot program is updated
to work with ARM devices and also handle hardware overlays.

BUG= chromium:849438 ,chromium:880597, chromium:887016 
TEST=tast run graphics.ScreenshotChrome graphics.ScreenshotCLI
vm.CrostiniStartEverything

Change-Id: Idb908b55097370158a45737a425a896414ea4e93
Reviewed-on: https://chromium-review.googlesource.com/1246690
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Jeffrey Kardatzke <jkardatzke@google.com>
Reviewed-by: Jeffrey Kardatzke <jkardatzke@google.com>

[modify] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/vm/crostini_start_everything.go
[modify] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/vm/subtest/verify_launcher_app.go
[modify] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/vm/subtest/verify_app_from_terminal.go
[modify] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/screenshot/screenshot.go
[add] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/graphics/screenshot_cli.go
[rename] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/graphics/sshot/sshot.go
[add] https://crrev.com/7938385ddbb8683775b47fb2c6efc4f6696c4706/src/chromiumos/tast/local/bundles/cros/graphics/screenshot_chrome.go

Sign in to add a comment