我试图使用pydub在python中合并多个wav文件,但是输出歌曲的播放速度比我想要的要慢。所以我提到了这个question并尝试了同样的方法。
import os, glob
import random
from pydub import AudioSegment
FRAMERATE = 44100 # The frequency of default wav file
OUTPUT_FILE = 'MySong/random.wav'
audio_data = [AudioSegment.from_wav(wavfile)
for wavfile in glob.glob(os.path.join('wav_files/', '*.wav'))]
my_music = sum([random.choice(audio_data)for i in range(100)])
my_music = my_music.set_frame_rate(FRAMERATE * 4)
my_music.export(OUTPUT_FILE, format='wav')
但这是行不通的。有什么我不知道的技术原因,还是有更好的方法呢?
最佳答案
要在不改变音调的情况下加快步伐,您需要做的比改变帧频还要新颖一些(这会给您带来“花栗鼠”效果)。
如果您要处理口头单词,则可以尝试使用pydub.silence中的(不幸的是未记录)功能消除静音。
您还可以查看 AudioSegment().speedup()
,这是幼稚的重采样尝试。您还可以复制该功能并尝试对其进行改进(并贡献给pydub?)
关于python - 在python中提高组合wav文件的播放速度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41570360/