ttskit
ttskit copied to clipboard
对新增SDK返回numpy.array的方法的请求与个人解决方案
如果要对获得的音频进行降噪、升调、降调等复杂处理,或者将多个speaker的返回内容拼合成一个音频的话,势必要用到numpy.array类型的音频数据,按目前的SDK只能将返回值写入文件,然后再读入,有些繁复,因此建议作者 加入直接返回numpy.array的SDK参数.(如果本来就有而我没找到的话,就抱歉了)
我目前对 sdk_api.py 文件内的函数 tts_sdk() 末尾(445行左右)做了如下修改以达到此功能
原代码 :
...
return wav
更改后的代码 :
...
wav_array = np.array(wav_out.get_array_of_samples())
if kwargs.get('array', False):return wav_array
else:return wav
使用示例 :
from ttskit import sdk_api
wav_array = sdk_api.tts_sdk(text='返回数组',array = True)
有了这样的返回值后,就可以方便地对返回音频进行傅里叶变换等复杂处理了。我对这个库的代码编写不完全熟悉,因此不确定这个更改是否会产生未知错误。在我小数据量测试中,我的修改是稳定可行的,希望作者可以阅读我的代码,确定其安全有效后,将其更新入这个库中,谢谢!