OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <ctime> | 5 #include <ctime> |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
9 #include "base/path_service.h" | 9 #include "base/path_service.h" |
10 #include "base/process/launch.h" | 10 #include "base/process/launch.h" |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
82 // devices. Tick 'show disabled devices'. | 82 // devices. Tick 'show disabled devices'. |
83 // 3. You should see a 'stero mix' device - this is what your speakers output. | 83 // 3. You should see a 'stero mix' device - this is what your speakers output. |
84 // Right click > Properties. | 84 // Right click > Properties. |
85 // 4. In the Listen tab for the mix device, check the 'listen to this device' | 85 // 4. In the Listen tab for the mix device, check the 'listen to this device' |
86 // checkbox. Ensure the mix device is the default recording device. | 86 // checkbox. Ensure the mix device is the default recording device. |
87 // 5. Launch chrome and try playing a video with sound. You should see | 87 // 5. Launch chrome and try playing a video with sound. You should see |
88 // in the volume meter for the mix device. Configure the mix device to have | 88 // in the volume meter for the mix device. Configure the mix device to have |
89 // 50 / 100 in level. Also go into the playback tab, right-click Speakers, | 89 // 50 / 100 in level. Also go into the playback tab, right-click Speakers, |
90 // and set that level to 50 / 100. Otherwise you will get distortion in | 90 // and set that level to 50 / 100. Otherwise you will get distortion in |
91 // the recording. | 91 // the recording. |
92 class WebrtcAudioQualityBrowserTest : public WebRtcTestBase { | 92 class WebRtcAudioQualityBrowserTest : public WebRtcTestBase { |
93 public: | 93 public: |
94 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { | 94 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { |
95 PeerConnectionServerRunner::KillAllPeerConnectionServersOnCurrentSystem(); | 95 PeerConnectionServerRunner::KillAllPeerConnectionServersOnCurrentSystem(); |
96 DetectErrorsInJavaScript(); // Look for errors in our rather complex js. | 96 DetectErrorsInJavaScript(); // Look for errors in our rather complex js. |
97 } | 97 } |
98 | 98 |
99 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 99 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { |
100 // This test expects real device handling and requires a real webcam / audio | 100 // This test expects real device handling and requires a real webcam / audio |
101 // device; it will not work with fake devices. | 101 // device; it will not work with fake devices. |
102 EXPECT_FALSE(command_line->HasSwitch( | 102 EXPECT_FALSE(command_line->HasSwitch( |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
370 return true; | 370 return true; |
371 } | 371 } |
372 | 372 |
373 #if defined(OS_LINUX) || defined(OS_WIN) | 373 #if defined(OS_LINUX) || defined(OS_WIN) |
374 // Only implemented on Linux and Windows for now. | 374 // Only implemented on Linux and Windows for now. |
375 #define MAYBE_MANUAL_TestAudioQuality MANUAL_TestAudioQuality | 375 #define MAYBE_MANUAL_TestAudioQuality MANUAL_TestAudioQuality |
376 #else | 376 #else |
377 #define MAYBE_MANUAL_TestAudioQuality DISABLED_MANUAL_TestAudioQuality | 377 #define MAYBE_MANUAL_TestAudioQuality DISABLED_MANUAL_TestAudioQuality |
378 #endif | 378 #endif |
379 | 379 |
380 IN_PROC_BROWSER_TEST_F(WebrtcAudioQualityBrowserTest, | 380 IN_PROC_BROWSER_TEST_F(WebRtcAudioQualityBrowserTest, |
381 MAYBE_MANUAL_TestAudioQuality) { | 381 MAYBE_MANUAL_TestAudioQuality) { |
382 #if defined(OS_WIN) | 382 #if defined(OS_WIN) |
383 if (base::win::GetVersion() < base::win::VERSION_VISTA) { | 383 if (base::win::GetVersion() < base::win::VERSION_VISTA) { |
384 // It would take work to implement this on XP; not prioritized right now. | 384 // It would take work to implement this on XP; not prioritized right now. |
385 LOG(ERROR) << "This test is not implemented for Windows XP."; | 385 LOG(ERROR) << "This test is not implemented for Windows XP."; |
386 return; | 386 return; |
387 } | 387 } |
388 #endif | 388 #endif |
389 ASSERT_TRUE(HasAllRequiredResources()); | 389 ASSERT_TRUE(HasAllRequiredResources()); |
390 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); | 390 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
449 &raw_mos, &mos_lqo)); | 449 &raw_mos, &mos_lqo)); |
450 | 450 |
451 perf_test::PrintResult("audio_pesq", "", "raw_mos", raw_mos, "score", true); | 451 perf_test::PrintResult("audio_pesq", "", "raw_mos", raw_mos, "score", true); |
452 perf_test::PrintResult("audio_pesq", "", "mos_lqo", mos_lqo, "score", true); | 452 perf_test::PrintResult("audio_pesq", "", "mos_lqo", mos_lqo, "score", true); |
453 | 453 |
454 EXPECT_TRUE(base::DeleteFile(recording, false)); | 454 EXPECT_TRUE(base::DeleteFile(recording, false)); |
455 EXPECT_TRUE(base::DeleteFile(trimmed_recording, false)); | 455 EXPECT_TRUE(base::DeleteFile(trimmed_recording, false)); |
456 | 456 |
457 ASSERT_TRUE(peerconnection_server_.Stop()); | 457 ASSERT_TRUE(peerconnection_server_.Stop()); |
458 } | 458 } |
OLD | NEW |