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

尝试拼接图片列表生成视频时出现‘str’对象无‘duration’属性错误

问题原因

你犯了一个直观的错误:代码里虽然创建了ImageClip并设置了时长,但并没有把这个剪辑对象添加到Memes列表中,反而把循环里的文件名(字符串类型)加进去了。而concatenate函数需要的是MoviePy的剪辑对象,不是普通字符串,所以才会抛出'str' object has no attribute 'duration'的错误。

修正后的代码
import os
from moviepy.editor import *

Memes = []

for pictures in os.listdir("memes"):
    # 创建剪辑对象并设置时长,将对象存入列表
    clip = ImageClip(f"memes/{pictures}").set_duration(5)
    Memes.append(clip)

video = concatenate(Memes, method="compose")
video.write_videofile('test.mp4', fps=24)
关键修改说明
  • 新增clip变量接收配置好的ImageClip对象(包含时长设置)
  • 将Memes.append(pictures)改为Memes.append(clip),确保列表存储的是剪辑对象而非文件名字符串

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 16:32:31