From 6592f2cfd28c54ef95aa049b44372103fa2ccdbd Mon Sep 17 00:00:00 2001 From: henrika Date: Tue, 17 Oct 2017 14:47:44 +0200 Subject: [PATCH] Removes more unused ADM APIs: - RecordingDelay() - LastError() Bug: webrtc:7306 Change-Id: I3bb9cd243a1464f0ba612787c854eeb6602c7e38 Reviewed-on: https://webrtc-review.googlesource.com/12060 Commit-Queue: Henrik Andreassson Reviewed-by: Fredrik Solenberg Cr-Commit-Position: refs/heads/master@{#20326} --- media/engine/webrtcvoiceengine.cc | 6 ++---- .../android/audio_device_template.h | 8 -------- .../audio_device_data_observer.cc | 4 ---- modules/audio_device/audio_device_generic.h | 1 - modules/audio_device/audio_device_impl.cc | 20 ------------------- modules/audio_device/audio_device_impl.h | 4 ---- .../audio_device/dummy/audio_device_dummy.cc | 2 -- .../audio_device/dummy/audio_device_dummy.h | 1 - .../audio_device/dummy/file_audio_device.cc | 2 -- .../audio_device/dummy/file_audio_device.h | 1 - modules/audio_device/include/audio_device.h | 15 ++++++++++---- .../audio_device/include/fake_audio_device.h | 2 -- .../audio_device/include/mock_audio_device.h | 1 - modules/audio_device/ios/audio_device_ios.h | 1 - modules/audio_device/ios/audio_device_ios.mm | 5 ----- .../linux/audio_device_alsa_linux.cc | 7 ------- .../linux/audio_device_alsa_linux.h | 1 - .../linux/audio_device_pulse_linux.cc | 6 ------ .../linux/audio_device_pulse_linux.h | 1 - modules/audio_device/mac/audio_device_mac.cc | 7 ------- modules/audio_device/mac/audio_device_mac.h | 1 - .../audio_device/win/audio_device_core_win.cc | 11 ---------- .../audio_device/win/audio_device_core_win.h | 1 - pc/test/fakeaudiocapturemodule.cc | 10 ---------- pc/test/fakeaudiocapturemodule.h | 3 --- 25 files changed, 13 insertions(+), 108 deletions(-) diff --git a/media/engine/webrtcvoiceengine.cc b/media/engine/webrtcvoiceengine.cc index f3701e2cb7..f70093d2e9 100644 --- a/media/engine/webrtcvoiceengine.cc +++ b/media/engine/webrtcvoiceengine.cc @@ -620,8 +620,7 @@ bool WebRtcVoiceEngine::ApplyOptions(const AudioOptions& options_in) { << *options.recording_sample_rate; if (adm()->SetRecordingSampleRate(*options.recording_sample_rate)) { LOG(LS_WARNING) << "SetRecordingSampleRate(" - << *options.recording_sample_rate << ") failed, err=" - << adm()->LastError(); + << *options.recording_sample_rate << ") failed."; } } @@ -629,8 +628,7 @@ bool WebRtcVoiceEngine::ApplyOptions(const AudioOptions& options_in) { LOG(LS_INFO) << "Playout sample rate is " << *options.playout_sample_rate; if (adm()->SetPlayoutSampleRate(*options.playout_sample_rate)) { LOG(LS_WARNING) << "SetPlayoutSampleRate(" - << *options.playout_sample_rate << ") failed, err=" - << adm()->LastError(); + << *options.playout_sample_rate << ") failed."; } } return true; diff --git a/modules/audio_device/android/audio_device_template.h b/modules/audio_device/android/audio_device_template.h index df9efeeb49..5be3a9e9fd 100644 --- a/modules/audio_device/android/audio_device_template.h +++ b/modules/audio_device/android/audio_device_template.h @@ -383,14 +383,6 @@ class AudioDeviceTemplate : public AudioDeviceGeneric { return 0; } - int32_t RecordingDelay(uint16_t& delay_ms) const override { - // Best guess we can do is to use half of the estimated total delay. - LOG(INFO) << __FUNCTION__; - delay_ms = audio_manager_->GetDelayEstimateInMilliseconds() / 2; - RTC_DCHECK_GT(delay_ms, 0); - return 0; - } - void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override { LOG(INFO) << __FUNCTION__; output_.AttachAudioBuffer(audioBuffer); diff --git a/modules/audio_device/audio_device_data_observer.cc b/modules/audio_device/audio_device_data_observer.cc index a72fb8dc11..51d1451733 100644 --- a/modules/audio_device/audio_device_data_observer.cc +++ b/modules/audio_device/audio_device_data_observer.cc @@ -120,7 +120,6 @@ class ADMWrapper : public AudioDeviceModule, public AudioTransport { int32_t ActiveAudioLayer(AudioLayer* audio_layer) const override { return impl_->ActiveAudioLayer(audio_layer); } - ErrorCode LastError() const override { return impl_->LastError(); } int32_t Init() override { return impl_->Init(); } int32_t Terminate() override { return impl_->Terminate(); } bool Initialized() const override { return impl_->Initialized(); } @@ -253,9 +252,6 @@ class ADMWrapper : public AudioDeviceModule, public AudioTransport { int32_t PlayoutDelay(uint16_t* delay_ms) const override { return impl_->PlayoutDelay(delay_ms); } - int32_t RecordingDelay(uint16_t* delay_ms) const override { - return impl_->RecordingDelay(delay_ms); - } int32_t SetRecordingSampleRate(const uint32_t samples_per_sec) override { return impl_->SetRecordingSampleRate(samples_per_sec); } diff --git a/modules/audio_device/audio_device_generic.h b/modules/audio_device/audio_device_generic.h index 5679bd4093..a8c6270e72 100644 --- a/modules/audio_device/audio_device_generic.h +++ b/modules/audio_device/audio_device_generic.h @@ -115,7 +115,6 @@ class AudioDeviceGeneric { // Delay information and control virtual int32_t PlayoutDelay(uint16_t& delayMS) const = 0; - virtual int32_t RecordingDelay(uint16_t& delayMS) const = 0; // Native sample rate controls (samples/sec) virtual int32_t SetRecordingSampleRate(const uint32_t samplesPerSec); diff --git a/modules/audio_device/audio_device_impl.cc b/modules/audio_device/audio_device_impl.cc index ccbfb18679..12caa2e3c4 100644 --- a/modules/audio_device/audio_device_impl.cc +++ b/modules/audio_device/audio_device_impl.cc @@ -272,13 +272,6 @@ int32_t AudioDeviceModuleImpl::ActiveAudioLayer(AudioLayer* audioLayer) const { return 0; } -// TODO(henrika): remove this API. -AudioDeviceModule::ErrorCode AudioDeviceModuleImpl::LastError() const { - LOG(INFO) << __FUNCTION__; - LOG(WARNING) << "Not supported"; - return kAdmErrNone; -} - int32_t AudioDeviceModuleImpl::Init() { LOG(INFO) << __FUNCTION__; if (initialized_) @@ -858,19 +851,6 @@ int32_t AudioDeviceModuleImpl::PlayoutDelay(uint16_t* delayMS) const { return 0; } -int32_t AudioDeviceModuleImpl::RecordingDelay(uint16_t* delayMS) const { - LOG(INFO) << __FUNCTION__; - CHECKinitialized_(); - uint16_t delay = 0; - if (audio_device_->RecordingDelay(delay) == -1) { - LOG(LERROR) << "failed to retrieve the recording delay"; - return -1; - } - *delayMS = delay; - LOG(INFO) << "output: " << *delayMS; - return 0; -} - int32_t AudioDeviceModuleImpl::SetRecordingSampleRate( const uint32_t samplesPerSec) { LOG(INFO) << __FUNCTION__ << "(" << samplesPerSec << ")"; diff --git a/modules/audio_device/audio_device_impl.h b/modules/audio_device/audio_device_impl.h index b78558f2d1..02daabc907 100644 --- a/modules/audio_device/audio_device_impl.h +++ b/modules/audio_device/audio_device_impl.h @@ -47,9 +47,6 @@ class AudioDeviceModuleImpl : public AudioDeviceModule { // Retrieve the currently utilized audio layer int32_t ActiveAudioLayer(AudioLayer* audioLayer) const override; - // Error handling - ErrorCode LastError() const override; - // Full-duplex transportation of PCM audio int32_t RegisterAudioCallback(AudioTransport* audioCallback) override; @@ -136,7 +133,6 @@ class AudioDeviceModuleImpl : public AudioDeviceModule { // Delay information and control int32_t PlayoutDelay(uint16_t* delayMS) const override; - int32_t RecordingDelay(uint16_t* delayMS) const override; // Native sample rate controls (samples/sec) int32_t SetRecordingSampleRate(const uint32_t samplesPerSec) override; diff --git a/modules/audio_device/dummy/audio_device_dummy.cc b/modules/audio_device/dummy/audio_device_dummy.cc index 7ababa1667..67ad5729f8 100644 --- a/modules/audio_device/dummy/audio_device_dummy.cc +++ b/modules/audio_device/dummy/audio_device_dummy.cc @@ -156,7 +156,5 @@ int32_t AudioDeviceDummy::StereoRecording(bool& enabled) const { return -1; } int32_t AudioDeviceDummy::PlayoutDelay(uint16_t& delayMS) const { return -1; } -int32_t AudioDeviceDummy::RecordingDelay(uint16_t& delayMS) const { return -1; } - void AudioDeviceDummy::AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) {} } // namespace webrtc diff --git a/modules/audio_device/dummy/audio_device_dummy.h b/modules/audio_device/dummy/audio_device_dummy.h index c29ed1ee70..18c94fc914 100644 --- a/modules/audio_device/dummy/audio_device_dummy.h +++ b/modules/audio_device/dummy/audio_device_dummy.h @@ -109,7 +109,6 @@ class AudioDeviceDummy : public AudioDeviceGeneric { // Delay information and control int32_t PlayoutDelay(uint16_t& delayMS) const override; - int32_t RecordingDelay(uint16_t& delayMS) const override; void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override; }; diff --git a/modules/audio_device/dummy/file_audio_device.cc b/modules/audio_device/dummy/file_audio_device.cc index 9ab66d81b5..6b0ee040af 100644 --- a/modules/audio_device/dummy/file_audio_device.cc +++ b/modules/audio_device/dummy/file_audio_device.cc @@ -395,8 +395,6 @@ int32_t FileAudioDevice::PlayoutDelay(uint16_t& delayMS) const { return 0; } -int32_t FileAudioDevice::RecordingDelay(uint16_t& delayMS) const { return -1; } - void FileAudioDevice::AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) { rtc::CritScope lock(&_critSect); diff --git a/modules/audio_device/dummy/file_audio_device.h b/modules/audio_device/dummy/file_audio_device.h index 6bd0f99c92..f735d00e8e 100644 --- a/modules/audio_device/dummy/file_audio_device.h +++ b/modules/audio_device/dummy/file_audio_device.h @@ -129,7 +129,6 @@ class FileAudioDevice : public AudioDeviceGeneric { // Delay information and control int32_t PlayoutDelay(uint16_t& delayMS) const override; - int32_t RecordingDelay(uint16_t& delayMS) const override; void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override; diff --git a/modules/audio_device/include/audio_device.h b/modules/audio_device/include/audio_device.h index 55e6421a75..cdc80913ce 100644 --- a/modules/audio_device/include/audio_device.h +++ b/modules/audio_device/include/audio_device.h @@ -19,6 +19,8 @@ namespace webrtc { class AudioDeviceModule : public rtc::RefCountInterface { public: + // Deprecated. + // TODO(henrika): to be removed. enum ErrorCode { kAdmErrNone = 0, kAdmErrArgument = 1 @@ -48,6 +50,7 @@ class AudioDeviceModule : public rtc::RefCountInterface { public: // Create an ADM. + // TODO(henrika): remove |id|. static rtc::scoped_refptr Create( const int32_t id, const AudioLayer audio_layer); @@ -55,8 +58,9 @@ class AudioDeviceModule : public rtc::RefCountInterface { // Retrieve the currently utilized audio layer virtual int32_t ActiveAudioLayer(AudioLayer* audioLayer) const = 0; - // Error handling - virtual ErrorCode LastError() const = 0; + // Deprecated. + // TODO(henrika): to be removed. + virtual ErrorCode LastError() const { return kAdmErrNone; } // Full-duplex transportation of PCM audio virtual int32_t RegisterAudioCallback(AudioTransport* audioCallback) = 0; @@ -142,9 +146,12 @@ class AudioDeviceModule : public rtc::RefCountInterface { virtual int32_t SetRecordingChannel(const ChannelType channel) = 0; virtual int32_t RecordingChannel(ChannelType* channel) const = 0; - // Delay information and control + // Playout delay virtual int32_t PlayoutDelay(uint16_t* delayMS) const = 0; - virtual int32_t RecordingDelay(uint16_t* delayMS) const = 0; + + // Deprecated. + // TODO(henrika): to be removed. + virtual int32_t RecordingDelay(uint16_t* delayMS) const { return -1; } // Native sample rate controls (samples/sec) virtual int32_t SetRecordingSampleRate(const uint32_t samplesPerSec) = 0; diff --git a/modules/audio_device/include/fake_audio_device.h b/modules/audio_device/include/fake_audio_device.h index 677f244839..94cb9194a3 100644 --- a/modules/audio_device/include/fake_audio_device.h +++ b/modules/audio_device/include/fake_audio_device.h @@ -42,7 +42,6 @@ class FakeAudioDeviceModule : public AudioDeviceModule { int32_t Terminate() override { return 0; } int32_t ActiveAudioLayer(AudioLayer* audioLayer) const override { return 0; } - ErrorCode LastError() const override { return kAdmErrNone; } bool Initialized() const override { return true; } int16_t PlayoutDevices() override { return 0; } int16_t RecordingDevices() override { return 0; } @@ -101,7 +100,6 @@ class FakeAudioDeviceModule : public AudioDeviceModule { *delayMS = 0; return 0; } - int32_t RecordingDelay(uint16_t* delayMS) const override { return 0; } int32_t SetRecordingSampleRate(const uint32_t samplesPerSec) override { return 0; } diff --git a/modules/audio_device/include/mock_audio_device.h b/modules/audio_device/include/mock_audio_device.h index 87dc64cd07..2c3602ddcf 100644 --- a/modules/audio_device/include/mock_audio_device.h +++ b/modules/audio_device/include/mock_audio_device.h @@ -86,7 +86,6 @@ class MockAudioDeviceModule : public AudioDeviceModule { MOCK_METHOD1(SetRecordingChannel, int32_t(const ChannelType channel)); MOCK_CONST_METHOD1(RecordingChannel, int32_t(ChannelType* channel)); MOCK_CONST_METHOD1(PlayoutDelay, int32_t(uint16_t* delayMS)); - MOCK_CONST_METHOD1(RecordingDelay, int32_t(uint16_t* delayMS)); MOCK_METHOD1(SetRecordingSampleRate, int32_t(const uint32_t samplesPerSec)); MOCK_CONST_METHOD1(RecordingSampleRate, int32_t(uint32_t* samplesPerSec)); MOCK_METHOD1(SetPlayoutSampleRate, int32_t(const uint32_t samplesPerSec)); diff --git a/modules/audio_device/ios/audio_device_ios.h b/modules/audio_device/ios/audio_device_ios.h index 8235bf0d1b..cdd855d28d 100644 --- a/modules/audio_device/ios/audio_device_ios.h +++ b/modules/audio_device/ios/audio_device_ios.h @@ -83,7 +83,6 @@ class AudioDeviceIOS : public AudioDeviceGeneric, // A/V-sync is not supported on iOS. However, we avoid adding error messages // the log by using these dummy implementations instead. int32_t PlayoutDelay(uint16_t& delayMS) const override; - int32_t RecordingDelay(uint16_t& delayMS) const override; // Native audio parameters stored during construction. // These methods are unique for the iOS implementation. diff --git a/modules/audio_device/ios/audio_device_ios.mm b/modules/audio_device/ios/audio_device_ios.mm index 12c75af566..749a079448 100644 --- a/modules/audio_device/ios/audio_device_ios.mm +++ b/modules/audio_device/ios/audio_device_ios.mm @@ -354,11 +354,6 @@ int32_t AudioDeviceIOS::PlayoutDelay(uint16_t& delayMS) const { return 0; } -int32_t AudioDeviceIOS::RecordingDelay(uint16_t& delayMS) const { - delayMS = kFixedRecordDelayEstimate; - return 0; -} - int AudioDeviceIOS::GetPlayoutAudioParameters(AudioParameters* params) const { LOGI() << "GetPlayoutAudioParameters"; RTC_DCHECK(playout_parameters_.is_valid()); diff --git a/modules/audio_device/linux/audio_device_alsa_linux.cc b/modules/audio_device/linux/audio_device_alsa_linux.cc index bfddf3d8c1..0a98efd264 100644 --- a/modules/audio_device/linux/audio_device_alsa_linux.cc +++ b/modules/audio_device/linux/audio_device_alsa_linux.cc @@ -1425,13 +1425,6 @@ int32_t AudioDeviceLinuxALSA::PlayoutDelay(uint16_t& delayMS) const return 0; } -int32_t AudioDeviceLinuxALSA::RecordingDelay(uint16_t& delayMS) const -{ - // Adding 10ms adjusted value to the record delay due to 10ms buffering. - delayMS = (uint16_t)(10 + _recordingDelay * 1000 / _recordingFreq); - return 0; -} - bool AudioDeviceLinuxALSA::Playing() const { return (_playing); diff --git a/modules/audio_device/linux/audio_device_alsa_linux.h b/modules/audio_device/linux/audio_device_alsa_linux.h index 05871f0365..f05547b37a 100644 --- a/modules/audio_device/linux/audio_device_alsa_linux.h +++ b/modules/audio_device/linux/audio_device_alsa_linux.h @@ -123,7 +123,6 @@ public: // Delay information and control int32_t PlayoutDelay(uint16_t& delayMS) const override; - int32_t RecordingDelay(uint16_t& delayMS) const override; void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override; diff --git a/modules/audio_device/linux/audio_device_pulse_linux.cc b/modules/audio_device/linux/audio_device_pulse_linux.cc index 9b16c696a7..f1eddd6ed7 100644 --- a/modules/audio_device/linux/audio_device_pulse_linux.cc +++ b/modules/audio_device/linux/audio_device_pulse_linux.cc @@ -1272,12 +1272,6 @@ int32_t AudioDeviceLinuxPulse::PlayoutDelay(uint16_t& delayMS) const { return 0; } -int32_t AudioDeviceLinuxPulse::RecordingDelay(uint16_t& delayMS) const { - RTC_DCHECK(thread_checker_.CalledOnValidThread()); - delayMS = (uint16_t)_sndCardRecDelay; - return 0; -} - bool AudioDeviceLinuxPulse::Playing() const { RTC_DCHECK(thread_checker_.CalledOnValidThread()); return (_playing); diff --git a/modules/audio_device/linux/audio_device_pulse_linux.h b/modules/audio_device/linux/audio_device_pulse_linux.h index 6fd571773f..73195c790f 100644 --- a/modules/audio_device/linux/audio_device_pulse_linux.h +++ b/modules/audio_device/linux/audio_device_pulse_linux.h @@ -185,7 +185,6 @@ public: // Delay information and control int32_t PlayoutDelay(uint16_t& delayMS) const override; - int32_t RecordingDelay(uint16_t& delayMS) const override; void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override; diff --git a/modules/audio_device/mac/audio_device_mac.cc b/modules/audio_device/mac/audio_device_mac.cc index c0287c979e..27d1cc461d 100644 --- a/modules/audio_device/mac/audio_device_mac.cc +++ b/modules/audio_device/mac/audio_device_mac.cc @@ -1553,13 +1553,6 @@ int32_t AudioDeviceMac::PlayoutDelay(uint16_t& delayMS) const { return 0; } -int32_t AudioDeviceMac::RecordingDelay(uint16_t& delayMS) const { - int32_t captureDelayUs = AtomicGet32(&_captureDelayUs); - delayMS = - static_cast(1e-3 * (captureDelayUs + _captureLatencyUs) + 0.5); - return 0; -} - bool AudioDeviceMac::Playing() const { return (_playing); } diff --git a/modules/audio_device/mac/audio_device_mac.h b/modules/audio_device/mac/audio_device_mac.h index c72b741baf..8dece72739 100644 --- a/modules/audio_device/mac/audio_device_mac.h +++ b/modules/audio_device/mac/audio_device_mac.h @@ -151,7 +151,6 @@ class AudioDeviceMac : public AudioDeviceGeneric { // Delay information and control virtual int32_t PlayoutDelay(uint16_t& delayMS) const; - virtual int32_t RecordingDelay(uint16_t& delayMS) const; virtual void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer); diff --git a/modules/audio_device/win/audio_device_core_win.cc b/modules/audio_device/win/audio_device_core_win.cc index 05f8e6436d..6fcbb6e4db 100644 --- a/modules/audio_device/win/audio_device_core_win.cc +++ b/modules/audio_device/win/audio_device_core_win.cc @@ -3032,17 +3032,6 @@ int32_t AudioDeviceWindowsCore::PlayoutDelay(uint16_t& delayMS) const return 0; } -// ---------------------------------------------------------------------------- -// RecordingDelay -// ---------------------------------------------------------------------------- - -int32_t AudioDeviceWindowsCore::RecordingDelay(uint16_t& delayMS) const -{ - rtc::CritScope critScoped(&_critSect); - delayMS = static_cast(_sndCardRecDelay); - return 0; -} - // ---------------------------------------------------------------------------- // Playing // ---------------------------------------------------------------------------- diff --git a/modules/audio_device/win/audio_device_core_win.h b/modules/audio_device/win/audio_device_core_win.h index 6d94acefd1..9933ee4729 100644 --- a/modules/audio_device/win/audio_device_core_win.h +++ b/modules/audio_device/win/audio_device_core_win.h @@ -173,7 +173,6 @@ public: // Delay information and control virtual int32_t PlayoutDelay(uint16_t& delayMS) const; - virtual int32_t RecordingDelay(uint16_t& delayMS) const; virtual int32_t EnableBuiltInAEC(bool enable); diff --git a/pc/test/fakeaudiocapturemodule.cc b/pc/test/fakeaudiocapturemodule.cc index fe5bf66e9f..dbbc0441cd 100644 --- a/pc/test/fakeaudiocapturemodule.cc +++ b/pc/test/fakeaudiocapturemodule.cc @@ -74,11 +74,6 @@ int32_t FakeAudioCaptureModule::ActiveAudioLayer( return 0; } -webrtc::AudioDeviceModule::ErrorCode FakeAudioCaptureModule::LastError() const { - RTC_NOTREACHED(); - return webrtc::AudioDeviceModule::kAdmErrNone; -} - int32_t FakeAudioCaptureModule::RegisterAudioCallback( webrtc::AudioTransport* audio_callback) { rtc::CritScope cs(&crit_callback_); @@ -417,11 +412,6 @@ int32_t FakeAudioCaptureModule::PlayoutDelay(uint16_t* delay_ms) const { return 0; } -int32_t FakeAudioCaptureModule::RecordingDelay(uint16_t* /*delay_ms*/) const { - RTC_NOTREACHED(); - return 0; -} - int32_t FakeAudioCaptureModule::SetRecordingSampleRate( const uint32_t /*samples_per_sec*/) { RTC_NOTREACHED(); diff --git a/pc/test/fakeaudiocapturemodule.h b/pc/test/fakeaudiocapturemodule.h index fd2290b3da..25edea7dee 100644 --- a/pc/test/fakeaudiocapturemodule.h +++ b/pc/test/fakeaudiocapturemodule.h @@ -54,8 +54,6 @@ class FakeAudioCaptureModule int32_t ActiveAudioLayer(AudioLayer* audio_layer) const override; - ErrorCode LastError() const override; - // Note: Calling this method from a callback may result in deadlock. int32_t RegisterAudioCallback( webrtc::AudioTransport* audio_callback) override; @@ -131,7 +129,6 @@ class FakeAudioCaptureModule int32_t RecordingChannel(ChannelType* channel) const override; int32_t PlayoutDelay(uint16_t* delay_ms) const override; - int32_t RecordingDelay(uint16_t* delay_ms) const override; int32_t SetRecordingSampleRate(const uint32_t samples_per_sec) override; int32_t RecordingSampleRate(uint32_t* samples_per_sec) const override;