近几年诈骗罪成为了我国刑事犯罪的第一大罪名,在网络上勾引你裸聊的“小姐姐”很可能是抠脚大汉利用美声软件假扮的。美声和人声在社交娱乐场景中可以为增添场景的趣味性并提升互动体验。Agora提供封装在枚举中的预设的美声(VoiceBeautifier)和变声(VoiceConversion)效果参数,可以帮助你在项目中快速集成美声、变声和人声效果。
设置音频编码属性
注意本文中提到的setVoiceBeautifierPreset()、setVoiceBeautifierParameters()、setVoiceConversionPreset()、setAudioEffectPreset()、setAudioEffectParameters()方法两两互斥,后调用的会完全覆盖先调用的,然后setLocalVoicePitch()、setLocalVoiceEqualization()、setLocalVoiceReverb()方法也会影响先调用的方法的结果,所以方法调用顺序不能乱。
回到上文初始化RtcEngine的initializeAndJoinChannel()方法里,进行如下修改:
美声
美声是指在不改变原声辨识度的前提下,根据男女声各自的特点美化说话声。只需写很简单的一行代码便可以使用Agora傻瓜式的美声功能:
可以填写的参数的值都在io.agora.rtc2. Constants文件中:
擅长整活的读者,现在已经开始用高昂的Constants. TIMBRE_TRANSFORMATION_RESOUNDING结合上文讲过的击筑配音来实现“渐离击悲筑,宋意唱高声”了。
注意Constants. SINGING_BEAUTIFIER比较特殊,在setVoiceBeautifierPreset()方法里只能用于男声,用于女声会失真。不过你的担心是多余的,Agora提供了setVoiceBeautifierParameters()来设置预设美声的具体参数:
变声和人声
除了美声之外,Agora也提供了变声和人声特效:
因为篇幅有限,Constants类中大段常量的代码就不贴了。
自定义变声参数
除了可以使用预设的美声、变声和人声之外,用户还可以根据自己的实际情况开发属于自己的音效处理方法,我这里放上Constants. VOICE_CHANGER_EFFECT_HULK(无敌浩克)的参数:
只要擅长计算以上几个方法的参数,男用户可以把自己的语音修改得像单田芳一样沙哑,然后去讲评书,女用户也可以把自己的语音修改得像蔡明一样阴阳怪气,然后去演小品……因为我能力有限,就不提供更多的语音参数了
最后我们以一个欢乐的视频结束本文,视频里主画面(我的正脸)是对方视角,副画面(我的侧脸)是本人视角,注意听
【视频】
学习过了美声和人声之后,我们关于声动互娱的学习暂时可以告一段落了,但是Agora SDK这座宝库,我们的探索度还是很低的,我会继续更新屏幕共享、音视频观测、噪音衰减等丰富的功能的保姆级教程。