文档反馈
文档反馈

美声与变声

重要通知

网易云信新版文档中心现已正式上线!

音视频通话2.0互动直播2.0多人语音聊天室PK 直播等产品和场景方案已迁移至新版文档中心维护,欢迎体验!

在泛娱乐行业的多种强互动场景中,往往需要多种丰富的美化与特效功能提升场景的趣味性、提高互动体验,例如美声与变声功能。在多人语聊或音频直播场景中,美声与变声功能可以美化主播或连麦者的声音,提升场景的娱乐氛围。

NERTC SDK 支持设置多种美声与变声音效,您也可以通过设置本地语音音效均衡或混淆来达到自定义的人声效果,增加场景气氛。

注意事项

setLocalVoiceEqualizationPreset 与 setLocalVoiceEqualizations 互斥,即调用 setLocalVoiceEqualizationPreset 方法之后,如果又调用 setLocalVoiceEqualizations,已设置的美声效果会被后者覆盖。

实现方式

美声

美声指声音的美化,即调整人声的音色,例如让声音更加低沉、圆润或清澈。

预设美声效果

通过 setLocalVoiceEqualizationPreset 可以使用 SDK 预设的美声效果。目前支持以下预设的美声效果:

枚举值 描述
kNERtcVoiceEqualizationTypeDeep 低沉
kNERtcVoiceEqualizationMellow 圆润
kNERtcVoiceEqualizationClear 清澈

自定义美声效果

如果以上美声无法满足您的需求,您也可以通过 setLocalVoiceEqualizations 设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。

变声

变声指转变人声的特质,例如让声音听起来像机器人或萝莉。 通过 setLocalVoiceChangerPreset 可以使用 SDK 预设的变声效果。目前支持以下预设的变声效果:

枚举值 描述
kNERtcVoiceChangerRobot 机器人
kNERtcVoiceChangerGaint 巨人
kNERtcVoiceChangerChurchecho 教堂
kNERtcVoiceChangerHorror 恐怖
kNERtcVoiceChangerMuffled 低沉
kNERtcVoiceChangerManToWoman 男变女
kNERtcVoiceChangerWomanToMan 女变男
kNERtcVoiceChangerManToLoli 男变萝莉
kNERtcVoiceChangerWomanToLoli 女变萝莉

混响

人声混响指通过声音混响设置营造场景化的空间氛围,使人声听起来像是处于特定的空间或场所。 通过 setLocalVoiceReverbPreset 可以使用 SDK 预设的混响效果。目前支持以下预设的混响效果:

枚举值 描述
kNERtcVoiceReverbTypeKTV KTV
kNERtcVoiceReverbTypeRecite 朗诵

示例代码

Android

//预设美声效果
NERtcEx.getInstance().setLocalVoiceEqualizationPreset(NERtcVoiceEqualizationType.kNERtcVoiceEqualizationDeep);

//自定义美声效果
int[] voiceEqualizations = new int[10];
voiceEqualizations[2] = 5;
NERtcEx.getInstance().setLocalVoiceEqualizations(voiceEqualizations);

//变声
NERtcEx.getInstance().setLocalVoiceChangerPreset(NERtcVoiceChangerType.kNERtcVoiceChangerRobot);

//混响
NERtcEx.getInstance().setLocalVoiceReverbPreset(NERtcVoiceReverbType.kNERtcVoiceReverbKTV);

iOS

//预设美声效果
 [[NERtcEngine sharedEngine] setLocalVoiceEqualizationPreset:kNERtcVoiceEqualizationDeep];

//自定义美声效果
NSArray *voiceEqualizations = @[@(5), @(5), @(5), @(5), @(5), @(5), @(5), @(5), @(5), @(5)];
[[NERtcEngine sharedEngine] setLocalVoiceEqualizations:voiceEqualizations];

//变声
[[NERtcEngine sharedEngine] setLocalVoiceChangerPreset:kNERtcVoiceChangerRobot];

//混响
[[NERtcEngine sharedEngine] setLocalVoiceReverbPreset:kNERtcVoiceReverbKTV];

Windows/macOS

//预设美声效果
engine->setLocalVoiceEqualizationPreset(nertc::kNERtcVoiceEqualizationDeep);

//自定义美声效果
float custom_eq[10] = { 0 };
custom_eq[2] = 3.5;
engine->setLocalVoiceEqualizations(custom_eq);

//变声
engine->setLocalVoiceChangerPreset(nertc::kNERtcVoiceChangerRobot);

//混响
engine->setLocalVoiceReverbPreset(nertc::kNERtcVoiceReverbKTV);
×

反馈成功

非常感谢您的反馈,我们会继续努力做得更好。