You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python的moviepy合并图片与音频生成视频无声音问题求助

问题原因与解决方法

核心错误

你代码中给视频绑定音频的写法错误,导致音频没有被正确写入输出文件:

  • 原代码行clip.set_audio = audio属于完全错误的用法:set_audio是MoviePy提供的实例方法,不是可以直接赋值的属性。同时你注释掉的clip.audio = audio本身是正确写法,却没有启用。

两种修复方案

你可以任选其中一种修改对应代码即可:

方案1:调用set_audio方法绑定音频

set_audio方法会返回绑定了音频的新剪辑对象,需要赋值回原变量才会生效:

clip = clip.set_audio(audio)

方案2:直接给audio属性赋值

直接取消你注释的那行代码即可,无需使用set_audio方法:

# 删掉错误的clip.set_audio = audio行,取消下面这行的注释
clip.audio = audio

额外排查点

如果修改后还是没有声音,可以检查以下两项:

  • 确认play.mp3文件存放在当前代码执行的工作目录下,路径错误、文件不存在都会导致无音频
  • 确认play.mp3文件本身可以正常播放,无损坏

修正后完整代码示例

import moviepy.editor as mpy
import os

directory_root = os.path.join("R:/", "Rajat", "voices", "same images")
files = os.listdir(directory_root)
files = [os.path.join(directory_root, f) for f in files]

clip = mpy.ImageSequenceClip(files, fps=10)
audio = (mpy.AudioFileClip("play.mp3") 
            .set_duration(clip.duration))
clip = clip.set_audio(audio)
clip.write_videofile("my_video1.mp4") 

内容的提问来源于stack exchange,提问作者Rajat Saini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 23:48:04