1 /* 2 * Copyright (c) 2021-2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 #ifndef AUDIO_ASR_H 16 #define AUDIO_ASR_H 17 /** 18 * ASR noise suppression mode. 19 * @enum { number } 20 * @syscap SystemCapability.Multimedia.Audio.Capturer 21 * @systemapi 22 * @since 12 23 */ 24 enum class AsrNoiseSuppressionMode { 25 /** 26 * Bypass noise suppression. 27 * @syscap SystemCapability.Multimedia.Audio.Capturer 28 * @systemapi 29 * @since 12 30 */ 31 BYPASS = 0, 32 /** 33 * Standard noise suppression. 34 * @syscap SystemCapability.Multimedia.Audio.Capturer 35 * @systemapi 36 * @since 12 37 */ 38 STANDARD = 1, 39 /** 40 * Near field noise suppression. 41 * @syscap SystemCapability.Multimedia.Audio.Capturer 42 * @systemapi 43 * @since 12 44 */ 45 NEAR_FIELD = 2, 46 /** 47 * Far field noise suppression. 48 * @syscap SystemCapability.Multimedia.Audio.Capturer 49 * @systemapi 50 * @since 12 51 */ 52 FAR_FIELD = 3, 53 }; 54 55 /** 56 * ASR AEC mode. 57 * @enum { number } 58 * @syscap SystemCapability.Multimedia.Audio.Capturer 59 * @systemapi 60 * @since 12 61 */ 62 enum class AsrAecMode { 63 /** 64 * Bypass AEC. 65 * @syscap SystemCapability.Multimedia.Audio.Capturer 66 * @systemapi 67 * @since 12 68 */ 69 BYPASS = 0, 70 /** 71 * Using standard AEC. 72 * @syscap SystemCapability.Multimedia.Audio.Capturer 73 * @systemapi 74 * @since 12 75 */ 76 STANDARD = 1, 77 }; 78 79 /** 80 * ASR Whisper mode. 81 * @enum { number } 82 * @syscap SystemCapability.Multimedia.Audio.Capturer 83 * @systemapi 84 * @since 12 85 */ 86 enum class AsrWhisperDetectionMode { 87 /** 88 * Using Bypass WhisperDetection. 89 * @syscap SystemCapability.Multimedia.Audio.Capturer 90 * @systemapi 91 * @since 12 92 */ 93 BYPASS = 0, 94 /** 95 * Using standard WhisperDetection. 96 * @syscap SystemCapability.Multimedia.Audio.Capturer 97 * @systemapi 98 * @since 12 99 */ 100 STANDARD = 1, 101 }; 102 103 /** 104 * Asr Voice Control Mode. 105 * @enum { number } 106 * @syscap SystemCapability.Multimedia.Audio.Capturer 107 * @systemapi 108 * @since 12 109 */ 110 enum class AsrVoiceControlMode { 111 /** 112 * AUDIO 2 VOICETX. 113 * @syscap SystemCapability.Multimedia.Audio.Capturer 114 * @systemapi 115 * @since 12 116 */ 117 AUDIO_2_VOICETX = 0, 118 /** 119 * AUDIO MIX 2 VOICETX . 120 * @syscap SystemCapability.Multimedia.Audio.Capturer 121 * @systemapi 122 * @since 12 123 */ 124 AUDIO_MIX_2_VOICETX = 1, 125 /** 126 * AUDIO 2 VOICE TX EX. 127 * @syscap SystemCapability.Multimedia.Audio.Capturer 128 * @systemapi 129 * @since 12 130 */ 131 AUDIO_2_VOICE_TX_EX = 2, 132 /** 133 * AUDIO MIX 2 VOICE X EX. 134 * @syscap SystemCapability.Multimedia.Audio.Capturer 135 * @systemapi 136 * @since 12 137 */ 138 AUDIO_MIX_2_VOICE_TX_EX = 3, 139 /** 140 * AUDIO SUPPRESSION OPPOSITE. 141 * @syscap SystemCapability.Multimedia.Audio.Capturer 142 * @systemapi 143 * @since 13 144 */ 145 AUDIO_SUPPRESSION_OPPOSITE = 4, 146 /** 147 * AUDIO SUPPRESSION LOCAL. 148 * @syscap SystemCapability.Multimedia.Audio.Capturer 149 * @systemapi 150 * @since 13 151 */ 152 AUDIO_SUPPRESSION_LOCAL = 5, 153 /** 154 * VOICE TXRX DECREASE. 155 * @syscap SystemCapability.Multimedia.Audio.Capturer 156 * @systemapi 157 * @since 13 158 */ 159 VOICE_TXRX_DECREASE = 6, 160 }; 161 162 /** 163 * Asr Voice Mute mode. 164 * @enum { number } 165 * @syscap SystemCapability.Multimedia.Audio.Capturer 166 * @systemapi 167 * @since 12 168 */ 169 enum class AsrVoiceMuteMode { 170 /** 171 * OUTPUT MUTE. 172 * @syscap SystemCapability.Multimedia.Audio.Capturer 173 * @systemapi 174 * @since 12 175 */ 176 OUTPUT_MUTE = 0, 177 /** 178 * INPUT MUTE. 179 * @syscap SystemCapability.Multimedia.Audio.Capturer 180 * @systemapi 181 * @since 12 182 */ 183 INPUT_MUTE = 1, 184 /** 185 * TTS MUTE. 186 * @syscap SystemCapability.Multimedia.Audio.Capturer 187 * @systemapi 188 * @since 12 189 */ 190 TTS_MUTE = 2, 191 /** 192 * CALL MUTE. 193 * @syscap SystemCapability.Multimedia.Audio.Capturer 194 * @systemapi 195 * @since 12 196 */ 197 CALL_MUTE = 3, 198 /** 199 * OUTPUT MUTE EX. 200 * @syscap SystemCapability.Multimedia.Audio.Capturer 201 * @systemapi 202 * @since 12 203 */ 204 OUTPUT_MUTE_EX = 4, 205 }; 206 #endif