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

使用videoshow NPM库调用ffmpeg生成视频报exit code 1错误如何解决?

问题定位与解决方案

这个报错本质是ffmpeg处理输入图片时,图片参数和你配置的视频参数不兼容,导致滤镜链初始化失败,按以下步骤排查即可:

1. 优先检查输入图片参数匹配度

  • 确认你用到的abc.jpg、xy.jpg的分辨率、色彩空间一致,不要出现一张是4:3比例、一张是16:9,或者一张带透明通道、一张是普通RGB格式的情况,libx264编码默认不支持透明通道,带透明通道的图片会直接触发这个报错。
  • 如果图片分辨率不一致,你可以先把所有图片预处理成你配置的640x640尺寸,或者在videoOptions里加autopad: true参数,让videoshow自动给尺寸不对的图片加黑边填充。

2. 修正路径配置问题

你当前用的是根路径写法/InputImages/和/outputImages/,Windows系统下这种写法会找不到对应文件,建议改成相对路径或者完整绝对路径:

// 假设InputImages和outputImages都在项目根目录,就用以下相对路径写法
let path1= './InputImages/abc.jpg';
let path2 = './InputImages/xy.jpg'
var finalVideoPath = './outputImages/newvideo2.mp4'

同时提前确认对应文件夹已经创建,没有读写权限限制。

3. 调整videoshow配置参数

你当前的配置可以调整几个兼容项避免参数冲突:

var videoOptions = {
  fps: 24,
  transition: false,
  videoBitrate: 1024,
  videoCodec: 'libx264', 
  size: '640x640',
  autopad: true, // 新增:自动填充不匹配尺寸的图片
  pixelFormat: 'yuv420p', // 替换原来的outputOptions配置,兼容性更好
  format: 'mp4' 
}

4. 确认ffmpeg版本兼容性

部分新版ffmpeg的滤镜参数和旧版videoshow依赖的fluent-ffmpeg不兼容,建议你安装ffmpeg 4.x版本,不要用最新的5.x/6.x版本,安装后确认ffmpeg已经加入系统环境变量,命令行运行ffmpeg -version能正常输出版本信息即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:36:04