在泛娱乐社交和互动游戏场景中,用户已不再满足于高清的音质体验和实时的互动效果,他们还想要增加趣味性和沉浸感,让声音变得好玩有趣。拍乐云Pano上线了音频变声接口,开发者可以通过 Pano SDK 设置不同的变声效果,如大叔音、小姐姐音、萝莉音、山谷音、惊悚音、困兽音等,增强语聊乐趣。本篇文章就来跟大家介绍如何在3分钟内基于 Pano SDK 实现音频变声功能。
准备工作:- 拍乐云开发者账户(通过拍乐云官网注册)
- Pano SDK v1.3.4 版本
RtcEngine对象的setOption方法中配置OptionType:AudioVoiceChangerMode。通过setOption将AudioVoiceChangerOption的枚举值设置进去,就可以实现windows端的变声效果。
Windows 端接口代码:
/*!
* @~english
* @brief Set option and paramters
* @paramoption option
* @paramparam paramter defined with option
* @paramsize the size of parameters
* @return
* - OK: Success
* - others: Failure
* @~chinese
* @brief设置参数
* @paramoption参数类别
* @paramparam参数, 参数的定义需遵循不同的option所定义的参数结构
* @paramsize参数的大小
* @return
* - OK:成功
* - 其他: 失败
*/
virtualQResultsetOption(OptionTypeoption, void * param, uint32_tsize) = 0;
示例代码:
AudioVoiceChangerOptionvcOption = AudioVoiceChangerOption::Male;
rtcEngine_->setOption(OptionType::AudioVoiceChangerMode, & vcOption,sizeof (vcOption));
Andorid 端接口代码:
/**
* @~english
* @brief Set option object to PANO SDK
* @paramtype PanoOptionType enum type
* @paramvalue The parameter of the option, the actual type of value is option-specific * @return
* - OK: Success
* - others: Failure
* @~chinese
* @brief 设置可选项
* @paramtype可选项类型PanoOptionType
* @paramvalue参数的定义需遵循不同的object所定义的参数
* @return
* - OK: 成功
* - 其他: 失败
*/
publicabstractQResultsetOption(PanoOptionTypetype, Objectvalue);
示例代码:
Constants.AudioVoiceChangerOptionvcOption = Constants.AudioVoiceChangerOption.Male;mRtcEngine.setOption(Constants.PanoOptionType.AudioVoiceChangerMode, vcOption);
macOS、iOS 端PanoRtcEngineKit 对象的setOption:forType: 方法配置 PanoOptionType:kPanoOptionAudioVoiceChangerMode。
通过setOption将PanoAudioVoiceChangerOption的枚举值设置进去,就可以实现macOS和iOS端的变声效果。
macOS、iOS端接口代码:
/**
* @~english
* @brief Set option object to PANO SDK.
* @param option The Option object.
* @param type PanoOptionType enum type.
* @return
* - kPanoResultOK: Success
* - others: Failure
* @~chinese
* @brief 设置选项对象给PANO SDK。
* @param option 选项对象。
* @param type PanoOptionType 枚举类型。
* @return
* - kPanoResultOK: 成功
* - 其他: 失败
*/
- (PanoResult)setOption:(NSObject * _Nullable)option
forType:(PanoOptionType)type;
示例代码:
PanoAudioVoiceChangerOption vcOption = kPanoVoiceChangerMale;NSNumber * option = [NSNumber numberWithInteger:vcOption];[panoEngineKit setOption:option forType:kPanoOptionAudioVoiceChangerMode];
以上为音频变声的详细接入介绍,除了变声,拍乐云还支持音频的立体声、美声、耳返、伴音、混响等,让声音变得更动听、更有磁性和活力,也让整个语聊互动的过程变得更有趣。
关于拍乐云拍乐云成立于2019年,是国内第一家视频会议背景的实时互动通信云服务提供商,汇聚了一大批专注于音频、视频、网络、AI等领域的资深技术专家。通过Pano SDK,企业开发者即可在全球范围内快速实现互动课堂、语音聊天室、视频社交、直播连麦、游戏语音、视频客服、远程医疗、办公协作等场景。
,