| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <vector> | 5 #include <vector> |
| 6 | 6 |
| 7 #include "base/environment.h" | 7 #include "base/environment.h" |
| 8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
| 9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| (...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 505 #endif | 505 #endif |
| 506 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_StartPlayout) { | 506 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_StartPlayout) { |
| 507 if (!has_output_devices_) { | 507 if (!has_output_devices_) { |
| 508 LOG(WARNING) << "No output device detected."; | 508 LOG(WARNING) << "No output device detected."; |
| 509 return; | 509 return; |
| 510 } | 510 } |
| 511 | 511 |
| 512 scoped_ptr<media::AudioHardwareConfig> config = | 512 scoped_ptr<media::AudioHardwareConfig> config = |
| 513 CreateRealHardwareConfig(audio_manager_.get()); | 513 CreateRealHardwareConfig(audio_manager_.get()); |
| 514 SetAudioHardwareConfig(config.get()); | 514 SetAudioHardwareConfig(config.get()); |
| 515 media::AudioParameters params(config->GetOutputConfig()); | |
| 516 | 515 |
| 517 if (!HardwareSampleRatesAreValid()) | 516 if (!HardwareSampleRatesAreValid()) |
| 518 return; | 517 return; |
| 519 | 518 |
| 520 EXPECT_CALL(media_observer(), | |
| 521 OnAudioStreamCreated(_, 1, params, StrEq(""))).Times(1); | |
| 522 EXPECT_CALL(media_observer(), | |
| 523 OnSetAudioStreamPlaying(_, 1, true)).Times(1); | |
| 524 EXPECT_CALL(media_observer(), | |
| 525 OnSetAudioStreamStatus(_, 1, StrEq("closed"))).Times(1); | |
| 526 EXPECT_CALL(media_observer(), | |
| 527 OnDeleteAudioStream(_, 1)).Times(AnyNumber()); | |
| 528 | |
| 529 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); | 519 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); |
| 530 ASSERT_TRUE(engine.valid()); | 520 ASSERT_TRUE(engine.valid()); |
| 531 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); | 521 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); |
| 532 ASSERT_TRUE(base.valid()); | 522 ASSERT_TRUE(base.valid()); |
| 533 | 523 |
| 534 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( | 524 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( |
| 535 new WebRtcAudioDeviceImpl()); | 525 new WebRtcAudioDeviceImpl()); |
| 536 int err = base->Init(webrtc_audio_device.get()); | 526 int err = base->Init(webrtc_audio_device.get()); |
| 537 ASSERT_EQ(0, err); | 527 ASSERT_EQ(0, err); |
| 538 | 528 |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 691 LOG(WARNING) << "No output device detected."; | 681 LOG(WARNING) << "No output device detected."; |
| 692 return; | 682 return; |
| 693 } | 683 } |
| 694 | 684 |
| 695 std::string file_path( | 685 std::string file_path( |
| 696 GetTestDataPath(FILE_PATH_LITERAL("speechmusic_mono_16kHz.pcm"))); | 686 GetTestDataPath(FILE_PATH_LITERAL("speechmusic_mono_16kHz.pcm"))); |
| 697 | 687 |
| 698 scoped_ptr<media::AudioHardwareConfig> config = | 688 scoped_ptr<media::AudioHardwareConfig> config = |
| 699 CreateRealHardwareConfig(audio_manager_.get()); | 689 CreateRealHardwareConfig(audio_manager_.get()); |
| 700 SetAudioHardwareConfig(config.get()); | 690 SetAudioHardwareConfig(config.get()); |
| 701 media::AudioParameters params(config->GetOutputConfig()); | |
| 702 | 691 |
| 703 if (!HardwareSampleRatesAreValid()) | 692 if (!HardwareSampleRatesAreValid()) |
| 704 return; | 693 return; |
| 705 | 694 |
| 706 EXPECT_CALL(media_observer(), | |
| 707 OnAudioStreamCreated(_, 1, params, StrEq(""))).Times(1); | |
| 708 EXPECT_CALL(media_observer(), | |
| 709 OnSetAudioStreamPlaying(_, 1, true)).Times(1); | |
| 710 EXPECT_CALL(media_observer(), | |
| 711 OnSetAudioStreamStatus(_, 1, StrEq("closed"))).Times(1); | |
| 712 EXPECT_CALL(media_observer(), | |
| 713 OnDeleteAudioStream(_, 1)).Times(AnyNumber()); | |
| 714 | |
| 715 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); | 695 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); |
| 716 ASSERT_TRUE(engine.valid()); | 696 ASSERT_TRUE(engine.valid()); |
| 717 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); | 697 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); |
| 718 ASSERT_TRUE(base.valid()); | 698 ASSERT_TRUE(base.valid()); |
| 719 | 699 |
| 720 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( | 700 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( |
| 721 new WebRtcAudioDeviceImpl()); | 701 new WebRtcAudioDeviceImpl()); |
| 722 int err = base->Init(webrtc_audio_device.get()); | 702 int err = base->Init(webrtc_audio_device.get()); |
| 723 ASSERT_EQ(0, err); | 703 ASSERT_EQ(0, err); |
| 724 int ch = base->CreateChannel(); | 704 int ch = base->CreateChannel(); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 772 #endif | 752 #endif |
| 773 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_FullDuplexAudioWithAGC) { | 753 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_FullDuplexAudioWithAGC) { |
| 774 if (!has_output_devices_ || !has_input_devices_) { | 754 if (!has_output_devices_ || !has_input_devices_) { |
| 775 LOG(WARNING) << "Missing audio devices."; | 755 LOG(WARNING) << "Missing audio devices."; |
| 776 return; | 756 return; |
| 777 } | 757 } |
| 778 | 758 |
| 779 scoped_ptr<media::AudioHardwareConfig> config = | 759 scoped_ptr<media::AudioHardwareConfig> config = |
| 780 CreateRealHardwareConfig(audio_manager_.get()); | 760 CreateRealHardwareConfig(audio_manager_.get()); |
| 781 SetAudioHardwareConfig(config.get()); | 761 SetAudioHardwareConfig(config.get()); |
| 782 media::AudioParameters params(config->GetOutputConfig()); | |
| 783 | 762 |
| 784 if (!HardwareSampleRatesAreValid()) | 763 if (!HardwareSampleRatesAreValid()) |
| 785 return; | 764 return; |
| 786 | 765 |
| 787 EXPECT_CALL(media_observer(), | |
| 788 OnAudioStreamCreated(_, 1, params, StrEq(""))).Times(1); | |
| 789 EXPECT_CALL(media_observer(), | |
| 790 OnSetAudioStreamPlaying(_, 1, true)); | |
| 791 EXPECT_CALL(media_observer(), | |
| 792 OnSetAudioStreamStatus(_, 1, StrEq("closed"))); | |
| 793 EXPECT_CALL(media_observer(), | |
| 794 OnDeleteAudioStream(_, 1)).Times(AnyNumber()); | |
| 795 | |
| 796 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); | 766 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); |
| 797 ASSERT_TRUE(engine.valid()); | 767 ASSERT_TRUE(engine.valid()); |
| 798 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); | 768 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); |
| 799 ASSERT_TRUE(base.valid()); | 769 ASSERT_TRUE(base.valid()); |
| 800 | 770 |
| 801 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( | 771 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( |
| 802 new WebRtcAudioDeviceImpl()); | 772 new WebRtcAudioDeviceImpl()); |
| 803 int err = base->Init(webrtc_audio_device.get()); | 773 int err = base->Init(webrtc_audio_device.get()); |
| 804 ASSERT_EQ(0, err); | 774 ASSERT_EQ(0, err); |
| 805 | 775 |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 926 #endif | 896 #endif |
| 927 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_WebRtcPlayoutSetupTime) { | 897 TEST_F(MAYBE_WebRTCAudioDeviceTest, MAYBE_WebRtcPlayoutSetupTime) { |
| 928 if (!has_output_devices_) { | 898 if (!has_output_devices_) { |
| 929 LOG(WARNING) << "No output device detected."; | 899 LOG(WARNING) << "No output device detected."; |
| 930 return; | 900 return; |
| 931 } | 901 } |
| 932 | 902 |
| 933 scoped_ptr<media::AudioHardwareConfig> config = | 903 scoped_ptr<media::AudioHardwareConfig> config = |
| 934 CreateRealHardwareConfig(audio_manager_.get()); | 904 CreateRealHardwareConfig(audio_manager_.get()); |
| 935 SetAudioHardwareConfig(config.get()); | 905 SetAudioHardwareConfig(config.get()); |
| 936 media::AudioParameters params(config->GetOutputConfig()); | |
| 937 | 906 |
| 938 if (!HardwareSampleRatesAreValid()) | 907 if (!HardwareSampleRatesAreValid()) |
| 939 return; | 908 return; |
| 940 | 909 |
| 941 EXPECT_CALL(media_observer(), | |
| 942 OnAudioStreamCreated(_, 1, params, StrEq(""))).Times(1); | |
| 943 EXPECT_CALL(media_observer(), | |
| 944 OnSetAudioStreamStatus(_, 1, _)).Times(AnyNumber()); | |
| 945 EXPECT_CALL(media_observer(), | |
| 946 OnSetAudioStreamPlaying(_, 1, true)); | |
| 947 EXPECT_CALL(media_observer(), | |
| 948 OnDeleteAudioStream(_, 1)).Times(AnyNumber()); | |
| 949 | |
| 950 base::WaitableEvent event(false, false); | 910 base::WaitableEvent event(false, false); |
| 951 scoped_ptr<MockWebRtcAudioRendererSource> renderer_source( | 911 scoped_ptr<MockWebRtcAudioRendererSource> renderer_source( |
| 952 new MockWebRtcAudioRendererSource(&event)); | 912 new MockWebRtcAudioRendererSource(&event)); |
| 953 | 913 |
| 954 scoped_refptr<WebRtcAudioRenderer> renderer( | 914 scoped_refptr<WebRtcAudioRenderer> renderer( |
| 955 CreateDefaultWebRtcAudioRenderer(kRenderViewId)); | 915 CreateDefaultWebRtcAudioRenderer(kRenderViewId)); |
| 956 renderer->Initialize(renderer_source.get()); | 916 renderer->Initialize(renderer_source.get()); |
| 957 scoped_refptr<MediaStreamAudioRenderer> proxy( | 917 scoped_refptr<MediaStreamAudioRenderer> proxy( |
| 958 renderer->CreateSharedAudioRendererProxy()); | 918 renderer->CreateSharedAudioRendererProxy()); |
| 959 proxy->Start(); | 919 proxy->Start(); |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1008 LOG(WARNING) << "Test disabled due to the test hangs on WinXP."; | 968 LOG(WARNING) << "Test disabled due to the test hangs on WinXP."; |
| 1009 return; | 969 return; |
| 1010 } | 970 } |
| 1011 #endif | 971 #endif |
| 1012 int latency = RunWebRtcLoopbackTimeTest(audio_manager_.get(), true); | 972 int latency = RunWebRtcLoopbackTimeTest(audio_manager_.get(), true); |
| 1013 PrintPerfResultMs("webrtc_loopback_with_signal_processing (100 packets)", | 973 PrintPerfResultMs("webrtc_loopback_with_signal_processing (100 packets)", |
| 1014 "t", latency); | 974 "t", latency); |
| 1015 } | 975 } |
| 1016 | 976 |
| 1017 } // namespace content | 977 } // namespace content |
| OLD | NEW |