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

Issue 760132 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug-Regression



Sign in to add a comment

pixel_test fails on Windows 10 for video tests

Project Member Reported by geoffl...@chromium.org, Aug 29 2017

Issue description

The gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_DirectComposition_Video_MP4 and gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_Video_MP4 have started failing on the Windows 10 bots across all GPUs on the GPU FYI waterfall.

The Windows 10 Release Nvidia bot has the smallest regression range:
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win10%20Release%20%28NVIDIA%29/builds/3037

There doesn't appear to be any useful output from the logs other than image comparison failing.
 
Cc: -jbau...@chromium.org chcunningham@chromium.org hubbe@chromium.org dalecur...@chromium.org
CCing people who made video related changes in the regression range.
Cc: -hubbe@chromium.org
Owner: hubbe@chromium.org
Status: Assigned (was: Available)
hubbe@ updated the bear.mp4 file used by this test, so it just needs a rebaseline

https://cs.chromium.org/chromium/src/content/test/data/gpu/pixel_video_mp4.html?q=pixel_video_mp4.html&dr

Comment 3 by hubbe@chromium.org, Aug 29 2017

Ironically, I tagged the file because of this test. I'm trying to submit this CL: https://codereview.chromium.org/2874063002/  but it was causing this test to fail on some machines, and tagging the file should fix that. However, I did not expect tagging the file would cause the test to fail on some other machines....
Submitting the CL above might fix the test though.


Comment 4 by kbr@chromium.org, Aug 29 2017

Cc: kbr@chromium.org
I think Win10 takes a different code path than the other platforms for these DirectComposition tests. Let's please get your CL https://codereview.chromium.org/2874063002/ in as quickly as possible, and if the Win10 bots are still failing, let's (1) mark those two tests failing in src/content/test/gpu/gpu_tests/pixel_expectations.py and update their version numbers in src/content/test/gpu/gpu_tests/pixel_test_pages.py ; and then submit a follow-on CL unmarking them as failing. See https://www.chromium.org/developers/testing/gpu-testing#TOC-Updating-and-Adding-New-Pixel-Tests-to-the-GPU-Bots .

Comment 5 by hubbe@chromium.org, Aug 30 2017

Apparently tagging the file was not enough to let me check in https://codereview.chromium.org/2874063002/, it now fails another test in the same test suite as well. I'm going to check the results manually before i mark the tests as failing though.

Comment 6 by kbr@chromium.org, Aug 30 2017

OK. Tell me if you have any trouble. The logs contain pointers to the pixel differences.

Comment 7 by hubbe@chromium.org, Aug 30 2017

The test doesn't fail on my windows machine, with or without the --enable-features=video-blit-color-accuracy flag. (Win10-nvidia)
How can I inspect what happens on the bots?

Comment 8 by hubbe@chromium.org, Sep 1 2017

I tried disabling the test on Win 10, but now one of them fails on linux too.
Which is more than a little odd, because my CL isn't supposed to change what happens on linux. Maybe I need to disable the test for all platforms when I change the version?

Comment 9 by hubbe@chromium.org, Sep 2 2017

I'm doing something wrong, but I don't know what.
I tried disabling the failing tests on all platforms, but the tests keep on failing.
I also see Pixel_DirectComposition_Video_VP9 and Pixel_Video_VP9 started failing here:
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win10%20Release%20%28Intel%20HD%20630%29/builds/486

Can't find anything obvious in the blamelist.
Could this be related?
It happens on the same bear image.
Ah, I think the reason for #11 is tagging the bear + driver update to  22.20.16.4771 from 21.20.16.4627 in build 486.
Cc: jmad...@chromium.org
 Issue 761669  has been merged into this issue.
Project Member

Comment 14 by bugdroid1@chromium.org, Sep 5 2017

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

commit 811b6eabf491a296a8bd73eba1d4cb0a9c173dc4
Author: hubbe <hubbe@chromium.org>
Date: Tue Sep 05 20:01:06 2017

enable video blit color accuracy by default

BUG=671344,  760132 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://chromiumcodereview.appspot.com/2874063002
Cr-Commit-Position: refs/heads/master@{#499721}

[modify] https://crrev.com/811b6eabf491a296a8bd73eba1d4cb0a9c173dc4/content/test/gpu/gpu_tests/pixel_expectations.py
[modify] https://crrev.com/811b6eabf491a296a8bd73eba1d4cb0a9c173dc4/content/test/gpu/gpu_tests/pixel_test_pages.py
[modify] https://crrev.com/811b6eabf491a296a8bd73eba1d4cb0a9c173dc4/media/base/media_switches.cc

There is high probability that CL in #14 caused video related webgl_conformance_d3d9_tests failures here:
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win10%20Release%20%28Intel%20HD%20630%29/builds/529

hubbe@ is investigating.

Errors are like:
expected: 0,255,0 was 0,238,0
expected: 255,0,0 was 255,16,0
so looks like something having to do with wide and narrow ranges.
I can't reproduce this bug locally. How do I run a try job on this bot?

On this bot you can't, it's just 1 machine.
You can log into it to investigate the problem following https://sites.google.com/a/google.com/client3d/documents/chrome-internal-gpu-pixel-wrangling-instructions

Comment 18 by kbr@chromium.org, Sep 7 2017

Let me know if you have any difficulty logging on to the bot. I realize it can be difficult to figure out what's going on on them. The best way to move binaries to the bots is probably to upload an isolate from your machine and launch it on the bot. Since this is D3D9-only and is only happening on this one bot it might be OK to just suppress these failures (though there are a lot of them).

Project Member

Comment 19 by bugdroid1@chromium.org, Sep 8 2017

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

commit b9523ad4dd16c87f55327089553ea1a9c9a012d1
Author: Fredrik Hubinette <hubbe@google.com>
Date: Fri Sep 08 01:18:17 2017

video blit bugfix

Bug:  760132 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ie3b6e91e7b7445bab4091cbc99ceb0e5773274cb
Reviewed-on: https://chromium-review.googlesource.com/655771
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Fredrik Hubinette <hubbe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500466}
[modify] https://crrev.com/b9523ad4dd16c87f55327089553ea1a9c9a012d1/media/gpu/dxva_video_decode_accelerator_win.cc

Project Member

Comment 20 by bugdroid1@chromium.org, Sep 8 2017

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

commit a528ac43227964752b5691e2d8343e4ce4d05ea9
Author: Yuly Novikov <ynovikov@chromium.org>
Date: Fri Sep 08 20:07:30 2017

Revert "video blit bugfix"

This reverts commit b9523ad4dd16c87f55327089553ea1a9c9a012d1.

Reason for revert: Didn't fix Win10 Intel HD 630, but broke 3 other bots

Original change's description:
> video blit bugfix
> 
> Bug:  760132 
> Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
> Change-Id: Ie3b6e91e7b7445bab4091cbc99ceb0e5773274cb
> Reviewed-on: https://chromium-review.googlesource.com/655771
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
> Commit-Queue: Fredrik Hubinette <hubbe@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#500466}

TBR=ynovikov@chromium.org,hubbe@chromium.org

Change-Id: Ie84722fecbccba5ee259de7fa8535c0d22768c42
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  760132 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Reviewed-on: https://chromium-review.googlesource.com/657965
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500643}
[modify] https://crrev.com/a528ac43227964752b5691e2d8343e4ce4d05ea9/media/gpu/dxva_video_decode_accelerator_win.cc

Yep, reverting it seems right.
Wonder if I did something wrong when I tested it locally, because it seemed to help there.

Looks like I had assumed the fixed worked, but I had just missed running it with "--use-angle=d3d9", silly me.

Comment 24 by hubbe@chromium.org, Sep 11 2017

Ok, so this turns out to be a different problem than I thought it was, and it only affects vp9 I think.

Webm/vp9 has two places where the color information can be stored. One is in the frame data, and the other is in the container. It would seem that we currently do not support reading the data from the frame data when we are hardware decoding.

So, a simple fix would be to tag this vp9 video in the container instead, which is probably the recommended way to tag a video anyways. However, that doesn't actually address the underlying problem.

The right way to do this is to have something parse the vp9 frame header and update the color space as needed, but that's not a particularly simple fix and will take a little while to implement.

FWIW, we have a vp9 parser already:

https://cs.chromium.org/chromium/src/media/filters/vp9_parser.h
Project Member

Comment 26 by bugdroid1@chromium.org, Sep 12 2017

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

commit 205cc8310bf03704feffe8ac99a3bfd9343ceda9
Author: Fredrik Hubinette <hubbe@google.com>
Date: Tue Sep 12 23:23:25 2017

media: Parse VP9 streams and extract color space when hardware decoding

(on windows)

Bug:  760132 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I1c4040a2bff958d79f6e8a1fae90309d3492b29f
Reviewed-on: https://chromium-review.googlesource.com/663939
Commit-Queue: Fredrik Hubinette <hubbe@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501449}
[modify] https://crrev.com/205cc8310bf03704feffe8ac99a3bfd9343ceda9/media/base/video_color_space.cc
[modify] https://crrev.com/205cc8310bf03704feffe8ac99a3bfd9343ceda9/media/base/video_color_space.h
[modify] https://crrev.com/205cc8310bf03704feffe8ac99a3bfd9343ceda9/media/gpu/dxva_video_decode_accelerator_win.cc
[modify] https://crrev.com/205cc8310bf03704feffe8ac99a3bfd9343ceda9/media/gpu/dxva_video_decode_accelerator_win.h

Project Member

Comment 28 by bugdroid1@chromium.org, Sep 14 2017

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

commit 3c842711b70d40ff0dd62807886ea88b9c3191e0
Author: Fredrik Hubinette <hubbe@google.com>
Date: Thu Sep 14 17:46:00 2017

reenable video gpu tests

Bug:  760132 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ib76dd02feda382941fd3756621950d27539b75e9
Reviewed-on: https://chromium-review.googlesource.com/665319
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Fredrik Hubinette <hubbe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501987}
[modify] https://crrev.com/3c842711b70d40ff0dd62807886ea88b9c3191e0/content/test/gpu/gpu_tests/pixel_expectations.py

Comment 29 by hubbe@chromium.org, Sep 18 2017

Status: Fixed (was: Assigned)

Sign in to add a comment