mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-19 08:37:54 +01:00

This switches from accepting a sample rate and convert to channel size over to accepting the channel size. Instead of InitializeIfNeeded: * Offer a way to explicitly initialize PushResampler via the ctor (needed for VoiceActivityDetectorWrapper) * Implicitly check for the right configuration from within Resample(). (All calls to Resample() were preceded by a call to Initialize) As part of this, refactor VoiceActivityDetectorWrapper (VADW): * VADW is now initialized in the constructor and more const. * Remove VADW::Initialize() and instead reconstruct VADW if needed. Add constants for max sample rate and num channels to audio_util.h In many cases the numbers for these values are embedded in the code which has led to some inconsistency. Bug: chromium:335805780 Change-Id: Iead0d52eb1b261a8d64e93f51401147c8fba32f0 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/353360 Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org> Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org> Cr-Commit-Position: refs/heads/main@{#42587}
43 lines
1.4 KiB
C++
43 lines
1.4 KiB
C++
/*
|
|
* Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#include "common_audio/resampler/include/push_resampler.h"
|
|
|
|
#include "rtc_base/checks.h" // RTC_DCHECK_IS_ON
|
|
#include "test/gtest.h"
|
|
#include "test/testsupport/rtc_expect_death.h"
|
|
|
|
// Quality testing of PushResampler is done in audio/remix_resample_unittest.cc.
|
|
|
|
namespace webrtc {
|
|
|
|
TEST(PushResamplerTest, VerifiesInputParameters) {
|
|
PushResampler<int16_t> resampler1(160, 160, 1);
|
|
PushResampler<int16_t> resampler2(160, 160, 2);
|
|
PushResampler<int16_t> resampler3(160, 160, 8);
|
|
}
|
|
|
|
#if RTC_DCHECK_IS_ON && GTEST_HAS_DEATH_TEST && !defined(WEBRTC_ANDROID)
|
|
TEST(PushResamplerDeathTest, VerifiesBadInputParameters1) {
|
|
RTC_EXPECT_DEATH(PushResampler<int16_t>(-1, 160, 1),
|
|
"src_samples_per_channel");
|
|
}
|
|
|
|
TEST(PushResamplerDeathTest, VerifiesBadInputParameters2) {
|
|
RTC_EXPECT_DEATH(PushResampler<int16_t>(160, -1, 1),
|
|
"dst_samples_per_channel");
|
|
}
|
|
|
|
TEST(PushResamplerDeathTest, VerifiesBadInputParameters3) {
|
|
RTC_EXPECT_DEATH(PushResampler<int16_t>(160, 16000, 0), "num_channels");
|
|
}
|
|
#endif
|
|
|
|
} // namespace webrtc
|