[英]Increasing the playback speed of combined wav file in python?
我试图使用pydub在python中组合多个wav文件,但输出歌曲的播放速度有点慢于我想要的。 所以我提到了这个问题并尝试了同样的方法。
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?)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.