blob: 1bcf0511ec1fb85f034df0dc3473807909f56913 [file] [log] [blame]
solenberg76377c52017-02-21 00:54:31 -08001/*
2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11#ifndef WEBRTC_MEDIA_ENGINE_APM_HELPERS_H_
12#define WEBRTC_MEDIA_ENGINE_APM_HELPERS_H_
13
14#include "webrtc/common_types.h"
15
16namespace webrtc {
17
18class AudioProcessing;
19class AudioDeviceModule;
20
21namespace apm_helpers {
22
23AgcConfig GetAgcConfig(AudioProcessing* apm);
24void SetAgcConfig(AudioProcessing* apm,
25 const AgcConfig& config);
26void SetAgcStatus(AudioProcessing* apm,
27 AudioDeviceModule* adm,
28 bool enable,
29 AgcModes mode);
30void SetEcStatus(AudioProcessing* apm,
31 bool enable,
32 EcModes mode);
33void SetEcMetricsStatus(AudioProcessing* apm, bool enable);
34void SetAecmMode(AudioProcessing* apm, bool enable_cng);
35void SetNsStatus(AudioProcessing* apm, bool enable);
36void SetTypingDetectionStatus(AudioProcessing* apm, bool enable);
37
38} // namespace apm_helpers
39} // namespace webrtc
40
41#endif // WEBRTC_MEDIA_ENGINE_APM_HELPERS_H_