特定の時間に特定の期間でオーディオをビデオに適用する必要がありますが、一部のオーディオ期間は必要以上に大きく (または小さく) なっています。ピッチを変更せずにオーディオの速度を変更する方法は? fpsを変更しようとしました(必要な期間をオーディオ期間に乗算することにより)が、希望どおりに機能しません。
original = VideoFileClip("orig.mp4")
clips = [orig.audio.volumex(0.3)]
subs = [] #some array
i = 0
for sub in subs:
clip = AudioFileClip("\\temp{}.mp3")
mult = clip.duration / (sub.end - sub.start) + 0.00001
clip = AudioArrayClip(clip.to_soundarray(buffersize=500, fps=24000/mult), fps=24000).set_start(sub.start).set_end(sub.end)
clips.append(clip)
i += 1
final = CompositeAudioClip(clips)
final.write_audiofile("final.mp3")