官方手册

源码


安装库

pip install audiotsm

导入相关库

import audiotsm
import audiotsm.io.wav
import audiotsm.io.array

定义reader

# 可以直接读取文件
reader = audiotsm.io.wav.WavReader("qaq.wav")
'''
# 也可以加载别的地方传过来的numpy.ndarray音频数据
a, sr = sf.read("qaq.wav", dtype='float32')
a = a.reshape((1,-1))    # (1,-1):(通道数,音频长度)
reader = audiotsm.io.array.ArrayReader(a)
'''

定义writer

# 可以直接写入文件
writer =  audiotsm.io.wav.WavWriter("awa.wav", 1, 16000)    # 1:单通道。  16000:采样率
# 也可以直接获得numpy.ndarray的数据
# writer = audiotsm.io.array.ArrayWriter(1)

直接写入文件的方法亲测可用。

直接获得numpy.ndarray数据的方法存在问题,找不到它输出的数据到底在哪,目前尚未解决。

定义WSLOA算法,并运行

wsola = audiotsm.wsola(1, speed=1.5)    # 1:单通道。  speed:速度
wsola.run(reader, writer)

还有其他的变速不变调算法和实时输入输出的函数,详见官方手册

文章作者: KAWAKO
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 KAWAKO
python 音频
喜欢就支持一下吧
打赏
微信 微信
支付宝 支付宝