【终极修复】Stable Diffusion 视频插件 TemporalKit 连环报错:从 MoviePy 降级到代码级 API 适配
【摘要】针对StableDiffusion视频插件TemporalKit的连环报错问题,提出两步解决方案:首先需降级MoviePy至1.0.3版本解决"ModuleNotFoundError"错误,通过命令行先卸载后安装指定版本;其次修改UI代码适配新版WebUI,采用try-except结构兼容新旧API。建议用户保持MoviePy版本稳定,掌握手动适配技巧以应对插件更新滞后
📝【终极修复】Stable Diffusion 视频插件 TemporalKit 连环报错:从 MoviePy 降级到代码级 API 适配
一、 核心报错与病因
-
1. MoviePy 冲突:
ModuleNotFoundError: No module named 'moviepy.editor'-
病因:新版 MoviePy 2.x 移除了旧接口,而插件需要 1.0.3 版本。
-
-
2. API 缺失:
ImportError: cannot import name 'create_sampler_selection' from 'modules.ui'-
病因:WebUI v1.9+ 彻底移除了旧的 UI 构建函数。
-

二、 解决方案全流程
步骤 1:环境降级(解决 MoviePy 问题)
不要只执行 install,必须先卸载。在 WebUI 根目录的 cmd 中运行:
.\venv\Scripts\python.exe -m pip uninstall -y moviepy
.\venv\Scripts\python.exe -m pip install moviepy==1.0.3
【深度修复】Stable Diffusion 视频插件 TemporalKit 连环报错:MoviePy 版本陷阱与代码兼容性指南No module named ‘moviepy.editor‘

步骤 2:代码手术(解决 UI 报错)
打开 extensions\TemporalKit\scripts\sd-TemporalKit-UI.py,定位到第 23 行左右,将原本的 import 语句替换为以下兼容性写法:
原写法:
from modules.ui import create_sampler_and_steps_selection
修改为(增强修复版):
try:
from modules.ui import create_sampler_selection
except ImportError:
# 针对新版 WebUI 的手动修复方案
def create_sampler_selection(selected, id):
from modules import sd_samplers
import gradio as gr
return gr.Dropdown(label="Sampling method", choices=[x.name for x in sd_samplers.samplers], value=selected, elem_id=id)

三、 避坑总结
-
不要更新 MoviePy:即使 pip 提示有新版本,也请无视。
-
手动适配优于等待更新:TemporalKit 维护频率较低,掌握这种
try...except的手动适配技巧,是玩转老插件的关键。

四、 资料引用
-
代码参考:Stable Diffusion WebUI
modules/ui.py源代码。 -
版本控制:PyPI MoviePy 历史版本记录。
🚀 下一步操作建议
现在你应该可以正常进入 WebUI 界面并在标签页看到 Temporal-Kit 了。
由于 TemporalKit 涉及到大量的视频切片操作,建议你:
-
检查
G:\PythonProjects2\stable-diffusion-webui\extensions\TemporalKit\ffmpeg是否有对应的可执行文件,或者确保系统变量里有 FFmpeg。 -
第一次运行时,先用一段 1-2 秒的短视频进行测试,观察
input和output文件夹是否能正常生成图片。
📚 资料引用与参考
-
TemporalKit 项目仓库: CiaraStrawberry/TemporalKit
-
MoviePy 官方文档 (v1.0.3): MoviePy v1.0.3 Documentation
-
Stable Diffusion WebUI 扩展开发指南: Wiki - Developing Extensions
-
Python 依赖管理最佳实践: PyPI - MoviePy Versions
💡 总结
在 AIGC 生态中,插件的更新往往滞后于底层库。**“版本追新”**往往是报错的根源。对于 TemporalKit 这种依赖复杂的视频插件,保持 MoviePy 1.0.3 是确保稳定的较好选择。
在依赖库的版本变更之后,通常要注意 修复 由 API 变动带来的导入方式变化的问题。
更多推荐

所有评论(0)