setAudioEffectParameters abstract method
- required AudioEffectPreset preset,
- required int param1,
- required int param2,
设置 SDK 预设人声音效的参数。
调用该方法可以对本地发流用户进行如下设置: 3D 人声音效:设置 3D 人声音效的环绕周期。 电音音效:设置电音音效的基础调式和主音音高。为方便用户自行调节电音音效,建议你将基础调式和主音音高配置选项与应用的 UI 元素绑定。 设置后,频道内所有用户都能听到该效果。 为获取更好的人声效果,建议你在调用该方法前进行以下操作: 调用 setAudioScenario 将音频场景设为高音质场景,即 audioScenarioGameStreaming (3)。 调用 setAudioProfile 将 profile 设为 audioProfileMusicHighQuality (4) 或 audioProfileMusicHighQualityStereo (5)。 该方法在加入频道前后都能调用。 请勿将 setAudioProfile 的 profile 参数设置为 audioProfileSpeechStandard (1) 或 audioProfileIot (6),否则该方法不生效。 该方法对人声的处理效果最佳,不建议调用该方法处理含音乐的音频数据。 调用 setAudioEffectParameters 后,不建议调用以下方法,否则 setAudioEffectParameters 设置的效果会被覆盖: setAudioEffectPreset setVoiceBeautifierPreset setLocalVoicePitch setLocalVoiceEqualization setLocalVoiceReverb setVoiceBeautifierParameters setVoiceConversionPreset 该方法依赖于美声动态库 libagora_audio_beauty_extension.dll ,如果删除该动态库会导致无法正常开启该功能。
presetSDK 预设的音效,支持以下设置: roomAcoustics3dVoice ,3D 人声音效。 你需要在使用该枚举前将 setAudioProfile 的 profile 参数设置 为 audioProfileMusicStandardStereo (3) 或 audioProfileMusicHighQualityStereo (5),否则该枚举设置无效。 启用 3D 人声后,用户需要使用支持双声道的音频播放设备才能听到预期效果。 pitchCorrection ,电音音效。param1如果 preset 设为 roomAcoustics3dVoice ,则 param1 表示 3D 人声音效的环绕周期。取值范围为1,60,单位为秒。默认值为 10,表示人声会 10 秒环绕 360 度。 如果 preset 设为 pitchCorrection ,则 param1 表示电音音效的基础调式: 1 : (默认)自然大调。 2 : 自然小调。 3 : 和风小调。param2如果 preset 设为 roomAcoustics3dVoice ,你需要将 param2 设置为 0 。 如果 preset 设为 pitchCorrection ,则 param2 表示电音音效的主音音高: 1 : A 2 : A# 3 : B 4 : (Default) C 5 : C# 6 : D 7 : D# 8 : E 9 : F 10 : F# 11 : G 12 : G#
Returns 方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。
Implementation
Future<void> setAudioEffectParameters(
{required AudioEffectPreset preset,
required int param1,
required int param2});