论坛 图像/语音/视频 查看主题

Pixelle-Video 实测与评估

S sixchu · 1782208940 · 浏览 2 · 回复 0
分享
楼主 3 小时前

本文基于实际部署、跑通多条流水线后的实战感受,不是官方介绍。环境为 Ubuntu 22.04 + 本地 ComfyUI。

项目来源Pixelle-Video GitHub


一、项目是什么

Pixelle-Video 是一个开源短视频自动化生成框架:你给一句主题 / 一段文案 / 一张图,它能编排「LLM 写文案 + AI 生图/生视频 + TTS 配音 + 模板渲染 + ffmpeg 合成」整条流水线,输出一个完整 mp4。

技术栈关键词:Python 3.11 + Streamlit 前端 + FastAPI + ComfyUI(本地)/ RunningHub(云)/ 商业视频 API 三种后端可选 + Playwright 渲染 HTML 模板帧 + moviepy/ffmpeg 合成。


二、安装体验

  • 官方推荐用 uv 管理环境(项目根目录有 uv.lock、启动脚本里就是 uv run streamlit run web/app.py),不必用 conda。uv 一句 uv run 自动建 .venv、装依赖、按 pyproject.toml 选 Python 版本,多项目隔离比 conda 更自然。
  • 系统依赖只有两件:ffmpeg(moviepy 用)和 Playwright 的 Chromium(渲染 HTML 模板帧用)。后者首次跑会报浏览器不存在,执行 uv run playwright install chromium 即可。install-deps 这步在 Ubuntu 已装库的环境里常因系统包版本冲突报 100,可直接跳过,不要去 apt --fix-broken install 动 systemd/libcups
  • Python 版本:pyproject.toml 写死 >=3.11,用 3.11 最稳。

总体安装难度:不高,但坑点零碎。


三、核心架构与工作流

3.1 流水线 (Pipelines)

内置 5 条,对应不同生产场景:

Pipeline 输入 用途
标准流水线 (standard) 一句主题 全自动短视频
自定义素材 (asset_based) 自己的图/视频/音频 用 AI 给你的素材配文案+配音
数字人口播 (digital_human) 人物图+音频 固定人物口播,唯一能锁定人物角色的本地友好方案
图生视频 (i2v) 一张图 让图动起来
动作迁移 (action_transfer) 视频+图 把动作迁到图上

3.2 ComfyUI 工作流(selfhost)

按"原子能力"组织:

  • **image_***:文生图配图
    • image_flux(FLUX,20 步,画质高,默认)
    • image_qwen(Qwen-Image + Lightning LoRA,4 步,速度快+中文友好)
  • **video_*:文生视频(仅 T2V,不带图片参考**)
    • video_wan2.1_fusionx:WAN 2.1 FusionX 加速版,10 步、16fps、512x288、81 帧 ≈ 5 秒
  • **analyse_***:VLM 图像/视频反推(Qwen3-VL-8B)
  • **tts_***:
    • tts_edge:微软 Edge 在线 TTS,免费、预设音色,无显存压力
    • tts_index2:本地 IndexTTS2,支持参考音频克隆任意音色,吃显存

⚠️ 重要认知:仓库里的 *.json 都是 ComfyUI API 格式(无 nodes/links),拖进画布只显示一个节点是正常现象,不是版本问题、不是损坏。项目通过 API 提交执行,画布显示不全完全不影响。需要调试时可以转 UI 格式手动构建。


四、优势

  1. 流水线设计抽象得很好:把"文案 / 配图 / 配音 / 合成"拆成独立模块,每个模块都可替换为本地 ComfyUI / 云端 RunningHub / 商业 API。这是它最有价值的一点——不是死绑某个模型,谁好用替换谁。
  2. HTML 模板渲染思路新颖:每帧画面用 HTML/CSS 写好模板,靠 Playwright 截图。排版能力天花板比传统 PIL 画图高几个量级,会写 HTML 就能加新模板。
  3. 静态图+ffmpeg 这条线非常稳:跑通快、产出快、便宜,适合知识类/资讯类/语录类短视频量产。
  4. 开箱即用的 TTStts_edge 联网就能用,免费免显存;想克隆音色还有 tts_index2
  5. 批量任务 + 历史记录:内置任务列表、可重跑、有产物管理。
  6. 多语言 i18n:中英文界面完整。
  7. 代码组织清晰pipelines/prompts/services/workflows/ 分层清楚,二次开发上手快。

五、缺点 / 短板

  1. 生产级服务能力弱:Streamlit 前端是单用户交互式,Playwright 单机起 Chromium 截图扩展性差,没有成熟的分布式任务队列、限流、计费、重试。直接拿来对外做高并发服务不合适
  2. AI 写历史/史实文案容易胡编:年代、人物、地理位置一本正经地错,必须人工审稿。这是 LLM 通病,但做历史地理类内容时这点要特别注意。
  3. 本地视频能力弱
    • selfhost 目录只有 T2Vvideo_wan2.1_fusionx),没有 I2V
    • "素材动画服务"功能写死了只显示 API 选项asset_based.py L364-366),即使你做了本地 I2V 工作流也显示不出来,要改源码
    • video_wan2.1_fusionx 默认参数(512×288/10步/16fps)是为"跑通演示"调的,直出的画质对成品而言偏弱,画面里有人物会变形/糊
  4. LLM 中文输出偶发英文:提示词里英文示例多,有些较弱的 LLM 会被带偏,需要在 prompts/topic_narration.py 强化中文输出要求或换更强模型(Qwen-Plus / DeepSeek 推荐)。
  5. 本地视频模型门槛高:WAN/FLUX 一套模型几十 GB,对显存和磁盘有要求。没有 24G+ 显卡,本地走视频路线很痛苦。
  6. API 工作流的可调试性差:仓库里都是 API 格式 JSON,新手在 ComfyUI 拖进去只显示一个节点会一脸懵,缺少明显的引导文档(弹窗提示也容易被误解)。
  7. 地理可视化基本没有:地图、路线、区域标注这种历史地理常用元素,本身不擅长,要外部工具准备好素材再喂进来。
  8. 依赖较重:Playwright + Chromium + 多个 AI 后端,环境一旦坏一个环节就有得查。

六、适合 / 不适合的场景

✅ 非常适合

  • 模板化短视频量产:知识科普、语录、书摘、资讯播报、营销号图文视频(最甜点)
  • 内部内容团队提效工具:运营批量出片 → 人工筛选发布
  • 二次开发底座:在它的 pipeline / prompt / 工作流框架上改造自己的产线
  • 历史/地理类口播视频(半自动):AI 出文案初稿 + 人工核实史实 + 静态配图(真实地图/文物用素材,氛围图用 AI)+ TTS 配音

🤔 勉强能做但有坑

  • 固定人物角色视频:靠 digital_human pipeline,但本地工作流缺,得用 RunningHub 云端
  • 本地纯 AI 动态视频:能跑,但 video_wan2.1_fusionx 默认效果不到"作品级",要么调参/换原版模型、要么换商业 API

❌ 不适合直接做

  • 高并发对外 SaaS 服务:架构不支持,需要重做任务调度+前端
  • 要求史实精确且全自动的历史教学视频:LLM 编内容这关绕不过去
  • 强地理可视化(地图动画、路线演示):项目不擅长
  • 追求"作品级画质"的纯 AI 视频:默认本地参数不够,要么换商业 API 要么深度调优

七、生产化落地建议

如果你想用它做较正式的服务,参考这个架构:

[用户/上游] → 自建网关(鉴权/计费/限流) → 任务队列(Celery/RabbitMQ)
                                              ↓
                                    Pixelle FastAPI workers (多实例)
                                              ↓
              [LLM API] + [商业视频 API: Kling/Seedance/Wan-I2V]
                                              ↓
                                    Playwright 渲染 + ffmpeg 合成
                                              ↓
                                    对象存储(OSS) + CDN 分发

要点:

  • 丢掉 Streamlit,只保留 api/ 这层 FastAPI
  • 视频生成优先用商业 API(Kling/Seedance/DashScope Wan),别自建 GPU 集群,除非量大到划算
  • Playwright 这层是单机瓶颈,多 worker 启就行,单 worker 串行渲染
  • 加任务队列 + 重试 + 限流,原项目没有这些

八、技术亮点摘录(值得借鉴)

如果你不打算直接用,光看看也有收获:

  1. HTML+Playwright 做视频帧:彻底告别 PIL 苦逼画图,排版/字体/特效全交给 CSS,二开模板成本极低。
  2. 能力抽象表api_media.py 里那些 ability_types):把视频模型按"首帧 I2V / 首尾帧 / 音频驱动 / 视频续写"等能力分类,调度器据此匹配。这种"模型即能力"的抽象很值得学。
  3. 提示词集中化pixelle_video/prompts/):每类生成任务一个文件、一个常量、一个 builder 函数,改起来一目了然。
  4. 多后端可插拔:同一个能力(如生图、生视频)抽象出统一接口,本地 ComfyUI / 云端 RunningHub / 商业 API 三套实现,配置即可切换。

九、总评

  • 思路上:把短视频生产抽象成可编排的"原子能力 + pipeline"框架,配合 HTML 模板渲染,这套架构想法很好。
  • 工程上:当前更像一个"高度可配置的 demo / 单人工具",距离"开箱即用的生产服务"还有一段距离。适合作为框架/底座做二次开发,不太适合直接交付给运营当全自动 SaaS 用。

最大价值:让你免于从零拼"LLM + 生图 + TTS + 合成"这一整套基础设施,能省至少 80% 重复造轮子的工作量。剩下 20% 是产品化/工程化,需要你自己补。


十、踩坑

# 解法
1 uv 找不到、提示装 snap 用官方 curl -LsSf https://astral.sh/uv/install.sh \| sh,别用 snap
2 playwright 报浏览器不存在 uv run playwright install chromium(不用 sudo)
3 install-deps 报 exit code 100 库基本都齐了,跳过即可,别动 apt --fix-broken
4 ComfyUI 画布拖入工作流只显示一个节点 API 格式正常现象,不是 bug;要全节点请转 UI 格式或菜单导入
5 生成视频报缺字体/中文方块 sudo apt install fonts-noto-cjk
6 LLM 输出英文 prompts/topic_narration.py 强化中文输出要求,或换 Qwen-Plus/DeepSeek
7 "素材动画"只能选 API 当前代码限制(asset_based.py L364-366),要改源码才能用本地 I2V

#1

登录后即可发表回复

立即登录