|
|
Created:
4 years ago by mbjorge Modified:
4 years ago Reviewers:
chcunningham CC:
chromium-reviews, feature-media-reviews_chromium.org Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionUpdate the Opus test hash for OPUS_FIXED_POINT.
The hash has to be generated from an ARM platform, since the x86 hash does not match.
Committed: https://crrev.com/62379b0de272c8b86174c919e5b50ba66c9e87a3
Cr-Commit-Position: refs/heads/master@{#439525}
Patch Set 1 #
Total comments: 1
Patch Set 2 : Add note that hashes are ARM specific. #Messages
Total messages: 18 (7 generated)
mbjorge@chromium.org changed reviewers: + chcunningham@chromium.org
jc, how did this value get calculated? Is this getting exercised anywhere successfully?
On 2016/12/16 22:28:33, mbjorge wrote: > jc, how did this value get calculated? Is this getting exercised anywhere > successfully? I calculated the original hash values by forcing libopus to use fixed point on my goobuntu machine. I'm surprised to see your hashes differ -- what platform are you using? Is it expected that fixed point calculations would vary across platforms? Its a known issue that we do not have proper test coverage for arm. I've filed this bug when I made the initial change: https://bugs.chromium.org/p/chromium/issues/detail?id=672291 Please start that issue or comment to express your support :)
On 2016/12/16 at 22:37:52, chcunningham wrote: > On 2016/12/16 22:28:33, mbjorge wrote: > > jc, how did this value get calculated? Is this getting exercised anywhere > > successfully? > > I calculated the original hash values by forcing libopus to use fixed point on my goobuntu machine. I'm surprised to see your hashes differ -- what platform are you using? Is it expected that fixed point calculations would vary across platforms? > > Its a known issue that we do not have proper test coverage for arm. I've filed this bug when I made the initial change: > https://bugs.chromium.org/p/chromium/issues/detail?id=672291 > > Please start that issue or comment to express your support :) This is on the Chromecast devices, which are arm based. I am not sure if it's expected for there to be differences across platforms though
On 2016/12/16 22:43:03, mbjorge wrote: > On 2016/12/16 at 22:37:52, chcunningham wrote: > > On 2016/12/16 22:28:33, mbjorge wrote: > > > jc, how did this value get calculated? Is this getting exercised anywhere > > > successfully? > > > > I calculated the original hash values by forcing libopus to use fixed point on > my goobuntu machine. I'm surprised to see your hashes differ -- what platform > are you using? Is it expected that fixed point calculations would vary across > platforms? > > > > Its a known issue that we do not have proper test coverage for arm. I've filed > this bug when I made the initial change: > > https://bugs.chromium.org/p/chromium/issues/detail?id=672291 > > > > Please start that issue or comment to express your support :) > > This is on the Chromecast devices, which are arm based. I am not sure if it's > expected for there to be differences across platforms though I've just re-run the test on Goobuntu with opus fixed-point forced to true. The test using the hashes you're chaning all passed (using the checked in hashes). Interestingly, I had some other tests fail (details below). Do all pipeline integration tests pass for you once you've applied this change? Can you reproduce my goobuntu results? Are you using the same libopus as me (the one checked in to chromium tip of tree)? ---- 3 tests failed: PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (../../media/test/pipeline_integration_test.cc:1068) PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed (../../media/test/pipeline_integration_test.cc:1092) PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed_MediaSource (../../media/test/pipeline_integration_test.cc:1116) Here's the details from one of the failures $ out/Default/media_unittests --gtest_filter=*PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed IMPORTANT DEBUGGING NOTE: batches of tests are run inside their own process. For debugging a test inside a debugger, use the --gtest_filter=<your_test_name> flag along with --single-process-tests. Using sharding settings from environment. This is shard 0/1 Using 1 parallel jobs. Note: Google Test filter = PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed [==========] Running 1 test from 1 test case. [----------] Global test environment set-up. [----------] 1 test from PipelineIntegrationTest [ RUN ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed ../../media/test/pipeline_integration_test.cc:1075: Failure Value of: GetAudioHash() Actual: "-4.57,-5.66,-6.52,-6.29,-4.37,-3.60," Expected: kOpusEndTrimmingHash_1 Which is: "-4.57,-5.66,-6.52,-6.30,-4.37,-3.61," ../../media/test/pipeline_integration_test.cc:1081: Failure Value of: GetAudioHash() Actual: "-11.90,-11.10,-8.26,-7.12,-7.85,-9.99," Expected: kOpusEndTrimmingHash_2 Which is: "-11.91,-11.11,-8.27,-7.13,-7.86,-10.00," ../../media/test/pipeline_integration_test.cc:1088: Failure Value of: GetAudioHash() Actual: "-13.30,-14.37,-13.70,-11.69,-10.20,-10.48," Expected: kOpusEndTrimmingHash_3 Which is: "-13.31,-14.38,-13.70,-11.71,-10.21,-10.49," [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 ms) [----------] 1 test from PipelineIntegrationTest (135 ms total) [----------] Global test environment tear-down [==========] 1 test from 1 test case ran. (135 ms total) [ PASSED ] 0 tests. [ FAILED ] 1 test, listed below: [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed 1 FAILED TEST [35599:35600:1216/154103.198127:950954610645:ERROR:kill_posix.cc(84)] Unable to terminate process group 35601: No such process [1/1] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 ms) 1 test failed: PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (../../media/test/pipeline_integration_test.cc:1068) Tests took 0 seconds.
On 2016/12/16 at 23:47:04, chcunningham wrote: > On 2016/12/16 22:43:03, mbjorge wrote: > > On 2016/12/16 at 22:37:52, chcunningham wrote: > > > On 2016/12/16 22:28:33, mbjorge wrote: > > > > jc, how did this value get calculated? Is this getting exercised anywhere > > > > successfully? > > > > > > I calculated the original hash values by forcing libopus to use fixed point on > > my goobuntu machine. I'm surprised to see your hashes differ -- what platform > > are you using? Is it expected that fixed point calculations would vary across > > platforms? > > > > > > Its a known issue that we do not have proper test coverage for arm. I've filed > > this bug when I made the initial change: > > > https://bugs.chromium.org/p/chromium/issues/detail?id=672291 > > > > > > Please start that issue or comment to express your support :) > > > > This is on the Chromecast devices, which are arm based. I am not sure if it's > > expected for there to be differences across platforms though > > I've just re-run the test on Goobuntu with opus fixed-point forced to true. The test using the hashes you're chaning all passed (using the checked in hashes). > > Interestingly, I had some other tests fail (details below). Do all pipeline integration tests pass for you once you've applied this change? Can you reproduce my goobuntu results? Are you using the same libopus as me (the one checked in to chromium tip of tree)? > > > ---- > > > 3 tests failed: > PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (../../media/test/pipeline_integration_test.cc:1068) > PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed (../../media/test/pipeline_integration_test.cc:1092) > PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed_MediaSource (../../media/test/pipeline_integration_test.cc:1116) > > Here's the details from one of the failures > > $ out/Default/media_unittests --gtest_filter=*PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > IMPORTANT DEBUGGING NOTE: batches of tests are run inside their > own process. For debugging a test inside a debugger, use the > --gtest_filter=<your_test_name> flag along with > --single-process-tests. > Using sharding settings from environment. This is shard 0/1 > Using 1 parallel jobs. > Note: Google Test filter = PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > [==========] Running 1 test from 1 test case. > [----------] Global test environment set-up. > [----------] 1 test from PipelineIntegrationTest > [ RUN ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > ../../media/test/pipeline_integration_test.cc:1075: Failure > Value of: GetAudioHash() > Actual: "-4.57,-5.66,-6.52,-6.29,-4.37,-3.60," > Expected: kOpusEndTrimmingHash_1 > Which is: "-4.57,-5.66,-6.52,-6.30,-4.37,-3.61," > ../../media/test/pipeline_integration_test.cc:1081: Failure > Value of: GetAudioHash() > Actual: "-11.90,-11.10,-8.26,-7.12,-7.85,-9.99," > Expected: kOpusEndTrimmingHash_2 > Which is: "-11.91,-11.11,-8.27,-7.13,-7.86,-10.00," > ../../media/test/pipeline_integration_test.cc:1088: Failure > Value of: GetAudioHash() > Actual: "-13.30,-14.37,-13.70,-11.69,-10.20,-10.48," > Expected: kOpusEndTrimmingHash_3 > Which is: "-13.31,-14.38,-13.70,-11.71,-10.21,-10.49," > [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 ms) > [----------] 1 test from PipelineIntegrationTest (135 ms total) > > [----------] Global test environment tear-down > [==========] 1 test from 1 test case ran. (135 ms total) > [ PASSED ] 0 tests. > [ FAILED ] 1 test, listed below: > [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > > 1 FAILED TEST > [35599:35600:1216/154103.198127:950954610645:ERROR:kill_posix.cc(84)] Unable to terminate process group 35601: No such process > [1/1] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 ms) > 1 test failed: > PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (../../media/test/pipeline_integration_test.cc:1068) > Tests took 0 seconds. > Do all pipeline integration tests pass for you once you've applied this change? Yes indeed > Can you reproduce my goobuntu results? Yes I can. I set use_opus_fixed_point = true in third_party/opus/BUILD.gn, built media_unittests, and PipelineIntegrationTest.BasicPlaybackOpusPrerollExceedsCodecDelay passes using the currently checked in value, and I get those same 3 failures. > Are you using the same libopus as me (the one checked in to chromium tip of tree)? Yup, 1.1.3 from third_party/opus So it seems that the hashes are indeed different between arm vs x86 :/
On 2016/12/17 00:16:55, mbjorge wrote: > On 2016/12/16 at 23:47:04, chcunningham wrote: > > On 2016/12/16 22:43:03, mbjorge wrote: > > > On 2016/12/16 at 22:37:52, chcunningham wrote: > > > > On 2016/12/16 22:28:33, mbjorge wrote: > > > > > jc, how did this value get calculated? Is this getting exercised > anywhere > > > > > successfully? > > > > > > > > I calculated the original hash values by forcing libopus to use fixed > point on > > > my goobuntu machine. I'm surprised to see your hashes differ -- what > platform > > > are you using? Is it expected that fixed point calculations would vary > across > > > platforms? > > > > > > > > Its a known issue that we do not have proper test coverage for arm. I've > filed > > > this bug when I made the initial change: > > > > https://bugs.chromium.org/p/chromium/issues/detail?id=672291 > > > > > > > > Please start that issue or comment to express your support :) > > > > > > This is on the Chromecast devices, which are arm based. I am not sure if > it's > > > expected for there to be differences across platforms though > > > > I've just re-run the test on Goobuntu with opus fixed-point forced to true. > The test using the hashes you're chaning all passed (using the checked in > hashes). > > > > Interestingly, I had some other tests fail (details below). Do all pipeline > integration tests pass for you once you've applied this change? Can you > reproduce my goobuntu results? Are you using the same libopus as me (the one > checked in to chromium tip of tree)? > > > > > > ---- > > > > > > 3 tests failed: > > PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > (../../media/test/pipeline_integration_test.cc:1068) > > PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed > (../../media/test/pipeline_integration_test.cc:1092) > > PipelineIntegrationTest.BasicPlaybackOpusWebmTrimmingHashed_MediaSource > (../../media/test/pipeline_integration_test.cc:1116) > > > > Here's the details from one of the failures > > > > $ out/Default/media_unittests > --gtest_filter=*PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > > IMPORTANT DEBUGGING NOTE: batches of tests are run inside their > > own process. For debugging a test inside a debugger, use the > > --gtest_filter=<your_test_name> flag along with > > --single-process-tests. > > Using sharding settings from environment. This is shard 0/1 > > Using 1 parallel jobs. > > Note: Google Test filter = > PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > > [==========] Running 1 test from 1 test case. > > [----------] Global test environment set-up. > > [----------] 1 test from PipelineIntegrationTest > > [ RUN ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > > ../../media/test/pipeline_integration_test.cc:1075: Failure > > Value of: GetAudioHash() > > Actual: "-4.57,-5.66,-6.52,-6.29,-4.37,-3.60," > > Expected: kOpusEndTrimmingHash_1 > > Which is: "-4.57,-5.66,-6.52,-6.30,-4.37,-3.61," > > ../../media/test/pipeline_integration_test.cc:1081: Failure > > Value of: GetAudioHash() > > Actual: "-11.90,-11.10,-8.26,-7.12,-7.85,-9.99," > > Expected: kOpusEndTrimmingHash_2 > > Which is: "-11.91,-11.11,-8.27,-7.13,-7.86,-10.00," > > ../../media/test/pipeline_integration_test.cc:1088: Failure > > Value of: GetAudioHash() > > Actual: "-13.30,-14.37,-13.70,-11.69,-10.20,-10.48," > > Expected: kOpusEndTrimmingHash_3 > > Which is: "-13.31,-14.38,-13.70,-11.71,-10.21,-10.49," > > [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 > ms) > > [----------] 1 test from PipelineIntegrationTest (135 ms total) > > > > [----------] Global test environment tear-down > > [==========] 1 test from 1 test case ran. (135 ms total) > > [ PASSED ] 0 tests. > > [ FAILED ] 1 test, listed below: > > [ FAILED ] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > > > > 1 FAILED TEST > > [35599:35600:1216/154103.198127:950954610645:ERROR:kill_posix.cc(84)] Unable > to terminate process group 35601: No such process > > [1/1] PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed (135 ms) > > 1 test failed: > > PipelineIntegrationTest.BasicPlaybackOpusOggTrimmingHashed > (../../media/test/pipeline_integration_test.cc:1068) > > Tests took 0 seconds. > > > > Do all pipeline integration tests pass for you once you've applied this > change? > Yes indeed > > > Can you reproduce my goobuntu results? > Yes I can. I set use_opus_fixed_point = true in third_party/opus/BUILD.gn, built > media_unittests, and > PipelineIntegrationTest.BasicPlaybackOpusPrerollExceedsCodecDelay passes using > the currently checked in value, and I get those same 3 failures. > > > > Are you using the same libopus as me (the one checked in to chromium tip of > tree)? > Yup, 1.1.3 from third_party/opus > > So it seems that the hashes are indeed different between arm vs x86 :/ Bummer. This change LGTM - we don't ever used fixed_point on x86, so I'm not into making x86 specific defines.
https://codereview.chromium.org/2579423002/diff/1/media/test/pipeline_integra... File media/test/pipeline_integration_test.cc (right): https://codereview.chromium.org/2579423002/diff/1/media/test/pipeline_integra... media/test/pipeline_integration_test.cc:130: #if defined(OPUS_FIXED_POINT) Can you add a little comment here? NOTE: Hashes are specific to ARM devices. x86 will not match.
On 2016/12/19 at 18:28:14, chcunningham wrote: > https://codereview.chromium.org/2579423002/diff/1/media/test/pipeline_integra... > File media/test/pipeline_integration_test.cc (right): > > https://codereview.chromium.org/2579423002/diff/1/media/test/pipeline_integra... > media/test/pipeline_integration_test.cc:130: #if defined(OPUS_FIXED_POINT) > Can you add a little comment here? > > NOTE: Hashes are specific to ARM devices. x86 will not match. Done
Description was changed from ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash got out of sync; started breaking on cast devices when we rolled our chromium version. ========== to ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash has to be generated from an ARM platform, since the x86 hash does not match. ==========
The CQ bit was checked by mbjorge@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from chcunningham@chromium.org Link to the patchset: https://codereview.chromium.org/2579423002/#ps20001 (title: "Add note that hashes are ARM specific.")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 20001, "attempt_start_ts": 1482172500922490, "parent_rev": "4e2e3e19db1489f9f9a8e62a74d5ab30b9356122", "commit_rev": "998fe02160841d962d495307cc6a3a906d5a652c"}
Message was sent while issue was closed.
Description was changed from ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash has to be generated from an ARM platform, since the x86 hash does not match. ========== to ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash has to be generated from an ARM platform, since the x86 hash does not match. Review-Url: https://codereview.chromium.org/2579423002 ==========
Message was sent while issue was closed.
Committed patchset #2 (id:20001)
Message was sent while issue was closed.
Description was changed from ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash has to be generated from an ARM platform, since the x86 hash does not match. Review-Url: https://codereview.chromium.org/2579423002 ========== to ========== Update the Opus test hash for OPUS_FIXED_POINT. The hash has to be generated from an ARM platform, since the x86 hash does not match. Committed: https://crrev.com/62379b0de272c8b86174c919e5b50ba66c9e87a3 Cr-Commit-Position: refs/heads/master@{#439525} ==========
Message was sent while issue was closed.
Patchset 2 (id:??) landed as https://crrev.com/62379b0de272c8b86174c919e5b50ba66c9e87a3 Cr-Commit-Position: refs/heads/master@{#439525} |