Reland "Add ability to state whether the APM output will be used"
This is a reland of 8be2f201ba8790501f6f3fa39f00017f02fca46d Original change's description: > Add ability to state whether the APM output will be used > > This CL adds the ability for the surrounding code to state that the > APM output will not be used. The intended usecase for this is to allow > APM to run at a lower complexity when the endpoint is muted. > When APM has been informed that the output will not be used, it can > turn off code that is needed only for ensuring that the output audio > will sound good. > > Bug: b/154437967,b/163802450 > Change-Id: I8e22989e35354372e96191d15da44beb9d1b26ae > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181200 > Reviewed-by: Alessio Bazzica <alessiob@webrtc.org> > Commit-Queue: Per Åhgren <peah@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#31949} Bug: b/154437967 Bug: b/163802450 Change-Id: Ia77a9e43f913929d1afa72212f1ea6c192d0e519 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181887 Reviewed-by: Alessio Bazzica <alessiob@webrtc.org> Commit-Queue: Per Åhgren <peah@webrtc.org> Cr-Commit-Position: refs/heads/master@{#31957}
This commit is contained in:
@ -384,7 +384,8 @@ class RTC_EXPORT AudioProcessing : public rtc::RefCountInterface {
|
||||
kCaptureFixedPostGain,
|
||||
kPlayoutVolumeChange,
|
||||
kCustomRenderProcessingRuntimeSetting,
|
||||
kPlayoutAudioDeviceChange
|
||||
kPlayoutAudioDeviceChange,
|
||||
kCaptureOutputUsed
|
||||
};
|
||||
|
||||
// Play-out audio device properties.
|
||||
@ -434,6 +435,10 @@ class RTC_EXPORT AudioProcessing : public rtc::RefCountInterface {
|
||||
return {Type::kCustomRenderProcessingRuntimeSetting, payload};
|
||||
}
|
||||
|
||||
static RuntimeSetting CreateCaptureOutputUsedSetting(bool payload) {
|
||||
return {Type::kCaptureOutputUsed, payload};
|
||||
}
|
||||
|
||||
Type type() const { return type_; }
|
||||
// Getters do not return a value but instead modify the argument to protect
|
||||
// from implicit casting.
|
||||
@ -445,6 +450,10 @@ class RTC_EXPORT AudioProcessing : public rtc::RefCountInterface {
|
||||
RTC_DCHECK(value);
|
||||
*value = value_.int_value;
|
||||
}
|
||||
void GetBool(bool* value) const {
|
||||
RTC_DCHECK(value);
|
||||
*value = value_.bool_value;
|
||||
}
|
||||
void GetPlayoutAudioDeviceInfo(PlayoutAudioDeviceInfo* value) const {
|
||||
RTC_DCHECK(value);
|
||||
*value = value_.playout_audio_device_info;
|
||||
@ -463,6 +472,7 @@ class RTC_EXPORT AudioProcessing : public rtc::RefCountInterface {
|
||||
U(PlayoutAudioDeviceInfo value) : playout_audio_device_info(value) {}
|
||||
float float_value;
|
||||
int int_value;
|
||||
bool bool_value;
|
||||
PlayoutAudioDeviceInfo playout_audio_device_info;
|
||||
} value_;
|
||||
};
|
||||
|
Reference in New Issue
Block a user