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:
Bjorn Volcker
2015-04-29 07:28:10 +02:00
parent 97f13c5f7f
commit 1ba344a070
4 changed files with 9 additions and 3 deletions

View File

@ -78,6 +78,8 @@ void FromConstraints(const MediaConstraintsInterface::Constraints& constraints,
options->typing_detection.Set(value);
else if (iter->key == MediaConstraintsInterface::kAudioMirroring)
options->stereo_swapping.Set(value);
else if (iter->key == MediaConstraintsInterface::kAecDump)
options->aec_dump.Set(value);
}
}

View File

@ -46,13 +46,13 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
constraints.AddMandatory(MediaConstraintsInterface::kEchoCancellation, false);
constraints.AddOptional(
MediaConstraintsInterface::kExperimentalEchoCancellation, true);
constraints.AddOptional(
MediaConstraintsInterface::kDAEchoCancellation, false);
constraints.AddOptional(MediaConstraintsInterface::kDAEchoCancellation, true);
constraints.AddOptional(MediaConstraintsInterface::kAutoGainControl, true);
constraints.AddOptional(
MediaConstraintsInterface::kExperimentalAutoGainControl, true);
constraints.AddMandatory(MediaConstraintsInterface::kNoiseSuppression, false);
constraints.AddOptional(MediaConstraintsInterface::kHighpassFilter, true);
constraints.AddOptional(MediaConstraintsInterface::kAecDump, true);
rtc::scoped_refptr<LocalAudioSource> source =
LocalAudioSource::Create(PeerConnectionFactoryInterface::Options(),
@ -64,7 +64,7 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
EXPECT_TRUE(source->options().experimental_aec.Get(&value));
EXPECT_TRUE(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(value);
EXPECT_TRUE(source->options().experimental_agc.Get(&value));
@ -73,6 +73,8 @@ TEST(LocalAudioSourceTest, SetValidOptions) {
EXPECT_FALSE(value);
EXPECT_TRUE(source->options().highpass_filter.Get(&value));
EXPECT_TRUE(value);
EXPECT_TRUE(source->options().aec_dump.Get(&value));
EXPECT_TRUE(value);
}
TEST(LocalAudioSourceTest, OptionNotSet) {

View File

@ -65,6 +65,7 @@ const char MediaConstraintsInterface::kHighpassFilter[] =
const char MediaConstraintsInterface::kTypingNoiseDetection[] =
"googTypingNoiseDetection";
const char MediaConstraintsInterface::kAudioMirroring[] = "googAudioMirroring";
const char MediaConstraintsInterface::kAecDump[] = "audioDebugRecording";
// Google-specific constraint keys for a local video source (getUserMedia).
const char MediaConstraintsInterface::kNoiseReduction[] = "googNoiseReduction";

View File

@ -83,6 +83,7 @@ class MediaConstraintsInterface {
static const char kHighpassFilter[]; // googHighpassFilter
static const char kTypingNoiseDetection[]; // googTypingNoiseDetection
static const char kAudioMirroring[]; // googAudioMirroring
static const char kAecDump[]; // audioDebugRecording
// Google-specific constraint keys for a local video source
static const char kNoiseReduction[]; // googNoiseReduction