【问题标题】:Ffmpeg returning error code 1 in AWS Lamda functionFfmpeg 在 AWS Lambda 函数中返回错误代码 1
【发布时间】:2018-09-22 15:57:11
【问题描述】:

我正在运行一个 lambda 函数,它接收 mp4 视频,并在右下角的顶部添加 png 图像的水印(带有 10px 边距)。然后它将该图像输出到一个临时位置。 Error code 1 一直失败,但这不是很有帮助。我正在使用代码主目录中指定的ffmpeg 的二进制版本。我知道ffmpeg 设置正确,因为以这种方式在另一个 lambda 函数中使用它,这是有效的。但是添加覆盖失败。这是我的代码的相关部分:

function addWatermark(next) {
    var ffmpeg = child_process.spawn("ffmpeg", [
      "-i", target, // url to stream from
      "-i", watermarkPath,
      "-filter_complex" ,"overlay=x=W-w-10:y=H-h-10:format=rgb,format=yuv420p",
      "-c:a", "copy",
      "pipe:1"
    ]);
    ffmpeg.on("error", function(err) {
      console.log(err);
    })
    ffmpeg.on("close", function(code) {
      if (code != 0 ) {
        console.log("child process exited with code " + code); // Always exits here.
      } else {
        console.log("Processing finished !");
      }
      tmpFile.end(); 
      next(code);
    });
    tmpFile.on("error", function(err) {
      console.log("stream err: ", err);
    });
    ffmpeg.on("end", function() {
      tmpFile.end();  
    })
    ffmpeg.stdout.pipe(tmpFile)
    .on("error", function(err){
      console.log("error while writing: ",err);
    });
}

谁能发现哪里出了问题?

更新

我已设法打印出更多日志,但出现错误:

[NULL @ 0x42923e0] Unable to find a suitable output format for 'pipe:1'

【问题讨论】:

    标签: javascript node.js ffmpeg aws-lambda


    【解决方案1】:

    您必须使用 -f format 选项告诉 ffmpeg 您希望输出的格式。运行ffmpeg -formats 获取支持的格式列表。

    来自ffmpeg documentation

    -f fmt (输入/输出) 强制输入或输出文件格式。通常会自动检测输入文件的格式,并根据输出文件的文件扩展名猜测格式,因此在大多数情况下不需要此选项。

    例如,如果您希望输出为 MPEG-4,那么您对 ​​ffmpeg 的调用应如下所示:

       var ffmpeg = child_process.spawn("ffmpeg", [
         "-i", target, // url to stream from
         "-i", watermarkPath,
         "-filter_complex" ,"overlay=x=W-w-10:y=H-h-10:format=rgb,format=yuv420p",
         "-c:a", "copy",
         "-f", "m4v",
         "pipe:1"
       ]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-03
      • 2021-11-01
      • 1970-01-01
      • 2016-07-25
      • 2018-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多