Adds a MediaConstraint for the AudioOption aec_dump
Alson includes - a test verifying that the option is set - changed the test verifying delay_agnostic_aec option is set to use non-default value BUG=4555 TESTED=locally through AppRTCDemo on N7 and Android One R=tommi@webrtc.org Review URL: https://webrtc-codereview.appspot.com/46059004 Cr-Commit-Position: refs/heads/master@{#9109}
This commit is contained in:
@ -78,6 +78,8 @@ void FromConstraints(const MediaConstraintsInterface::Constraints& constraints,
|
|||||||
options->typing_detection.Set(value);
|
options->typing_detection.Set(value);
|
||||||
else if (iter->key == MediaConstraintsInterface::kAudioMirroring)
|
else if (iter->key == MediaConstraintsInterface::kAudioMirroring)
|
||||||
options->stereo_swapping.Set(value);
|
options->stereo_swapping.Set(value);
|
||||||
|
else if (iter->key == MediaConstraintsInterface::kAecDump)
|
||||||
|
options->aec_dump.Set(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,13 +46,13 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
|
|||||||
constraints.AddMandatory(MediaConstraintsInterface::kEchoCancellation, false);
|
constraints.AddMandatory(MediaConstraintsInterface::kEchoCancellation, false);
|
||||||
constraints.AddOptional(
|
constraints.AddOptional(
|
||||||
MediaConstraintsInterface::kExperimentalEchoCancellation, true);
|
MediaConstraintsInterface::kExperimentalEchoCancellation, true);
|
||||||
constraints.AddOptional(
|
constraints.AddOptional(MediaConstraintsInterface::kDAEchoCancellation, true);
|
||||||
MediaConstraintsInterface::kDAEchoCancellation, false);
|
|
||||||
constraints.AddOptional(MediaConstraintsInterface::kAutoGainControl, true);
|
constraints.AddOptional(MediaConstraintsInterface::kAutoGainControl, true);
|
||||||
constraints.AddOptional(
|
constraints.AddOptional(
|
||||||
MediaConstraintsInterface::kExperimentalAutoGainControl, true);
|
MediaConstraintsInterface::kExperimentalAutoGainControl, true);
|
||||||
constraints.AddMandatory(MediaConstraintsInterface::kNoiseSuppression, false);
|
constraints.AddMandatory(MediaConstraintsInterface::kNoiseSuppression, false);
|
||||||
constraints.AddOptional(MediaConstraintsInterface::kHighpassFilter, true);
|
constraints.AddOptional(MediaConstraintsInterface::kHighpassFilter, true);
|
||||||
|
constraints.AddOptional(MediaConstraintsInterface::kAecDump, true);
|
||||||
|
|
||||||
rtc::scoped_refptr<LocalAudioSource> source =
|
rtc::scoped_refptr<LocalAudioSource> source =
|
||||||
LocalAudioSource::Create(PeerConnectionFactoryInterface::Options(),
|
LocalAudioSource::Create(PeerConnectionFactoryInterface::Options(),
|
||||||
@ -64,7 +64,7 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
|
|||||||
EXPECT_TRUE(source->options().experimental_aec.Get(&value));
|
EXPECT_TRUE(source->options().experimental_aec.Get(&value));
|
||||||
EXPECT_TRUE(value);
|
EXPECT_TRUE(value);
|
||||||
EXPECT_TRUE(source->options().delay_agnostic_aec.Get(&value));
|
EXPECT_TRUE(source->options().delay_agnostic_aec.Get(&value));
|
||||||
EXPECT_FALSE(value);
|
EXPECT_TRUE(value);
|
||||||
EXPECT_TRUE(source->options().auto_gain_control.Get(&value));
|
EXPECT_TRUE(source->options().auto_gain_control.Get(&value));
|
||||||
EXPECT_TRUE(value);
|
EXPECT_TRUE(value);
|
||||||
EXPECT_TRUE(source->options().experimental_agc.Get(&value));
|
EXPECT_TRUE(source->options().experimental_agc.Get(&value));
|
||||||
@ -73,6 +73,8 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
|
|||||||
EXPECT_FALSE(value);
|
EXPECT_FALSE(value);
|
||||||
EXPECT_TRUE(source->options().highpass_filter.Get(&value));
|
EXPECT_TRUE(source->options().highpass_filter.Get(&value));
|
||||||
EXPECT_TRUE(value);
|
EXPECT_TRUE(value);
|
||||||
|
EXPECT_TRUE(source->options().aec_dump.Get(&value));
|
||||||
|
EXPECT_TRUE(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(LocalAudioSourceTest, OptionNotSet) {
|
TEST(LocalAudioSourceTest, OptionNotSet) {
|
||||||
|
@ -65,6 +65,7 @@ const char MediaConstraintsInterface::kHighpassFilter[] =
|
|||||||
const char MediaConstraintsInterface::kTypingNoiseDetection[] =
|
const char MediaConstraintsInterface::kTypingNoiseDetection[] =
|
||||||
"googTypingNoiseDetection";
|
"googTypingNoiseDetection";
|
||||||
const char MediaConstraintsInterface::kAudioMirroring[] = "googAudioMirroring";
|
const char MediaConstraintsInterface::kAudioMirroring[] = "googAudioMirroring";
|
||||||
|
const char MediaConstraintsInterface::kAecDump[] = "audioDebugRecording";
|
||||||
|
|
||||||
// Google-specific constraint keys for a local video source (getUserMedia).
|
// Google-specific constraint keys for a local video source (getUserMedia).
|
||||||
const char MediaConstraintsInterface::kNoiseReduction[] = "googNoiseReduction";
|
const char MediaConstraintsInterface::kNoiseReduction[] = "googNoiseReduction";
|
||||||
|
@ -83,6 +83,7 @@ class MediaConstraintsInterface {
|
|||||||
static const char kHighpassFilter[]; // googHighpassFilter
|
static const char kHighpassFilter[]; // googHighpassFilter
|
||||||
static const char kTypingNoiseDetection[]; // googTypingNoiseDetection
|
static const char kTypingNoiseDetection[]; // googTypingNoiseDetection
|
||||||
static const char kAudioMirroring[]; // googAudioMirroring
|
static const char kAudioMirroring[]; // googAudioMirroring
|
||||||
|
static const char kAecDump[]; // audioDebugRecording
|
||||||
|
|
||||||
// Google-specific constraint keys for a local video source
|
// Google-specific constraint keys for a local video source
|
||||||
static const char kNoiseReduction[]; // googNoiseReduction
|
static const char kNoiseReduction[]; // googNoiseReduction
|
||||||
|
Reference in New Issue
Block a user