一、功能简介
实时音视频(TRTC)音频美声功能通过 SetVoiceBeautyParams 接口为开发者提供了一站式的音频美化能力,主要包括以下核心功能。
二、美声预设(Beauty Preset)
·功能描述:提供多种专业调校的美声预设方案,一键即可获得高品质的音频美化效果。
·技术原理:基于专业音频工程师调校的参数模板,综合运用混响、均衡、人声增强等多种音频处理算法,针对不同音乐风格和性别特征进行优化。
·预设类型:风格类(明亮、温暖、清澈、麦霸)、场景类(超级混响、饱满人声、深邃人声、楼道唱将、浴室唱将、车库唱将、KTV、演唱会、音乐厅、黑胶唱片)、语聊美声(清新、活力)。
·应用场景:在线 K 歌、语音直播、语音社交、音乐教学、播客录制。
三、支持的平台
| iOS | Android | Mac | Windows | Flutter | HarmonyOS |
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
四、前提条件
在进行音频美声配置之前,请确保你已在项目中成功集成并实现了基础的实时音视频功能。具体接入方法请参考 快速接入指南。
五、注意事项
·美声效果仅对本地采集的音频生效,不影响远端用户的音频。
·建议在调用 TRTCCloud#startLocalAudio 之后再设置美声效果。
·频繁切换美声预设可能导致短暂的音频卡顿,建议在用户交互时进行切换。
六、选择美声预设
你可以通过调用 TRTCCloud#callExperimentalAPI 接口,传入 SetVoiceBeautyParams 指令和 BeautyPreset 参数快速启用美声预设效果。
AndroidiOSHarmonyOS// 设置美声预设,例如:明亮风格JSONObject params = new JSONObject();JSONObject apiParams = new JSONObject();apiParams.put("BeautyPreset", 1);params.put("api", "SetVoiceBeautyParams");params.put("params", apiParams);mCloud.callExperimentalAPI(params.toString());// 设置美声预设,例如:明亮风格NSDictionary *apiParams = @{@"BeautyPreset": @(1)};NSDictionary *params = @{ @"api": @"SetVoiceBeautyParams", @"params": apiParams};NSData *jsonData = [NSJSONSerialization dataWithJSONObject:params options:0 error:nil];NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];[self.trtcCloud callExperimentalAPI:jsonStr];// 设置美声预设,例如:明亮风格let apiParams: Record<string, number> = { "BeautyPreset": 1 };let params: Record<string, Object> = { "api": "SetVoiceBeautyParams", "params": apiParams};let jsonStr: string = JSON.stringify(params);this.mCloud.callExperimentalAPI(jsonStr);
七、美声预设枚举说明(BeautyPreset):
| 枚举值 | 效果说明 |
| 0 | None(关闭美声) |
| 1 | 明亮风格 |
| 2 | 温暖风格 |
| 3 | 清澈风格 |
| 4 | 麦霸风格 |
| 5 | 超级混响 |
| 6 | 饱满人声 |
| 7 | 深邃人声 |
| 8 | 楼道唱将 |
| 9 | 浴室唱将 |
| 10 | 车库唱将 |
| 11 | KTV |
| 12 | 演唱会 |
| 13 | 音乐厅 |
| 14 | 黑胶唱片 |
| 15 | 语聊美声-清新 |
| 16 | 语聊美声-活力 |
八、美声效果是否会影响通话延迟?
音频美声处理会引入极小的处理延迟(通常在毫秒级别),对正常通话体验几乎无感知影响。
九、如何关闭所有美声效果?
将 BeautyPreset 设置为 0(None)即可关闭所有美声效果,恢复原始音频。
JSONObject apiParams = new JSONObject();apiParams.put("BeautyPreset", 0);JSONObject params = new JSONObject();params.put("api", "SetVoiceBeautyParams");params.put("params", apiParams);mCloud.callExperimentalAPI(params.toString());