我使用moviepy为给定的视频添加音频。我首先检查了视频的时长。如果它比音频短,我使用:
减慢视频速度。video_clip = video_clip.fx( vfx.speedx, (video_clip.duration/audio_clip.duration))
然后,我使用:
添加音频video_clip = video_clip.set_audio(audio_clip)
用
保存结果video_clip.write_videofile(save_path, codec="libx264", audio_codec="aac", fps=24, audio_bitrate="64K", threads=32, ffmpeg_params=['-safe', '0'])
一切似乎都很好,除了最后半秒的视频,音频是在视频结束之前重播的。我试着
new_audio_clip = afx.audio_loop(audio_clip, duration=video_clip.duration)
并添加了新的音频。但一切都没有改变。
仅设置buffersize=400_000
为我修复了它。默认为200_000
。
我尝试了许多排列,即设置nbytes, fps,编解码器,没有工作。我的音频是24_000Hz, 32位浮动,单声道。来自Google的TTS