Agora C++ API Reference for All Platforms
audio_options_i.h
1 // Agora SDK
2 //
3 // Copyright (c) 2019 Agora.io. All rights reserved.
4 // Reference from WebRTC project
5 //
6 #pragma once
7 
8 #include <string>
9 
10 #include "AgoraOptional.h"
11 
12 #define SET_FROM(X) SetFrom(&X, change.X)
13 
14 #define BEGIN_COMPARE() bool b = true
15 #define ADD_COMPARE(X) b = (b && (X == o.X))
16 #define END_COMPARE_AND_RETURN() \
17  ; \
18  return b
19 
20 #define UNPUBLISH(X) X.reset()
21 
22 namespace agora {
23 namespace rtc {
24 
34 
40 
46 
52 
58 };
59 
60 // Options that can be applied to an audio track or audio engine.
61 struct AudioOptions {
62  AudioOptions() = default;
63  ~AudioOptions() = default;
64 
65  void SetAecAll(const AudioOptions& change) {
66  SET_FROM(apm_enable_aec);
67  SET_FROM(apm_aec_nlp_size);
68  SET_FROM(apm_aec_nlp_hop_size);
71  SET_FROM(apm_aec_nlp_enable);
72  SET_FROM(apm_aec_alignRefDelay);
73  SET_FROM(apm_aec_complexity);
78  SET_FROM(apm_aec_fixed_delay);
79  SET_FROM(apm_aec_extra_delay_bias);
81  SET_FROM(apm_aiaec_main_switch);
82  SET_FROM(apm_aec_nlp_plan);
83  SET_FROM(apm_aec_saturated);
86  SET_FROM(apm_aec_ainlp_reset_ratio);
90  }
91 
92  void SetApmAll(const AudioOptions& change) {
93  SET_FROM(apm_bypass_apm);
94  SET_FROM(apm_splitband_algroute);
95  SET_FROM(apm_print_config_detail);
96  SET_FROM(apm_enable_aec_external);
97  SET_FROM(apm_enable_ns);
98  SET_FROM(apm_ains_mode);
99  SET_FROM(apm_ains_gain_control);
100  SET_FROM(apm_ains_speech_enhance);
101  SET_FROM(apm_enable_agc);
102  SET_FROM(apm_enable_md);
103  SET_FROM(apm_aimd_value);
104  SET_FROM(apm_enable_highpass_filter);
105  SET_FROM(apm_enable_tone_remover);
106  SET_FROM(apm_enable_pitch_smoother);
107  SET_FROM(apm_enable_howling_control);
108  SET_FROM(apm_delay_offset_ms);
109  SET_FROM(apm_aec_split_srate_for_32k);
110  SET_FROM(apm_aec_split_srate_for_48k);
111  SET_FROM(apm_agc_target_level_dbfs);
112  SET_FROM(apm_agc_compression_gain_db);
113  SET_FROM(apm_agc_curve_slope);
114  SET_FROM(apm_agc_mode);
115  SET_FROM(apm_agc_bg_opt_mode);
116  SET_FROM(apm_ns_enable_ns_follow_agc);
117  SET_FROM(apm_ns_level);
118  SET_FROM(apm_ns_noiseGateThres);
119  SET_FROM(apm_ns_complexity);
120  SET_FROM(apm_enable_record_boost);
121  // AINS
122  SET_FROM(apm_ains_fft_size);
123  SET_FROM(apm_ains_maxtolerant_ms);
124  SET_FROM(apm_ains_attack_factor);
125  SET_FROM(apm_ains_release_factor);
126  SET_FROM(apm_ains_upper_bound);
127  SET_FROM(apm_ains_upper_mask);
128  SET_FROM(apm_ains_lower_bound);
129  SET_FROM(apm_ains_lower_mask);
130  SET_FROM(apm_nsng_end_start_up_long);
131  SET_FROM(apm_nsng_end_start_up_short);
132  SET_FROM(apm_nsng_quantile);
135  SET_FROM(apm_nsng_overdrive);
136  SET_FROM(apm_nsng_noise_ref_protect);
137  SET_FROM(apm_nsng_vad_threshold);
138  SET_FROM(apm_nsng_md_threshold);
139  SET_FROM(apm_ains_reset_frame);
140  SET_FROM(apm_ains_kill_highband);
141  SET_FROM(apm_ains_triangle_1);
142  SET_FROM(apm_ains_triangle_2);
143  SET_FROM(apm_ains_triangle_3);
144  SET_FROM(apm_ains_threshold_ai);
146  SET_FROM(apm_ains_enh_factor_ai);
149  SET_FROM(apm_ains_statistical_bound);
150  SET_FROM(apm_ains_gain_boost_frq1);
151  SET_FROM(apm_ains_gain_boost_gain1);
152  SET_FROM(apm_ains_gain_boost_frq2);
153  SET_FROM(apm_ains_gain_boost_gain2);
154  SET_FROM(apm_ains_gain_boost_frq3);
155  SET_FROM(apm_ains_gain_boost_gain3);
156  SET_FROM(apm_ains_final_lower_mask);
157  SET_FROM(apm_ains_noise_pow_floor);
158  SET_FROM(apm_ains_cng_base_magnitude);
159  SET_FROM(apm_ains_strategy);
160  SET_FROM(apm_ains_postfilter_margin);
161  SET_FROM(apm_ains_delaymode);
162  SET_FROM(apm_ains_aggressive);
163  SET_FROM(apm_farend_gain_threshold);
164  SET_FROM(apm_farend_gain);
165  SET_FROM(apm_process_channels);
166  SET_FROM(apm_aed_enable);
167  SET_FROM(apm_sf_enabled);
168  SET_FROM(apm_sf_procIONSample);
169  SET_FROM(apm_sf_delayMode);
170  SET_FROM(apm_sf_stftType);
171  SET_FROM(apm_sf_procChainMode);
172  SET_FROM(apm_sf_nlpEnable);
173  SET_FROM(apm_sf_nsEnable);
174  SET_FROM(apm_sf_biquadEnable);
175  SET_FROM(apm_sf_ainlpToLoadFlag);
176  SET_FROM(apm_sf_ainlpMonitorLen);
177  SET_FROM(apm_sf_ainsToLoadFlag);
178  SET_FROM(apm_sf_ainsMonitorLen);
179  SET_FROM(apm_sf_ainsLowLatencyFlag);
180  SET_FROM(apm_sf_nlpAlgRoute);
181  SET_FROM(apm_sf_nsngAlgRoute);
184  SET_FROM(apm_sf_nlpHbandAgg);
185  SET_FROM(apm_sf_ainsKillHEBandFlag);
186  SET_FROM(apm_sf_ainlpLowLatencyFlag);
187  SET_FROM(apm_sf_fallBackThrRatio);
188  SET_FROM(apm_sf_fallBackRefMode);
189  SET_FROM(apm_sf_fallBackPref);
190  SET_FROM(apm_sf_nlpNoiseAddThr);
191  SET_FROM(apm_sf_nlpNoiseAddGain);
192  SET_FROM(apm_sf_nlpAggressiveness);
193  SET_FROM(apm_sf_nlpHeadsetAgg);
194  SET_FROM(apm_sf_nlpSpkrAgg);
195  SET_FROM(apm_sf_nlpDynamicMode);
196  SET_FROM(apm_sf_ainlpHotResetFrq);
197  SET_FROM(apm_sf_ainlpHotResetFactor);
198  SET_FROM(apm_sf_ainlpMonitorQuantile);
199  SET_FROM(apm_sf_nsngPredefAgg);
200  SET_FROM(apm_sf_nsngMusicProbThr);
202  SET_FROM(apm_sf_statNsEnhFactor);
203  SET_FROM(apm_sf_statNsNoiseOverEst);
204  SET_FROM(apm_sf_statNsOverDrive);
205  SET_FROM(apm_sf_statNsLowerBound);
209  SET_FROM(apm_sf_statNsEndStartupLong);
211  SET_FROM(apm_sf_nsngMapInMaskMin);
212  SET_FROM(apm_sf_nsngMapOutMaskMin);
214  SET_FROM(apm_sf_nsngPfMargin);
215  SET_FROM(apm_sf_ainsHotResetFrq);
216  SET_FROM(apm_sf_ainsMonitorQuantile);
217  SET_FROM(apm_sf_nsngAuxToolsMode);
218  SET_FROM(apm_sf_nlpProcBand);
219  SET_FROM(apm_sf_nsProcBand);
220  SET_FROM(apm_sf_ainsModelPref);
221  SET_FROM(apm_sf_ainlpModelPref);
222  //vsc
223  SET_FROM(apm_vsc_enabled);
224  SET_FROM(apm_vsc_gender);
225  SET_FROM(apm_vsc_effect);
226  SET_FROM(apm_vsc_selfConfig);
227  SET_FROM(apm_vsc_preset);
228  SET_FROM(apm_vsc_gain);
229  }
230 
231  void SetAll(const AudioOptions& change) {
232  SetAecAll(change);
233  SetApmAll(change);
234 
235  SET_FROM(audio_scenario);
236  SET_FROM(audio_routing);
237  SET_FROM(input_audio_routing);
238  SET_FROM(adm_android_mode);
240  SET_FROM(audio_channel_profile);
241  SET_FROM(audio_routing_version);
245  SET_FROM(adm_capture_io_buffer_ms);
246  SET_FROM(adm_force_layer);
247  SET_FROM(adm_duck_others);
248  SET_FROM(adm_mix_with_others);
250  SET_FROM(adm_enable_fallback);
251  SET_FROM(adm_specify_category);
254  SET_FROM(has_remote_peers);
255  SET_FROM(has_enabled_ear_monitor);
256  SET_FROM(adm_input_sample_rate);
257  SET_FROM(adm_output_sample_rate);
258  SET_FROM(adm_enable_exclusive_mode);
259  SET_FROM(adm_input_channels);
260  SET_FROM(adm_output_channels);
261  SET_FROM(adm_has_recorded);
262  SET_FROM(external_adm_has_recorded);
263  SET_FROM(adm_enable_mic_selection);
265  SET_FROM(adm_use_bluetooth_hfp);
266  SET_FROM(adm_use_hw_aec);
267  SET_FROM(adm_force_restart);
268  SET_FROM(adm_microphone_preference);
269  SET_FROM(adm_speaker_balance);
270  SET_FROM(adm_audio_layer);
271  SET_FROM(adm_audio_source);
272  SET_FROM(adm_playout_bufsize_factor);
273  SET_FROM(adm_enable_builtin3a);
274  SET_FROM(adm_extra_playout_latency);
275  SET_FROM(adm_extra_record_latency);
276  SET_FROM(adm_opensl_output_bufs);
277  SET_FROM(adm_opensl_input_bufs);
278  SET_FROM(adm_bypass_vpio_processing);
279  SET_FROM(adm_enable_async_process);
280  SET_FROM(adm_ducking_option_advanced);
281  SET_FROM(adm_ducking_option_level);
282  SET_FROM(adm_ears_monitor_channels);
283  SET_FROM(uplink_apm_async_process);
286  SET_FROM(enable_stereo_playout);
288  SET_FROM(mute_playout_signal);
291  SET_FROM(enable_receiver_apm);
292  SET_FROM(downlink_peq_enable);
293  SET_FROM(uplink_voice_over_enable);
294  SET_FROM(downlink_voice_over_enable);
301  SET_FROM(adm_mac_use_audio_unit_hal);
304  SET_FROM(acm_bitrate);
305  SET_FROM(acm_codec);
306  SET_FROM(acm_dtx);
307  SET_FROM(acm_plc);
308  SET_FROM(acm_complex_level);
309  SET_FROM(acm_ptime);
310  SET_FROM(acm_hw_encode_opus);
311  SET_FROM(acm_hw_decode_opus);
312  SET_FROM(acm_opus_celt_only);
313  SET_FROM(acm_opus_max_encoded_bytes);
314  SET_FROM(acm_opus_voice_threshold);
316  SET_FROM(acm_opus_voice_up_coef);
317  SET_FROM(acm_opus_voice_down_coef);
319  SET_FROM(acm_opus_silence_bitrate);
320  SET_FROM(audio_resend);
321  SET_FROM(audio_rsfec_frame_num);
322  SET_FROM(audio_rsfec_interleave_num);
323  SET_FROM(audio_fec_frame_num);
324  SET_FROM(audio_fec_interleave_num);
325  SET_FROM(neteq_live_min_delay);
329  SET_FROM(neteq_filter_target_loss);
330  SET_FROM(neteq_max_filter_window);
331  SET_FROM(neteq_acceleration_percent);
332  SET_FROM(neteq_deceleration_percent);
334  SET_FROM(neteq_enable_peak_detector);
335  SET_FROM(neteq_enable_muted_state);
336  SET_FROM(neteq_max_exceed_time_ms);
337  SET_FROM(neteq_max_filter_dup_num);
340  SET_FROM(neteq_enable_improve_burst);
341  SET_FROM(neteq_max_mute_duration_ms);
358  SET_FROM(neteq_freeze_m);
359  SET_FROM(neteq_freeze_n);
360  SET_FROM(neteq_targetlevel_offset);
361  SET_FROM(neteq_enable_stable_playout);
369  SET_FROM(neteq_aqm_voice_threshold);
370  SET_FROM(neteq_dump_level);
371  SET_FROM(neteq_dump_path);
372  SET_FROM(neteq_limit_prob);
373  SET_FROM(neteq_pre_dump);
375  SET_FROM(neteq_plc_mode);
376  SET_FROM(neteq_outlier_detector);
377  SET_FROM(dwlink_gain);
378  SET_FROM(uplink_gain);
379  SET_FROM(adm_separate_audio_unit);
381  SET_FROM(use_media_volume_in_headset);
383  SET_FROM(use_media_volume_in_solo);
385  }
386 
387  bool operator==(const AudioOptions& o) const {
388  BEGIN_COMPARE();
389  ADD_COMPARE(audio_scenario);
390  ADD_COMPARE(audio_routing);
391  ADD_COMPARE(input_audio_routing);
392  ADD_COMPARE(adm_android_mode);
394  ADD_COMPARE(audio_channel_profile);
395  ADD_COMPARE(audio_routing_version);
397  ADD_COMPARE(adm_enable_lowlatency_capture);
398  ADD_COMPARE(adm_enable_lowlatency_playout);
399  ADD_COMPARE(adm_capture_io_buffer_ms);
400  ADD_COMPARE(adm_force_layer);
401  ADD_COMPARE(adm_duck_others);
402  ADD_COMPARE(adm_mix_with_others);
403  ADD_COMPARE(adm_restart_when_interrupted);
404  ADD_COMPARE(adm_enable_fallback);
405  ADD_COMPARE(adm_specify_category);
407  ADD_COMPARE(adm_allow_haptics_during_record);
408  ADD_COMPARE(has_remote_peers);
409  ADD_COMPARE(has_enabled_ear_monitor);
410  ADD_COMPARE(adm_input_sample_rate);
411  ADD_COMPARE(adm_output_sample_rate);
412  ADD_COMPARE(adm_enable_exclusive_mode);
413  ADD_COMPARE(adm_input_channels);
414  ADD_COMPARE(adm_output_channels);
415  ADD_COMPARE(adm_has_recorded);
416  ADD_COMPARE(external_adm_has_recorded);
417  ADD_COMPARE(adm_enable_mic_selection);
418  ADD_COMPARE(adm_force_use_bluetooth_a2dp);
419  ADD_COMPARE(adm_use_bluetooth_hfp);
420  ADD_COMPARE(adm_use_hw_aec);
421  ADD_COMPARE(adm_force_restart);
422  ADD_COMPARE(adm_microphone_preference);
423  ADD_COMPARE(adm_speaker_balance);
424  ADD_COMPARE(adm_audio_layer);
425  ADD_COMPARE(adm_audio_source);
426  ADD_COMPARE(adm_playout_bufsize_factor);
427  ADD_COMPARE(adm_enable_builtin3a);
428  ADD_COMPARE(uplink_apm_async_process);
429  ADD_COMPARE(only_report_microphone_volume);
430  ADD_COMPARE(enable_multi_drive_apparatus);
431  ADD_COMPARE(enable_stereo_playout);
433  ADD_COMPARE(mute_playout_signal);
435  ADD_COMPARE(enable_muted_talker_detection);
436  ADD_COMPARE(enable_receiver_apm);
437  ADD_COMPARE(downlink_peq_enable);
438  ADD_COMPARE(uplink_voice_over_enable);
439  ADD_COMPARE(downlink_voice_over_enable);
440  ADD_COMPARE(adm_extra_playout_latency);
441  ADD_COMPARE(adm_extra_record_latency);
442  ADD_COMPARE(adm_opensl_output_bufs);
443  ADD_COMPARE(adm_opensl_input_bufs);
444  ADD_COMPARE(adm_bypass_vpio_processing);
445  ADD_COMPARE(adm_enable_async_process);
446  ADD_COMPARE(adm_ducking_option_advanced);
447  ADD_COMPARE(adm_ducking_option_level);
448  ADD_COMPARE(adm_ears_monitor_channels);
449  ADD_COMPARE(apm_process_channels);
450  ADD_COMPARE(apm_bypass_apm);
451  ADD_COMPARE(apm_splitband_algroute);
452  ADD_COMPARE(apm_print_config_detail);
453  ADD_COMPARE(apm_enable_aec);
454  ADD_COMPARE(apm_enable_aec_external);
455  ADD_COMPARE(apm_aec_nlp_size);
456  ADD_COMPARE(apm_aec_nlp_hop_size);
457  ADD_COMPARE(apm_aec_delay_search_range_ms);
458  ADD_COMPARE(apm_aec_delay_search_method);
459  ADD_COMPARE(apm_aec_fixed_delay);
460  ADD_COMPARE(apm_aec_extra_delay_bias);
462  ADD_COMPARE(apm_aiaec_main_switch);
463  ADD_COMPARE(apm_aec_nlp_plan);
464  ADD_COMPARE(apm_aec_saturated);
465  ADD_COMPARE(apm_aec_ainlp_profile_method);
466  ADD_COMPARE(apm_aec_ainlp_reset_period);
467  ADD_COMPARE(apm_aec_ainlp_reset_ratio);
468  ADD_COMPARE(apm_aec_ainlp_fallback_period);
470  ADD_COMPARE(apm_aec_linear_filter_type);
471  ADD_COMPARE(apm_enable_ns);
472  ADD_COMPARE(apm_ains_mode);
473  ADD_COMPARE(apm_ains_gain_control);
474  ADD_COMPARE(apm_ains_speech_enhance);
475  // AINS
476  ADD_COMPARE(apm_ains_fft_size);
477  ADD_COMPARE(apm_ains_maxtolerant_ms);
478  ADD_COMPARE(apm_ains_attack_factor);
479  ADD_COMPARE(apm_ains_release_factor);
480  ADD_COMPARE(apm_ains_upper_bound);
481  ADD_COMPARE(apm_ains_upper_mask);
482  ADD_COMPARE(apm_ains_lower_bound);
483  ADD_COMPARE(apm_ains_lower_mask);
484  ADD_COMPARE(apm_nsng_end_start_up_long);
485  ADD_COMPARE(apm_nsng_end_start_up_short);
486  ADD_COMPARE(apm_nsng_quantile);
487  ADD_COMPARE(apm_nsng_noise_update_factor);
488  ADD_COMPARE(apm_nsng_speech_update_factor);
489  ADD_COMPARE(apm_nsng_overdrive);
490  ADD_COMPARE(apm_nsng_noise_ref_protect);
491  ADD_COMPARE(apm_nsng_vad_threshold);
492  ADD_COMPARE(apm_nsng_md_threshold);
493  ADD_COMPARE(apm_ains_reset_frame);
494  ADD_COMPARE(apm_ains_kill_highband);
495  ADD_COMPARE(apm_ains_triangle_1);
496  ADD_COMPARE(apm_ains_triangle_2);
497  ADD_COMPARE(apm_ains_triangle_3);
498  ADD_COMPARE(apm_ains_threshold_ai);
499  ADD_COMPARE(apm_ains_threshold_stastical);
500  ADD_COMPARE(apm_ains_enh_factor_ai);
501  ADD_COMPARE(apm_ains_enh_factor_stastical);
502  ADD_COMPARE(apm_ains_noise_over_estimate);
503  ADD_COMPARE(apm_ains_statistical_bound);
504  ADD_COMPARE(apm_ains_gain_boost_frq1);
505  ADD_COMPARE(apm_ains_gain_boost_gain1);
506  ADD_COMPARE(apm_ains_gain_boost_frq2);
507  ADD_COMPARE(apm_ains_gain_boost_gain2);
508  ADD_COMPARE(apm_ains_gain_boost_frq3);
509  ADD_COMPARE(apm_ains_gain_boost_gain3);
510  ADD_COMPARE(apm_ains_final_lower_mask);
511  ADD_COMPARE(apm_ains_noise_pow_floor);
512  ADD_COMPARE(apm_ains_cng_base_magnitude);
513  ADD_COMPARE(apm_ains_strategy);
514  ADD_COMPARE(apm_ains_postfilter_margin);
515  ADD_COMPARE(apm_ains_delaymode);
516  ADD_COMPARE(apm_ains_aggressive);
517  ADD_COMPARE(apm_farend_gain_threshold);
519  ADD_COMPARE(adm_windows_layer_with_waveapi);
524  ADD_COMPARE(adm_mac_use_audio_unit_hal);
527  ADD_COMPARE(apm_farend_gain);
528  ADD_COMPARE(apm_enable_agc);
529  ADD_COMPARE(apm_enable_md);
530  ADD_COMPARE(apm_aimd_value);
531  ADD_COMPARE(apm_enable_highpass_filter);
532  ADD_COMPARE(apm_enable_tone_remover);
533  ADD_COMPARE(apm_enable_pitch_smoother);
534  ADD_COMPARE(apm_enable_howling_control);
535  ADD_COMPARE(apm_delay_offset_ms);
536  ADD_COMPARE(apm_aec_nlp_aggressiveness);
538  ADD_COMPARE(apm_aec_complexity);
539  ADD_COMPARE(apm_aec_sw_processing_mode);
540  ADD_COMPARE(apm_aec_linear_filter_length_ms);
541  ADD_COMPARE(apm_aec_split_srate_for_32k);
542  ADD_COMPARE(apm_aec_split_srate_for_48k);
543  ADD_COMPARE(apm_agc_target_level_dbfs);
544  ADD_COMPARE(apm_agc_compression_gain_db);
545  ADD_COMPARE(apm_agc_curve_slope);
546  ADD_COMPARE(apm_agc_mode);
547  ADD_COMPARE(apm_agc_bg_opt_mode);
548  ADD_COMPARE(apm_aec_nlp_enable);
549  ADD_COMPARE(apm_aec_alignRefDelay);
550  ADD_COMPARE(apm_aed_enable);
551  ADD_COMPARE(apm_sf_enabled);
552  ADD_COMPARE(apm_sf_procIONSample);
553  ADD_COMPARE(apm_sf_delayMode);
554  ADD_COMPARE(apm_sf_stftType);
555  ADD_COMPARE(apm_sf_procChainMode);
556  ADD_COMPARE(apm_sf_nlpEnable);
557  ADD_COMPARE(apm_sf_nsEnable);
558  ADD_COMPARE(apm_sf_biquadEnable);
559  ADD_COMPARE(apm_sf_ainlpToLoadFlag);
560  ADD_COMPARE(apm_sf_ainlpMonitorLen);
561  ADD_COMPARE(apm_sf_ainsToLoadFlag);
562  ADD_COMPARE(apm_sf_ainsMonitorLen);
563  ADD_COMPARE(apm_sf_ainsLowLatencyFlag);
564  ADD_COMPARE(apm_sf_nlpAlgRoute);
565  ADD_COMPARE(apm_sf_nsngAlgRoute);
566  ADD_COMPARE(apm_sf_nlpFrmRemoveEngRatioThr);
567  ADD_COMPARE(apm_sf_trdNlpFrmRmvEngRatioThr);
568  ADD_COMPARE(apm_sf_nlpHbandAgg);
569  ADD_COMPARE(apm_sf_ainsKillHEBandFlag);
570  ADD_COMPARE(apm_sf_ainlpLowLatencyFlag);
571  ADD_COMPARE(apm_sf_fallBackThrRatio);
572  ADD_COMPARE(apm_sf_fallBackRefMode);
573  ADD_COMPARE(apm_sf_fallBackPref);
574  ADD_COMPARE(apm_sf_nlpNoiseAddThr);
575  ADD_COMPARE(apm_sf_nlpNoiseAddGain);
576  ADD_COMPARE(apm_sf_nlpAggressiveness);
577  ADD_COMPARE(apm_sf_nlpHeadsetAgg);
578  ADD_COMPARE(apm_sf_nlpSpkrAgg);
579  ADD_COMPARE(apm_sf_nlpDynamicMode);
580  ADD_COMPARE(apm_sf_ainlpHotResetFrq);
581  ADD_COMPARE(apm_sf_ainlpHotResetFactor);
582  ADD_COMPARE(apm_sf_ainlpMonitorQuantile);
583  ADD_COMPARE(apm_sf_nsngPredefAgg);
584  ADD_COMPARE(apm_sf_nsngMusicProbThr);
585  ADD_COMPARE(apm_sf_nsngMusicModeBackoffDB);
586  ADD_COMPARE(apm_sf_statNsEnhFactor);
587  ADD_COMPARE(apm_sf_statNsNoiseOverEst);
588  ADD_COMPARE(apm_sf_statNsOverDrive);
589  ADD_COMPARE(apm_sf_statNsLowerBound);
590  ADD_COMPARE(apm_sf_statNsSpchUpdateRadix);
591  ADD_COMPARE(apm_sf_statNsNoiseUpdateRadix);
592  ADD_COMPARE(apm_sf_statNsEndStartupShort);
593  ADD_COMPARE(apm_sf_statNsEndStartupLong);
595  ADD_COMPARE(apm_sf_nsngMapInMaskMin);
596  ADD_COMPARE(apm_sf_nsngMapOutMaskMin);
597  ADD_COMPARE(apm_sf_nsngFinalMaskLowerBound);
598  ADD_COMPARE(apm_sf_nsngPfMargin);
599  ADD_COMPARE(apm_sf_ainsHotResetFrq);
600  ADD_COMPARE(apm_sf_ainsMonitorQuantile);
601  ADD_COMPARE(apm_sf_nsngAuxToolsMode);
602  ADD_COMPARE(apm_sf_nlpProcBand);
603  ADD_COMPARE(apm_sf_nsProcBand);
604  ADD_COMPARE(apm_sf_ainsModelPref);
605  ADD_COMPARE(apm_sf_ainlpModelPref);
606  ADD_COMPARE(apm_vsc_enabled);
607  ADD_COMPARE(apm_vsc_gender);
608  ADD_COMPARE(apm_vsc_effect);
609  ADD_COMPARE(apm_vsc_selfConfig);
610  ADD_COMPARE(apm_vsc_preset);
611  ADD_COMPARE(apm_vsc_gain);
612  ADD_COMPARE(apm_ns_enable_ns_follow_agc);
613  ADD_COMPARE(apm_ns_level);
614  ADD_COMPARE(apm_ns_noiseGateThres);
615  ADD_COMPARE(apm_ns_complexity);
616  ADD_COMPARE(apm_enable_record_boost);
617  ADD_COMPARE(acm_bitrate);
618  ADD_COMPARE(acm_codec);
619  ADD_COMPARE(acm_dtx);
620  ADD_COMPARE(acm_plc);
621  ADD_COMPARE(acm_complex_level);
622  ADD_COMPARE(acm_ptime);
623  ADD_COMPARE(acm_hw_encode_opus);
624  ADD_COMPARE(acm_hw_decode_opus);
625  ADD_COMPARE(acm_opus_celt_only);
626  ADD_COMPARE(acm_opus_max_encoded_bytes);
627  ADD_COMPARE(acm_opus_voice_threshold);
629  ADD_COMPARE(acm_opus_voice_up_coef);
630  ADD_COMPARE(acm_opus_voice_down_coef);
631  ADD_COMPARE(acm_opus_voice_hold_window_ms);
632  ADD_COMPARE(acm_opus_silence_bitrate);
633  ADD_COMPARE(audio_resend);
634  ADD_COMPARE(audio_rsfec_frame_num);
635  ADD_COMPARE(audio_rsfec_interleave_num);
636  ADD_COMPARE(audio_fec_frame_num);
637  ADD_COMPARE(audio_fec_interleave_num);
638  ADD_COMPARE(neteq_live_min_delay);
639  ADD_COMPARE(neteq_jitter_buffer_max_packets);
641  ADD_COMPARE(neteq_jitter_max_target_delay);
642  ADD_COMPARE(neteq_filter_target_loss);
643  ADD_COMPARE(neteq_max_filter_window);
644  ADD_COMPARE(neteq_acceleration_percent);
645  ADD_COMPARE(neteq_deceleration_percent);
647  ADD_COMPARE(neteq_enable_peak_detector);
648  ADD_COMPARE(neteq_enable_muted_state);
649  ADD_COMPARE(neteq_max_exceed_time_ms);
650  ADD_COMPARE(neteq_max_filter_dup_num);
651  ADD_COMPARE(neteq_enable_voice_volume_level);
653  ADD_COMPARE(neteq_enable_improve_burst);
654  ADD_COMPARE(neteq_max_mute_duration_ms);
671  ADD_COMPARE(neteq_freeze_m);
672  ADD_COMPARE(neteq_freeze_n);
673  ADD_COMPARE(neteq_targetlevel_offset);
674  ADD_COMPARE(neteq_enable_stable_playout);
675  ADD_COMPARE(neteq_drop_window_threshold_ms);
681  ADD_COMPARE(neteq_target_level_optimization);
682  ADD_COMPARE(neteq_aqm_voice_threshold);
683  ADD_COMPARE(neteq_dump_level);
684  ADD_COMPARE(neteq_dump_path);
685  ADD_COMPARE(neteq_limit_prob);
686  ADD_COMPARE(neteq_pre_dump);
687  ADD_COMPARE(neteq_lower_limit_probability);
688  ADD_COMPARE(neteq_plc_mode);
689  ADD_COMPARE(neteq_outlier_detector);
690  ADD_COMPARE(dwlink_gain);
691  ADD_COMPARE(uplink_gain);
692  ADD_COMPARE(adm_separate_audio_unit);
694  ADD_COMPARE(use_media_volume_in_headset);
695  ADD_COMPARE(use_media_volume_in_audience);
696  ADD_COMPARE(use_media_volume_in_solo);
697  ADD_COMPARE(use_media_volume_in_bluetooth);
698  END_COMPARE_AND_RETURN();
699  }
700 
703  return *this;
704  }
705 
706  bool operator!=(const AudioOptions& o) const { return !(*this == o); }
707 
708  Optional<uint32_t> audio_scenario; // agora::rtc::AUDIO_SCENARIO_TYPE
709  Optional<uint32_t> audio_routing; // agora::rtc::AudioRoute
711  Optional<uint32_t> adm_android_mode; // agora::rtc::ADM_ANDROID_MODE
721  // ios::AVAudioSessionCategoryOptionMixWithOthers
738  // ios::AVAudioSessionCategoryOptionAllowBluetoothA2DP
749 
762 
772  Optional<int> apm_process_channels; // agora::media::base::AUDIO_PROCESS_CHANNELS
886  // AINS
887  // che.audio.nsng.anasize , che.audio.nsng.fftsize
889  // che.audio.nsng.maxtime
891  // che.audio.nsng.attackfactor
893  // che.audio.nsng.releasefactor
895  // che.audio.nsng.upperbound
897  // che.audio.nsng.uppermask
899  // che.audio.nsng.lowerBound
901  // che.audio.nsng.lowerMask
903  //che.audio.ns.end_startup_long
905  //che.audio.ns.end_startup_short
907  //che.audio.ns.quntile
909  //che.audio.ns.noise_update_factor
911  //che.audio.ns.speech_update_factor
913  //che.audio.ns.overdrive
915  //che.audio.vad.threshold
917  //che.audio.md.threshold
919  //che.audio.nsng.ains_reset_frame
921  //che.audio.nsng.ains_kill_highband
923  //che.audio.ns.noise_ref_protect
925  // che.audio.nsng.triangle_1
927  // che.audio.nsng.triangle_2
929  // che.audio.nsng.triangle_3
931  // che.audio.nsng.thresholdai
933  // che.audio.nsng.thresholdstastical
935  // che.audio.nsng.enhfactorai
937  // che.audio.nsng.enhfactorstastical
939  // che.audio.nsng.noiseoverestimate
941  // che.audio.nsng.statisticalbound
943  // che.audio.nsng.gainboostfreq1
945  // che.audio.nsng.gainboostval1
947  // che.audio.nsng.gainboostfreq2
949  // che.audio.nsng.gainboostval2
951  // che.audio.nsng.gainboostfreq3
953  // che.audio.nsng.gainboostval3
955  // che.audio.nsng.finallowermask
957  // che.audio.nsng.noisepowfloor
959  // che.audio.nsng.pinkfactor , che.audio.nsng.cngbasemagnitude
961  // che.audio.nsng.strategy
963  // che.audio.nsng.postfiltermargin
965  // che.audio.nsng.delaymode
967  // che.audio.nsng.aggressive
969 
970  // Double talk detection switcher.
971  // Android game streaming scenario should be true, all other cases should be false;
1048 
1061 
1062  // derived options
1068 
1069  private:
1070  template <typename T>
1071  static void SetFrom(Optional<T>* s, const Optional<T>& o) {
1072  if (o) {
1073  *s = o;
1074  }
1075  }
1076 };
1077 
1078 } // namespace rtc
1079 } // namespace agora
agora::rtc::AudioOptions::apm_sf_statNsEndStartupLong
Optional< int > apm_sf_statNsEndStartupLong
Definition: audio_options_i.h:863
agora::rtc::AudioOptions::apm_sf_statNsEndStartupShort
Optional< int > apm_sf_statNsEndStartupShort
Definition: audio_options_i.h:862
agora::rtc::AudioOptions::apm_enable_ns
Optional< bool > apm_enable_ns
Definition: audio_options_i.h:794
agora::rtc::AudioOptions::apm_nsng_end_start_up_short
Optional< int32_t > apm_nsng_end_start_up_short
Definition: audio_options_i.h:906
agora::rtc::AudioOptions::acm_plc
Optional< bool > acm_plc
Definition: audio_options_i.h:987
agora::rtc::AudioOptions::apm_aec_ainlp_reset_period
Optional< int > apm_aec_ainlp_reset_period
Definition: audio_options_i.h:789
agora::rtc::AudioOptions::apm_splitband_algroute
Optional< int > apm_splitband_algroute
Definition: audio_options_i.h:774
agora::rtc::AudioOptions::apm_sf_nlpEnable
Optional< int > apm_sf_nlpEnable
Definition: audio_options_i.h:826
agora::rtc::AudioOptions::apm_ains_threshold_ai
Optional< int32_t > apm_ains_threshold_ai
Definition: audio_options_i.h:932
agora::rtc::AudioOptions::dwlink_gain
Optional< uint32_t > dwlink_gain
Definition: audio_options_i.h:1058
agora::rtc::AudioOptions::apm_sf_fallBackPref
Optional< int > apm_sf_fallBackPref
Definition: audio_options_i.h:843
agora::rtc::AudioOptions::enable_concurrent_downlink_processing
Optional< bool > enable_concurrent_downlink_processing
Definition: audio_options_i.h:754
agora::rtc::AudioOptions::apm_ains_gain_boost_gain3
Optional< int32_t > apm_ains_gain_boost_gain3
Definition: audio_options_i.h:954
agora::rtc::AudioOptions::apm_ains_cng_base_magnitude
Optional< int32_t > apm_ains_cng_base_magnitude
Definition: audio_options_i.h:960
agora::rtc::AudioOptions::acm_opus_voice_hold_window_ms
Optional< int32_t > acm_opus_voice_hold_window_ms
Definition: audio_options_i.h:998
agora::rtc::AudioOptions::uplink_voice_over_enable
Optional< bool > uplink_voice_over_enable
Definition: audio_options_i.h:760
agora::rtc::AudioOptions::apm_ains_final_lower_mask
Optional< int32_t > apm_ains_final_lower_mask
Definition: audio_options_i.h:956
agora::rtc::AudioOptions::only_report_microphone_volume
Optional< bool > only_report_microphone_volume
Definition: audio_options_i.h:751
agora::rtc::AudioOptions::apm_sf_nsngPredefAgg
Optional< int > apm_sf_nsngPredefAgg
Definition: audio_options_i.h:853
agora::rtc::JAVA_INPUT_AND_JAVA_OUTPUT
@ JAVA_INPUT_AND_JAVA_OUTPUT
Definition: audio_options_i.h:33
agora::rtc::AudioOptions::adm_enable_builtin3a
Optional< bool > adm_enable_builtin3a
Definition: audio_options_i.h:748
agora::rtc::AudioOptions::apm_sf_nlpNoiseAddThr
Optional< int > apm_sf_nlpNoiseAddThr
Definition: audio_options_i.h:844
agora::rtc::AudioOptions::neteq_enable_peak_detector
Optional< bool > neteq_enable_peak_detector
Definition: audio_options_i.h:1014
agora::rtc::AudioOptions::apm_aec_extra_delay_bias
Optional< int > apm_aec_extra_delay_bias
Definition: audio_options_i.h:786
agora::rtc::AudioOptions
Definition: audio_options_i.h:61
agora::rtc::AudioOptions::apm_aec_alignRefDelay
Optional< bool > apm_aec_alignRefDelay
Definition: audio_options_i.h:819
agora::rtc::AudioOptions::apm_aec_split_srate_for_32k
Optional< int32_t > apm_aec_split_srate_for_32k
Definition: audio_options_i.h:811
agora::rtc::AudioOptions::apm_sf_nsngMapOutMaskMin
Optional< int > apm_sf_nsngMapOutMaskMin
Definition: audio_options_i.h:866
agora::rtc::AudioOptions::apm_aec_nlp_hop_size
Optional< int > apm_aec_nlp_hop_size
Definition: audio_options_i.h:782
agora::rtc::AudioOptions::adm_mac_use_audio_unit_hal
Optional< bool > adm_mac_use_audio_unit_hal
Definition: audio_options_i.h:980
agora::rtc::AudioOptions::apm_sf_nlpHbandAgg
Optional< int > apm_sf_nlpHbandAgg
Definition: audio_options_i.h:838
agora::rtc::AudioOptions::adm_enable_fallback
Optional< bool > adm_enable_fallback
Definition: audio_options_i.h:724
agora::rtc::AudioOptions::apm_ains_gain_boost_frq3
Optional< int32_t > apm_ains_gain_boost_frq3
Definition: audio_options_i.h:952
agora::rtc::AudioOptions::apm_ains_upper_mask
Optional< int32_t > apm_ains_upper_mask
Definition: audio_options_i.h:898
agora::rtc::AudioOptions::apm_aimd_value
Optional< int > apm_aimd_value
Definition: audio_options_i.h:800
agora::rtc::AudioOptions::uplink_apm_async_process
Optional< bool > uplink_apm_async_process
Definition: audio_options_i.h:750
agora::rtc::AudioOptions::audio_fec_interleave_num
Optional< uint32_t > audio_fec_interleave_num
Definition: audio_options_i.h:1004
agora::rtc::AudioOptions::adm_ducking_option_advanced
Optional< bool > adm_ducking_option_advanced
Definition: audio_options_i.h:769
agora::rtc::AudioOptions::SetApmAll
void SetApmAll(const AudioOptions &change)
Definition: audio_options_i.h:92
agora::rtc::AudioOptions::apm_nsng_noise_update_factor
Optional< int32_t > apm_nsng_noise_update_factor
Definition: audio_options_i.h:910
agora::rtc::AudioOptions::apm_ains_maxtolerant_ms
Optional< int32_t > apm_ains_maxtolerant_ms
Definition: audio_options_i.h:890
agora::rtc::AudioOptions::audio_scenario
Optional< uint32_t > audio_scenario
Definition: audio_options_i.h:708
agora::rtc::AudioOptions::apm_agc_curve_slope
Optional< uint32_t > apm_agc_curve_slope
Definition: audio_options_i.h:815
agora::rtc::AudioOptions::neteq_drop_distance_threshold_ms
Optional< int32_t > neteq_drop_distance_threshold_ms
Definition: audio_options_i.h:1043
agora::rtc::AudioOptions::onmix_callback_with_external_source
Optional< bool > onmix_callback_with_external_source
Definition: audio_options_i.h:756
agora::rtc::AudioOptions::apm_ains_delaymode
Optional< int32_t > apm_ains_delaymode
Definition: audio_options_i.h:966
agora::rtc::AudioOptions::adm_force_restart
Optional< bool > adm_force_restart
Definition: audio_options_i.h:742
agora::rtc::AudioOptions::apm_ains_speech_enhance
Optional< int > apm_ains_speech_enhance
Definition: audio_options_i.h:797
agora::rtc::AudioOptions::neteq_prebuffer_window_threshold_ms
Optional< int32_t > neteq_prebuffer_window_threshold_ms
Definition: audio_options_i.h:1044
agora::rtc::AudioOptions::apm_sf_nlpNoiseAddGain
Optional< int > apm_sf_nlpNoiseAddGain
Definition: audio_options_i.h:845
agora::rtc::AudioOptions::neteq_max_filter_window
Optional< int32_t > neteq_max_filter_window
Definition: audio_options_i.h:1010
agora::rtc::AudioOptions::apm_ains_aggressive
Optional< int32_t > apm_ains_aggressive
Definition: audio_options_i.h:968
agora::rtc::AudioOptions::apm_farend_gain
Optional< uint32_t > apm_farend_gain
Definition: audio_options_i.h:983
agora::rtc::AudioOptions::downlink_peq_enable
Optional< bool > downlink_peq_enable
Definition: audio_options_i.h:759
agora::rtc::AudioOptions::audio_fec_frame_num
Optional< uint32_t > audio_fec_frame_num
Definition: audio_options_i.h:1003
agora::rtc::AudioOptions::apm_vsc_preset
Optional< int > apm_vsc_preset
Definition: audio_options_i.h:880
agora::rtc::AudioOptions::neteq_low_latency_burst_overuse_limited_quantile
Optional< int32_t > neteq_low_latency_burst_overuse_limited_quantile
Definition: audio_options_i.h:1027
agora::rtc::AudioOptions::enable_receiver_apm
Optional< bool > enable_receiver_apm
Definition: audio_options_i.h:758
agora::rtc::AudioOptions::apm_sf_fallBackRefMode
Optional< int > apm_sf_fallBackRefMode
Definition: audio_options_i.h:842
agora::rtc::AudioOptions::apm_ains_release_factor
Optional< int32_t > apm_ains_release_factor
Definition: audio_options_i.h:894
agora::rtc::AudioOptions::apm_nsng_speech_update_factor
Optional< int32_t > apm_nsng_speech_update_factor
Definition: audio_options_i.h:912
agora::rtc::AudioOptions::adm_restart_when_interrupted
Optional< bool > adm_restart_when_interrupted
Definition: audio_options_i.h:723
agora::rtc::AudioOptions::apm_enable_agc
Optional< bool > apm_enable_agc
Definition: audio_options_i.h:798
agora::rtc::AudioOptions::adm_input_channels
Optional< uint32_t > adm_input_channels
Definition: audio_options_i.h:733
agora::rtc::AudioOptions::apm_ains_triangle_1
Optional< int32_t > apm_ains_triangle_1
Definition: audio_options_i.h:926
agora::rtc::AudioOptions::apm_enable_tone_remover
Optional< bool > apm_enable_tone_remover
Definition: audio_options_i.h:802
agora::rtc::AudioOptions::audio_channel_profile
Optional< uint32_t > audio_channel_profile
Definition: audio_options_i.h:713
agora::rtc::AudioOptions::adm_duck_others
Optional< bool > adm_duck_others
Definition: audio_options_i.h:720
agora::rtc::AudioOptions::adm_output_channels
Optional< uint32_t > adm_output_channels
Definition: audio_options_i.h:734
agora::rtc::OBOE_INPUT_AND_OBOE_OUTPUT
@ OBOE_INPUT_AND_OBOE_OUTPUT
Definition: audio_options_i.h:51
agora::rtc::AudioOptions::apm_sf_statNsNoiseUpdateRadix
Optional< int > apm_sf_statNsNoiseUpdateRadix
Definition: audio_options_i.h:861
agora::rtc::AudioOptions::apm_sf_enabled
Optional< bool > apm_sf_enabled
Definition: audio_options_i.h:821
agora::rtc::AudioOptions::adm_microphone_volume_init_state
Optional< bool > adm_microphone_volume_init_state
Definition: audio_options_i.h:979
agora::rtc::AudioOptions::apm_aec_linear_filter_type
Optional< int > apm_aec_linear_filter_type
Definition: audio_options_i.h:793
agora::rtc::AudioOptions::mute_playout_signal
Optional< bool > mute_playout_signal
Definition: audio_options_i.h:755
agora::rtc::AudioOptions::apm_process_channels
Optional< int > apm_process_channels
Definition: audio_options_i.h:772
agora::rtc::AudioOptions::adm_opensl_output_bufs
Optional< int > adm_opensl_output_bufs
Definition: audio_options_i.h:765
agora::rtc::AudioOptions::neteq_low_latency_burst_max_jitter_limit_ms
Optional< int32_t > neteq_low_latency_burst_max_jitter_limit_ms
Definition: audio_options_i.h:1029
agora::rtc::AudioOptions::apm_aec_ainlp_reset_ratio
Optional< int > apm_aec_ainlp_reset_ratio
Definition: audio_options_i.h:790
agora::rtc::AudioOptions::neteq_acceleration_percent
Optional< int32_t > neteq_acceleration_percent
Definition: audio_options_i.h:1011
agora::rtc::AudioOptions::operator!=
bool operator!=(const AudioOptions &o) const
Definition: audio_options_i.h:706
agora::rtc::AudioOptions::neteq_enable_voice_volume_level
Optional< bool > neteq_enable_voice_volume_level
Definition: audio_options_i.h:1018
agora::rtc::AudioOptions::apm_sf_ainlpHotResetFrq
Optional< int > apm_sf_ainlpHotResetFrq
Definition: audio_options_i.h:850
agora::rtc::AudioOptions::adm_output_sample_rate
Optional< uint32_t > adm_output_sample_rate
Definition: audio_options_i.h:731
agora::rtc::AudioOptions::apm_sf_ainsLowLatencyFlag
Optional< int > apm_sf_ainsLowLatencyFlag
Definition: audio_options_i.h:833
agora::rtc::AudioOptions::acm_codec
Optional< uint32_t > acm_codec
Definition: audio_options_i.h:985
agora::rtc::AudioOptions::apm_enable_record_boost
Optional< bool > apm_enable_record_boost
Definition: audio_options_i.h:972
agora::rtc::AudioOptions::neteq_high_latency_burst_control_window_ms
Optional< int32_t > neteq_high_latency_burst_control_window_ms
Definition: audio_options_i.h:1030
agora::rtc::AudioOptions::apm_sf_ainlpHotResetFactor
Optional< int > apm_sf_ainlpHotResetFactor
Definition: audio_options_i.h:851
agora::rtc::AudioOptions::adm_extra_record_latency
Optional< int > adm_extra_record_latency
Definition: audio_options_i.h:764
agora::rtc::AudioOptions::neteq_enable_stable_playout
Optional< bool > neteq_enable_stable_playout
Definition: audio_options_i.h:1041
agora::rtc::AudioOptions::apm_ains_strategy
Optional< int32_t > apm_ains_strategy
Definition: audio_options_i.h:962
agora::rtc::AudioOptions::acm_opus_celt_only
Optional< bool > acm_opus_celt_only
Definition: audio_options_i.h:992
agora::rtc::AudioOptions::adm_specify_category
Optional< int > adm_specify_category
Definition: audio_options_i.h:725
agora::rtc::AudioOptions::apm_aec_nlp_aggressiveness
Optional< int32_t > apm_aec_nlp_aggressiveness
Definition: audio_options_i.h:806
agora::rtc::AudioOptions::apm_aec_nlp_plan
Optional< int > apm_aec_nlp_plan
Definition: audio_options_i.h:779
agora::rtc::AudioOptions::adm_enable_lowlatency_playout
Optional< bool > adm_enable_lowlatency_playout
Definition: audio_options_i.h:717
agora::rtc::AudioOptions::neteq_high_latency_burst_trend_threshold
Optional< int32_t > neteq_high_latency_burst_trend_threshold
Definition: audio_options_i.h:1033
agora::rtc::AudioOptions::adm_playout_bufsize_factor
Optional< uint32_t > adm_playout_bufsize_factor
Definition: audio_options_i.h:747
agora::rtc::AudioOptions::adm_record_audio_session_call_stack
Optional< bool > adm_record_audio_session_call_stack
Definition: audio_options_i.h:726
agora::rtc::AudioOptions::use_media_volume_in_audience
Optional< int > use_media_volume_in_audience
Definition: audio_options_i.h:1065
agora::rtc::AudioOptions::apm_sf_ainsToLoadFlag
Optional< int > apm_sf_ainsToLoadFlag
Definition: audio_options_i.h:831
agora::rtc::AudioOptions::apm_sf_nsngAlgRoute
Optional< int > apm_sf_nsngAlgRoute
Definition: audio_options_i.h:835
agora::rtc::AudioOptions::apm_aec_ainlp_profile_method
Optional< int > apm_aec_ainlp_profile_method
Definition: audio_options_i.h:788
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::AudioOptions::apm_sf_trdNlpFrmRmvEngRatioThr
Optional< int > apm_sf_trdNlpFrmRmvEngRatioThr
Definition: audio_options_i.h:837
agora::rtc::AudioOptions::acm_dtx
Optional< bool > acm_dtx
Definition: audio_options_i.h:986
agora::rtc::AudioOptions::apm_aec_specify_suppression_step
Optional< int32_t > apm_aec_specify_suppression_step
Definition: audio_options_i.h:807
agora::rtc::AudioOptions::neteq_enable_muted_state
Optional< bool > neteq_enable_muted_state
Definition: audio_options_i.h:1015
agora::rtc::AudioOptions::use_media_volume_in_solo
Optional< int > use_media_volume_in_solo
Definition: audio_options_i.h:1066
agora::rtc::AudioOptions::apm_vsc_selfConfig
Optional< int > apm_vsc_selfConfig
Definition: audio_options_i.h:879
agora::rtc::AudioOptions::neteq_freeze_m
Optional< int32_t > neteq_freeze_m
Definition: audio_options_i.h:1038
agora::rtc::AudioOptions::apm_enable_highpass_filter
Optional< bool > apm_enable_highpass_filter
Definition: audio_options_i.h:801
agora::rtc::AudioOptions::adm_extra_playout_latency
Optional< int > adm_extra_playout_latency
Definition: audio_options_i.h:763
agora::rtc::AudioOptions::Filter
AudioOptions & Filter()
Definition: audio_options_i.h:701
agora::rtc::AudioOptions::apm_sf_nsngMapInMaskMin
Optional< int > apm_sf_nsngMapInMaskMin
Definition: audio_options_i.h:865
agora::rtc::AudioOptions::enable_multi_drive_apparatus
Optional< int32_t > enable_multi_drive_apparatus
Definition: audio_options_i.h:752
agora::rtc::AudioOptions::neteq_enable_individuality_delay
Optional< bool > neteq_enable_individuality_delay
Definition: audio_options_i.h:1019
agora::rtc::AudioOptions::neteq_high_latency_burst_peak_trend_increased_threshold
Optional< int32_t > neteq_high_latency_burst_peak_trend_increased_threshold
Definition: audio_options_i.h:1034
agora::rtc::AudioOptions::adm_windows_enable_microphone_boost
Optional< bool > adm_windows_enable_microphone_boost
Definition: audio_options_i.h:977
agora::rtc::AudioOptions::apm_ains_gain_boost_frq1
Optional< int32_t > apm_ains_gain_boost_frq1
Definition: audio_options_i.h:944
agora::rtc::AudioOptions::apm_aec_delay_search_range_ms
Optional< int > apm_aec_delay_search_range_ms
Definition: audio_options_i.h:783
agora::rtc::AudioOptions::apm_sf_ainsMonitorLen
Optional< int > apm_sf_ainsMonitorLen
Definition: audio_options_i.h:832
agora::rtc::AudioOptions::apm_sf_delayMode
Optional< int > apm_sf_delayMode
Definition: audio_options_i.h:823
agora::rtc::AudioOptions::apm_aec_sw_processing_mode
Optional< int32_t > apm_aec_sw_processing_mode
Definition: audio_options_i.h:809
agora::rtc::AudioOptions::apm_ains_threshold_stastical
Optional< int32_t > apm_ains_threshold_stastical
Definition: audio_options_i.h:934
agora::rtc::AudioOptions::adm_use_hw_aec
Optional< bool > adm_use_hw_aec
Definition: audio_options_i.h:741
agora::rtc::AudioOptions::apm_delay_offset_ms
Optional< uint32_t > apm_delay_offset_ms
Definition: audio_options_i.h:805
agora::rtc::AudioOptions::input_audio_routing
Optional< int32_t > input_audio_routing
Definition: audio_options_i.h:710
agora::rtc::AudioOptions::operator==
bool operator==(const AudioOptions &o) const
Definition: audio_options_i.h:387
agora::rtc::AudioOptions::neteq_jitter_max_target_delay
Optional< int32_t > neteq_jitter_max_target_delay
Definition: audio_options_i.h:1008
agora::rtc::AudioOptions::apm_ns_noiseGateThres
Optional< uint32_t > apm_ns_noiseGateThres
Definition: audio_options_i.h:884
agora::rtc::AudioOptions::SetAll
void SetAll(const AudioOptions &change)
Definition: audio_options_i.h:231
agora::rtc::OPENSL_INPUT_AND_OPENSL_OUTPUT
@ OPENSL_INPUT_AND_OPENSL_OUTPUT
Definition: audio_options_i.h:39
agora::rtc::AudioOptions::apm_ains_enh_factor_stastical
Optional< int32_t > apm_ains_enh_factor_stastical
Definition: audio_options_i.h:938
agora::rtc::AudioOptions::apm_sf_ainlpMonitorQuantile
Optional< int > apm_sf_ainlpMonitorQuantile
Definition: audio_options_i.h:852
agora::rtc::AudioOptions::SetAecAll
void SetAecAll(const AudioOptions &change)
Definition: audio_options_i.h:65
agora::rtc::AudioOptions::neteq_low_latency_burst_comb_window_second
Optional< int32_t > neteq_low_latency_burst_comb_window_second
Definition: audio_options_i.h:1028
agora::rtc::AudioOptions::apm_sf_procIONSample
Optional< int > apm_sf_procIONSample
Definition: audio_options_i.h:822
agora::rtc::AudioOptions::apm_sf_statNsNoiseUpdateQuantile
Optional< int > apm_sf_statNsNoiseUpdateQuantile
Definition: audio_options_i.h:864
agora::rtc::AudioOptions::apm_vsc_effect
Optional< int > apm_vsc_effect
Definition: audio_options_i.h:878
agora::rtc::AudioOptions::apm_sf_ainsMonitorQuantile
Optional< int > apm_sf_ainsMonitorQuantile
Definition: audio_options_i.h:870
agora::rtc::AudioOptions::apm_aec_ainlp_postprocessing_method
Optional< int > apm_aec_ainlp_postprocessing_method
Definition: audio_options_i.h:792
agora::rtc::AudioOptions::neteq_drop_window_threshold_ms
Optional< int32_t > neteq_drop_window_threshold_ms
Definition: audio_options_i.h:1042
agora::rtc::AudioOptions::neteq_aqm_voice_threshold
Optional< uint32_t > neteq_aqm_voice_threshold
Definition: audio_options_i.h:1050
agora::rtc::AudioOptions::apm_sf_statNsSpchUpdateRadix
Optional< int > apm_sf_statNsSpchUpdateRadix
Definition: audio_options_i.h:860
agora::rtc::AudioOptions::neteq_target_level_optimization
Optional< bool > neteq_target_level_optimization
Definition: audio_options_i.h:1049
agora::rtc::AudioOptions::neteq_pre_dump
Optional< int > neteq_pre_dump
Definition: audio_options_i.h:1054
agora::rtc::AudioOptions::neteq_high_latency_burst_comb_window_second
Optional< int32_t > neteq_high_latency_burst_comb_window_second
Definition: audio_options_i.h:1036
agora::rtc::AudioOptions::acm_opus_voice_threshold
Optional< int32_t > acm_opus_voice_threshold
Definition: audio_options_i.h:995
agora::rtc::AudioOptions::apm_agc_bg_opt_mode
Optional< uint32_t > apm_agc_bg_opt_mode
Definition: audio_options_i.h:817
agora::rtc::AudioOptions::apm_sf_nlpProcBand
Optional< int > apm_sf_nlpProcBand
Definition: audio_options_i.h:872
agora::rtc::AudioOptions::apm_sf_nsngMusicModeBackoffDB
Optional< int > apm_sf_nsngMusicModeBackoffDB
Definition: audio_options_i.h:855
agora::rtc::AudioOptions::apm_ains_triangle_3
Optional< int32_t > apm_ains_triangle_3
Definition: audio_options_i.h:930
agora::rtc::AudioOptions::neteq_high_latency_burst_peak_num_threshold
Optional< int32_t > neteq_high_latency_burst_peak_num_threshold
Definition: audio_options_i.h:1032
agora::rtc::AudioOptions::adm_mac_allow_virtual_playout_device
Optional< bool > adm_mac_allow_virtual_playout_device
Definition: audio_options_i.h:982
agora::rtc::AudioOptions::~AudioOptions
~AudioOptions()=default
agora::rtc::AudioOptions::apm_nsng_end_start_up_long
Optional< int32_t > apm_nsng_end_start_up_long
Definition: audio_options_i.h:904
agora::rtc::AudioOptions::adm_android_mode
Optional< uint32_t > adm_android_mode
Definition: audio_options_i.h:711
agora::rtc::AudioOptions::external_adm_has_recorded
Optional< bool > external_adm_has_recorded
Definition: audio_options_i.h:736
agora::rtc::AudioOptions::adm_audio_source
Optional< uint32_t > adm_audio_source
Definition: audio_options_i.h:746
agora::rtc::AudioOptions::audio_routing
Optional< uint32_t > audio_routing
Definition: audio_options_i.h:709
agora::rtc::AudioOptions::neteq_enable_expired_peak_detector
Optional< bool > neteq_enable_expired_peak_detector
Definition: audio_options_i.h:1013
agora::rtc::AudioOptions::audio_routing_version
Optional< int32_t > audio_routing_version
Definition: audio_options_i.h:714
agora::rtc::AudioOptions::adm_force_layer
Optional< int32_t > adm_force_layer
Definition: audio_options_i.h:719
agora::rtc::AudioOptions::apm_enable_pitch_smoother
Optional< bool > apm_enable_pitch_smoother
Definition: audio_options_i.h:803
agora::rtc::AudioOptions::apm_sf_nsEnable
Optional< int > apm_sf_nsEnable
Definition: audio_options_i.h:827
agora::rtc::AudioOptions::apm_ains_kill_highband
Optional< int32_t > apm_ains_kill_highband
Definition: audio_options_i.h:922
agora::rtc::AudioOptions::apm_aec_linear_filter_length_ms
Optional< int32_t > apm_aec_linear_filter_length_ms
Definition: audio_options_i.h:810
agora::rtc::AudioOptions::apm_ns_complexity
Optional< int32_t > apm_ns_complexity
Definition: audio_options_i.h:885
agora::rtc::AudioOptions::adm_ducking_option_level
Optional< int > adm_ducking_option_level
Definition: audio_options_i.h:770
agora::rtc::AudioOptions::audio_rsfec_frame_num
Optional< uint32_t > audio_rsfec_frame_num
Definition: audio_options_i.h:1001
agora::rtc::AudioOptions::apm_ains_triangle_2
Optional< int32_t > apm_ains_triangle_2
Definition: audio_options_i.h:928
agora::rtc::AudioOptions::apm_sf_nsngMusicProbThr
Optional< int > apm_sf_nsngMusicProbThr
Definition: audio_options_i.h:854
agora::rtc::AudioOptions::apm_bypass_apm
Optional< bool > apm_bypass_apm
Definition: audio_options_i.h:773
agora::rtc::AudioOptions::apm_sf_statNsOverDrive
Optional< int > apm_sf_statNsOverDrive
Definition: audio_options_i.h:858
agora::rtc::AudioOptions::apm_aec_split_srate_for_48k
Optional< int32_t > apm_aec_split_srate_for_48k
Definition: audio_options_i.h:812
agora::rtc::AudioOptions::apm_sf_nlpAlgRoute
Optional< int > apm_sf_nlpAlgRoute
Definition: audio_options_i.h:834
agora::rtc::AudioOptions::apm_sf_ainsModelPref
Optional< int > apm_sf_ainsModelPref
Definition: audio_options_i.h:874
agora::rtc::AudioOptions::neteq_live_min_delay
Optional< uint32_t > neteq_live_min_delay
Definition: audio_options_i.h:1005
agora::rtc::AudioOptions::apm_sf_biquadEnable
Optional< int > apm_sf_biquadEnable
Definition: audio_options_i.h:828
agora::rtc::AudioOptions::adm_use_bluetooth_hfp
Optional< bool > adm_use_bluetooth_hfp
Definition: audio_options_i.h:740
agora::rtc::AudioOptions::apm_sf_statNsLowerBound
Optional< int > apm_sf_statNsLowerBound
Definition: audio_options_i.h:859
agora::rtc::AudioOptions::apm_ains_postfilter_margin
Optional< int32_t > apm_ains_postfilter_margin
Definition: audio_options_i.h:964
agora::rtc::AudioOptions::apm_nsng_quantile
Optional< int32_t > apm_nsng_quantile
Definition: audio_options_i.h:908
agora::rtc::AudioOptions::apm_aec_delay_search_method
Optional< int > apm_aec_delay_search_method
Definition: audio_options_i.h:784
agora::rtc::AudioOptions::neteq_dump_level
Optional< uint32_t > neteq_dump_level
Definition: audio_options_i.h:1051
agora::rtc::AudioOptions::neteq_high_latency_burst_control_platform_ms
Optional< int32_t > neteq_high_latency_burst_control_platform_ms
Definition: audio_options_i.h:1031
agora::rtc::AudioOptions::acm_ptime
Optional< uint32_t > acm_ptime
Definition: audio_options_i.h:989
agora::rtc::JAVA_INPUT_AND_OBOE_OUTPUT
@ JAVA_INPUT_AND_OBOE_OUTPUT
Definition: audio_options_i.h:57
agora::rtc::AudioOptions::apm_ains_gain_control
Optional< int > apm_ains_gain_control
Definition: audio_options_i.h:796
agora::rtc::AudioOptions::apm_sf_nlpAggressiveness
Optional< int > apm_sf_nlpAggressiveness
Definition: audio_options_i.h:846
agora::rtc::AudioOptions::neteq_max_filter_dup_num
Optional< uint32_t > neteq_max_filter_dup_num
Definition: audio_options_i.h:1017
agora::rtc::AudioOptions::apm_sf_nsngFinalMaskLowerBound
Optional< int > apm_sf_nsngFinalMaskLowerBound
Definition: audio_options_i.h:867
agora::rtc::AudioOptions::neteq_freeze_n
Optional< int32_t > neteq_freeze_n
Definition: audio_options_i.h:1039
agora::rtc::AudioOptions::apm_aec_nlp_size
Optional< int > apm_aec_nlp_size
Definition: audio_options_i.h:781
agora::rtc::AudioOptions::acm_bitrate
Optional< uint32_t > acm_bitrate
Definition: audio_options_i.h:984
agora::rtc::AudioOptions::apm_ains_enh_factor_ai
Optional< int32_t > apm_ains_enh_factor_ai
Definition: audio_options_i.h:936
agora::rtc::AudioOptions::neteq_low_latency_burst_peak_num_threshold
Optional< int32_t > neteq_low_latency_burst_peak_num_threshold
Definition: audio_options_i.h:1024
agora::rtc::AudioOptions::apm_ains_gain_boost_gain1
Optional< int32_t > apm_ains_gain_boost_gain1
Definition: audio_options_i.h:946
agora::rtc::AudioOptions::downlink_voice_over_enable
Optional< bool > downlink_voice_over_enable
Definition: audio_options_i.h:761
agora::rtc::AudioOptions::adm_ext_recording_source_delay_ms
Optional< int > adm_ext_recording_source_delay_ms
Definition: audio_options_i.h:787
agora::rtc::AudioOptions::apm_sf_nsngAuxToolsMode
Optional< int > apm_sf_nsngAuxToolsMode
Definition: audio_options_i.h:871
agora::rtc::AudioOptions::apm_sf_ainsKillHEBandFlag
Optional< int > apm_sf_ainsKillHEBandFlag
Definition: audio_options_i.h:839
agora::rtc::AudioOptions::neteq_outlier_detector
Optional< int > neteq_outlier_detector
Definition: audio_options_i.h:1057
agora::rtc::AudioOptions::adm_mac_allow_virtual_recording_device
Optional< bool > adm_mac_allow_virtual_recording_device
Definition: audio_options_i.h:981
agora::rtc::AudioOptions::apm_nsng_md_threshold
Optional< int32_t > apm_nsng_md_threshold
Definition: audio_options_i.h:918
agora::rtc::AudioOptions::adm_enable_lowlatency_capture
Optional< bool > adm_enable_lowlatency_capture
Definition: audio_options_i.h:716
agora::rtc::AudioOptions::apm_ains_upper_bound
Optional< int32_t > apm_ains_upper_bound
Definition: audio_options_i.h:896
agora::rtc::AudioOptions::adm_audio_layer
Optional< uint32_t > adm_audio_layer
Definition: audio_options_i.h:745
agora::rtc::AudioOptions::acm_hw_encode_opus
Optional< bool > acm_hw_encode_opus
Definition: audio_options_i.h:990
agora::rtc::AudioOptions::adm_windows_layer_with_waveapi
Optional< bool > adm_windows_layer_with_waveapi
Definition: audio_options_i.h:975
agora::rtc::AudioOptions::neteq_high_latency_burst_max_jitter_limit_ms
Optional< int32_t > neteq_high_latency_burst_max_jitter_limit_ms
Definition: audio_options_i.h:1037
agora::rtc::AudioOptions::apm_farend_gain_threshold
Optional< int32_t > apm_farend_gain_threshold
Definition: audio_options_i.h:973
agora::rtc::AudioOptions::adm_enable_estimated_device_delay
Optional< bool > adm_enable_estimated_device_delay
Definition: audio_options_i.h:712
agora::rtc::AudioOptions::apm_nsng_noise_ref_protect
Optional< int32_t > apm_nsng_noise_ref_protect
Definition: audio_options_i.h:924
agora::rtc::AudioOptions::apm_aed_enable
Optional< int > apm_aed_enable
Definition: audio_options_i.h:820
agora::rtc::AudioOptions::apm_ains_fft_size
Optional< int32_t > apm_ains_fft_size
Definition: audio_options_i.h:888
agora::rtc::AudioOptions::apm_aiaec_main_switch
Optional< int > apm_aiaec_main_switch
Definition: audio_options_i.h:778
agora::rtc::AudioOptions::adm_opensl_input_bufs
Optional< int > adm_opensl_input_bufs
Definition: audio_options_i.h:766
agora::rtc::AudioOptions::apm_ains_noise_over_estimate
Optional< int32_t > apm_ains_noise_over_estimate
Definition: audio_options_i.h:940
agora::rtc::AudioOptions::neteq_lower_limit_probability
Optional< int > neteq_lower_limit_probability
Definition: audio_options_i.h:1055
agora::rtc::AudioOptions::acm_complex_level
Optional< uint32_t > acm_complex_level
Definition: audio_options_i.h:988
agora::rtc::AudioOptions::apm_print_config_detail
Optional< bool > apm_print_config_detail
Definition: audio_options_i.h:775
agora::rtc::AudioOptions::acm_opus_voice_down_coef
Optional< int32_t > acm_opus_voice_down_coef
Definition: audio_options_i.h:997
agora::rtc::AudioOptions::apm_sf_fallBackThrRatio
Optional< int > apm_sf_fallBackThrRatio
Definition: audio_options_i.h:841
agora::rtc::AudioOptions::apm_aec_nlp_enable
Optional< bool > apm_aec_nlp_enable
Definition: audio_options_i.h:818
agora::rtc::AudioOptions::derived_headset_black_list_device
Optional< bool > derived_headset_black_list_device
Definition: audio_options_i.h:1063
agora::rtc::AudioOptions::apm_vsc_gain
Optional< int > apm_vsc_gain
Definition: audio_options_i.h:881
agora::rtc::AudioOptions::apm_nsng_overdrive
Optional< int32_t > apm_nsng_overdrive
Definition: audio_options_i.h:914
agora::rtc::AudioOptions::adm_win_recording_device_buffer_ms
Optional< int32_t > adm_win_recording_device_buffer_ms
Definition: audio_options_i.h:974
agora::rtc::AudioOptions::adm_bypass_vpio_processing
Optional< bool > adm_bypass_vpio_processing
Definition: audio_options_i.h:767
agora::rtc::AudioOptions::adm_has_recorded
Optional< bool > adm_has_recorded
Definition: audio_options_i.h:735
agora::rtc::AudioOptions::apm_vsc_enabled
Optional< int > apm_vsc_enabled
Definition: audio_options_i.h:876
agora::rtc::AudioOptions::adm_enable_async_process
Optional< bool > adm_enable_async_process
Definition: audio_options_i.h:768
agora::rtc::AudioOptions::apm_ains_mode
Optional< int > apm_ains_mode
Definition: audio_options_i.h:795
agora::rtc::AudioOptions::apm_sf_ainlpModelPref
Optional< int > apm_sf_ainlpModelPref
Definition: audio_options_i.h:875
agora::rtc::AudioOptions::adm_speaker_balance
Optional< int > adm_speaker_balance
Definition: audio_options_i.h:744
agora::rtc::AudioOptions::apm_ains_noise_pow_floor
Optional< int32_t > apm_ains_noise_pow_floor
Definition: audio_options_i.h:958
agora::rtc::AudioOptions::apm_aec_complexity
Optional< int32_t > apm_aec_complexity
Definition: audio_options_i.h:808
agora::rtc::AudioOptions::neteq_prebuffer_distance_threshold_ms
Optional< int32_t > neteq_prebuffer_distance_threshold_ms
Definition: audio_options_i.h:1045
agora::rtc::AudioOptions::apm_sf_procChainMode
Optional< int > apm_sf_procChainMode
Definition: audio_options_i.h:825
agora::rtc::AudioOptions::apm_sf_statNsEnhFactor
Optional< int > apm_sf_statNsEnhFactor
Definition: audio_options_i.h:856
agora::rtc::AudioOptions::adm_enable_mic_selection
Optional< bool > adm_enable_mic_selection
Definition: audio_options_i.h:737
agora::rtc::AudioOptions::apm_enable_aec
Optional< bool > apm_enable_aec
Definition: audio_options_i.h:776
agora::rtc::AudioOptions::apm_sf_nlpSpkrAgg
Optional< int > apm_sf_nlpSpkrAgg
Definition: audio_options_i.h:848
agora::rtc::AudioOptions::use_media_volume_in_bluetooth
Optional< int > use_media_volume_in_bluetooth
Definition: audio_options_i.h:1067
agora::rtc::AudioOptions::apm_agc_compression_gain_db
Optional< uint32_t > apm_agc_compression_gain_db
Definition: audio_options_i.h:814
agora::rtc::AudioOptions::neteq_low_latency_burst_trend_threshold
Optional< int32_t > neteq_low_latency_burst_trend_threshold
Definition: audio_options_i.h:1025
agora::rtc::AudioOptions::apm_ains_reset_frame
Optional< int32_t > apm_ains_reset_frame
Definition: audio_options_i.h:920
agora::rtc::AudioOptions::apm_ains_gain_boost_frq2
Optional< int32_t > apm_ains_gain_boost_frq2
Definition: audio_options_i.h:948
agora::rtc::AudioOptions::apm_vsc_gender
Optional< int > apm_vsc_gender
Definition: audio_options_i.h:877
agora::rtc::AudioOptions::acm_opus_voice_up_coef
Optional< int32_t > acm_opus_voice_up_coef
Definition: audio_options_i.h:996
agora::rtc::AudioOptions::acm_hw_decode_opus
Optional< bool > acm_hw_decode_opus
Definition: audio_options_i.h:991
agora::rtc::AudioOptions::adm_allow_haptics_during_record
Optional< bool > adm_allow_haptics_during_record
Definition: audio_options_i.h:727
agora::rtc::AudioOptions::neteq_filter_target_loss
Optional< int32_t > neteq_filter_target_loss
Definition: audio_options_i.h:1009
agora::rtc::AudioOptions::acm_opus_silence_bitrate
Optional< int32_t > acm_opus_silence_bitrate
Definition: audio_options_i.h:999
agora::rtc::AudioOptions::adm_capture_io_buffer_ms
Optional< int32_t > adm_capture_io_buffer_ms
Definition: audio_options_i.h:718
agora::rtc::AudioOptions::apm_sf_ainlpLowLatencyFlag
Optional< int > apm_sf_ainlpLowLatencyFlag
Definition: audio_options_i.h:840
agora::rtc::AudioOptions::apm_sf_nsngPfMargin
Optional< int > apm_sf_nsngPfMargin
Definition: audio_options_i.h:868
agora::rtc::AudioOptions::apm_ains_lower_bound
Optional< int32_t > apm_ains_lower_bound
Definition: audio_options_i.h:900
agora::rtc::AudioOptions::AudioOptions
AudioOptions()=default
agora::rtc::AudioOptions::apm_enable_howling_control
Optional< bool > apm_enable_howling_control
Definition: audio_options_i.h:804
agora::rtc::AudioOptions::apm_sf_ainlpMonitorLen
Optional< int > apm_sf_ainlpMonitorLen
Definition: audio_options_i.h:830
agora::rtc::AudioOptions::apm_sf_nlpFrmRemoveEngRatioThr
Optional< int > apm_sf_nlpFrmRemoveEngRatioThr
Definition: audio_options_i.h:836
agora::rtc::AudioOptions::audio_resend
Optional< bool > audio_resend
Definition: audio_options_i.h:1000
agora::rtc::AudioOptions::apm_ains_statistical_bound
Optional< int32_t > apm_ains_statistical_bound
Definition: audio_options_i.h:942
agora::rtc::AudioOptions::apm_sf_ainlpToLoadFlag
Optional< int > apm_sf_ainlpToLoadFlag
Definition: audio_options_i.h:829
agora::rtc::AudioOptions::adm_aggregate_playout_device_volume_control
Optional< bool > adm_aggregate_playout_device_volume_control
Definition: audio_options_i.h:978
agora::rtc::AudioOptions::adm_estimate_device_loopback_delay_with_aec
Optional< bool > adm_estimate_device_loopback_delay_with_aec
Definition: audio_options_i.h:715
agora::rtc::AudioOptions::apm_sf_ainsHotResetFrq
Optional< int > apm_sf_ainsHotResetFrq
Definition: audio_options_i.h:869
agora::rtc::AudioOptions::neteq_deceleration_percent
Optional< int32_t > neteq_deceleration_percent
Definition: audio_options_i.h:1012
agora::rtc::AudioOptions::audio_rsfec_interleave_num
Optional< uint32_t > audio_rsfec_interleave_num
Definition: audio_options_i.h:1002
agora::rtc::AudioOptions::enable_stereo_playout
Optional< bool > enable_stereo_playout
Definition: audio_options_i.h:753
agora::rtc::AudioOptions::neteq_jitter_buffer_fast_accelerate
Optional< bool > neteq_jitter_buffer_fast_accelerate
Definition: audio_options_i.h:1007
agora::rtc::AudioOptions::neteq_low_latency_burst_peak_trend_increased_threshold
Optional< int32_t > neteq_low_latency_burst_peak_trend_increased_threshold
Definition: audio_options_i.h:1026
agora::rtc::AudioOptions::adm_input_sample_rate
Optional< uint32_t > adm_input_sample_rate
Definition: audio_options_i.h:730
agora::rtc::AudioOptions::neteq_normal_recv_rate_ratio_threshold
Optional< int32_t > neteq_normal_recv_rate_ratio_threshold
Definition: audio_options_i.h:1047
agora::rtc::AudioOptions::apm_nsng_vad_threshold
Optional< int32_t > apm_nsng_vad_threshold
Definition: audio_options_i.h:916
agora::rtc::AudioOptions::adm_ears_monitor_channels
Optional< int > adm_ears_monitor_channels
Definition: audio_options_i.h:771
agora::rtc::AudioOptions::apm_sf_nlpHeadsetAgg
Optional< int > apm_sf_nlpHeadsetAgg
Definition: audio_options_i.h:847
agora::rtc::AudioOptions::adm_windows_bypass_system_render_apo
Optional< bool > adm_windows_bypass_system_render_apo
Definition: audio_options_i.h:976
agora::rtc::AudioOptions::has_enabled_ear_monitor
Optional< bool > has_enabled_ear_monitor
Definition: audio_options_i.h:729
agora::rtc::AudioOptions::neteq_plc_mode
Optional< int > neteq_plc_mode
Definition: audio_options_i.h:1056
agora::rtc::AudioOptions::apm_sf_nsProcBand
Optional< int > apm_sf_nsProcBand
Definition: audio_options_i.h:873
agora::rtc::AudioOptions::apm_agc_mode
Optional< uint32_t > apm_agc_mode
Definition: audio_options_i.h:816
agora::rtc::AudioOptions::neteq_low_latency_burst_control_platform_ms
Optional< int32_t > neteq_low_latency_burst_control_platform_ms
Definition: audio_options_i.h:1023
agora::rtc::ADM_ANDROID_MODE
ADM_ANDROID_MODE
Definition: audio_options_i.h:28
agora::rtc::AudioOptions::neteq_enable_improve_burst
Optional< bool > neteq_enable_improve_burst
Definition: audio_options_i.h:1020
agora::rtc::AudioOptions::neteq_jitter_buffer_max_packets
Optional< uint32_t > neteq_jitter_buffer_max_packets
Definition: audio_options_i.h:1006
agora::rtc::AudioOptions::neteq_max_exceed_time_ms
Optional< int32_t > neteq_max_exceed_time_ms
Definition: audio_options_i.h:1016
agora::rtc::AudioOptions::apm_aec_ainlp_fallback_period
Optional< int > apm_aec_ainlp_fallback_period
Definition: audio_options_i.h:791
agora::rtc::AudioOptions::acm_opus_max_encoded_bytes
Optional< int32_t > acm_opus_max_encoded_bytes
Definition: audio_options_i.h:993
agora::rtc::AudioOptions::neteq_max_mute_duration_ms
Optional< int32_t > neteq_max_mute_duration_ms
Definition: audio_options_i.h:1021
agora::rtc::AudioOptions::uplink_gain
Optional< uint32_t > uplink_gain
Definition: audio_options_i.h:1059
agora::rtc::AudioOptions::acm_opus_enable_volume_based_bitrate_reduction
Optional< bool > acm_opus_enable_volume_based_bitrate_reduction
Definition: audio_options_i.h:994
agora::rtc::AudioOptions::adm_mix_with_others
Optional< bool > adm_mix_with_others
Definition: audio_options_i.h:722
agora::rtc::AudioOptions::neteq_limit_prob
Optional< int > neteq_limit_prob
Definition: audio_options_i.h:1053
agora::rtc::AudioOptions::neteq_targetlevel_offset
Optional< int32_t > neteq_targetlevel_offset
Definition: audio_options_i.h:1040
agora::rtc::AudioOptions::neteq_max_packets_stable_playout
Optional< int32_t > neteq_max_packets_stable_playout
Definition: audio_options_i.h:1046
agora::rtc::AudioOptions::apm_sf_statNsNoiseOverEst
Optional< int > apm_sf_statNsNoiseOverEst
Definition: audio_options_i.h:857
agora::rtc::AudioOptions::apm_sf_nlpDynamicMode
Optional< int > apm_sf_nlpDynamicMode
Definition: audio_options_i.h:849
agora::rtc::AudioOptions::apm_sf_stftType
Optional< int > apm_sf_stftType
Definition: audio_options_i.h:824
agora::rtc::AudioOptions::apm_ns_level
Optional< int32_t > apm_ns_level
Definition: audio_options_i.h:883
agora::rtc::AudioOptions::neteq_dump_path
Optional< std::string > neteq_dump_path
Definition: audio_options_i.h:1052
agora::rtc::AudioOptions::apm_agc_target_level_dbfs
Optional< uint32_t > apm_agc_target_level_dbfs
Definition: audio_options_i.h:813
agora::rtc::AudioOptions::adm_force_use_bluetooth_a2dp
Optional< bool > adm_force_use_bluetooth_a2dp
Definition: audio_options_i.h:739
agora::rtc::AudioOptions::apm_enable_aec_external
Optional< bool > apm_enable_aec_external
Definition: audio_options_i.h:777
agora::rtc::AudioOptions::apm_enable_md
Optional< bool > apm_enable_md
Definition: audio_options_i.h:799
agora::rtc::AudioOptions::apm_ains_lower_mask
Optional< int32_t > apm_ains_lower_mask
Definition: audio_options_i.h:902
agora::rtc::AudioOptions::adm_microphone_preference
Optional< int > adm_microphone_preference
Definition: audio_options_i.h:743
agora::rtc::AudioOptions::enable_muted_talker_detection
Optional< bool > enable_muted_talker_detection
Definition: audio_options_i.h:757
agora::rtc::AudioOptions::apm_ains_attack_factor
Optional< int32_t > apm_ains_attack_factor
Definition: audio_options_i.h:892
agora::rtc::JAVA_INPUT_AND_OPENSL_OUTPUT
@ JAVA_INPUT_AND_OPENSL_OUTPUT
Definition: audio_options_i.h:45
agora::rtc::AudioOptions::apm_ains_gain_boost_gain2
Optional< int32_t > apm_ains_gain_boost_gain2
Definition: audio_options_i.h:950
agora::rtc::AudioOptions::neteq_high_latency_burst_overuse_limited_quantile
Optional< int32_t > neteq_high_latency_burst_overuse_limited_quantile
Definition: audio_options_i.h:1035
rtc
Definition: video_node_i.h:28
agora::rtc::AudioOptions::has_remote_peers
Optional< bool > has_remote_peers
Definition: audio_options_i.h:728
agora::rtc::AudioOptions::neteq_low_latency_burst_control_window_ms
Optional< int32_t > neteq_low_latency_burst_control_window_ms
Definition: audio_options_i.h:1022
agora::Optional< uint32_t >
agora::rtc::AudioOptions::adm_enable_exclusive_mode
Optional< bool > adm_enable_exclusive_mode
Definition: audio_options_i.h:732
agora::rtc::AudioOptions::apm_ns_enable_ns_follow_agc
Optional< uint32_t > apm_ns_enable_ns_follow_agc
Definition: audio_options_i.h:882
agora::rtc::AudioOptions::use_media_volume_in_headset
Optional< int > use_media_volume_in_headset
Definition: audio_options_i.h:1064
agora::rtc::AudioOptions::apm_aec_saturated
Optional< bool > apm_aec_saturated
Definition: audio_options_i.h:780
agora::rtc::AudioOptions::adm_separate_audio_unit
Optional< bool > adm_separate_audio_unit
Definition: audio_options_i.h:1060
agora::rtc::AudioOptions::apm_aec_fixed_delay
Optional< int > apm_aec_fixed_delay
Definition: audio_options_i.h:785