【发布时间】:2016-10-07 02:36:39
【问题描述】:
我正在使用 AWS lambda 并尝试设置基于 node + ffmpeg 的任务。显然 Lambda 无法处理大于 250Mb 的 zip(我遇到了异常 Unzipped size must be smaller than 262144000 bytes)
我遵循了构建指南 from ffmpeg,最终构建为 377Mb:
可能有一些我可以修剪的东西,但我不确定我能否达到 200+Mb。 Lambda 不适合 ffmpeg 任务吗?如果人们已经用于视频处理,那么唯一的解决方案是彻底修剪ffmpeg build?
== 编辑 ==
正如@idbehold 的回答中提到的,我可能只需要二进制文件。我第一次尝试只使用 ./bin 中的二进制文件,但我收到了如下错误:
{
"errorMessage": "Command failed: /bin/sh -c ffprobe -v quiet -print_format json -show_format -show_streams test.mp4
ffprobe: error while loading shared libraries: libva.so.1: cannot open shared object file: No such file or directory",
"errorType": "Error",
"stackTrace": [
"ffprobe: error while loading shared libraries: libva.so.1: cannot open shared object file: No such file or directory",
"",
"ChildProcess.exithandler (child_process.js:213:12)",
"emitTwo (events.js:87:13)",
"ChildProcess.emit (events.js:172:7)","maybeClose (internal/child_process.js:821:16)",
"Socket.<anonymous> (internal/child_process.js:319:11)",
"emitOne (events.js:77:13)",
"Socket.emit (events.js:169:7)",
"Pipe._onclose (net.js:469:12)"
]
}
lambda 只是执行带有 child_process 的输入命令,就像在 node-exec 蓝图 aws 函数中一样。所以我想我需要包括那些其他文件。我复制了遵循 ffmpeg 安装指南后获得的二进制文件,但也许它们在我的 ubuntu 机器中的链接方式不同。我想我应该专注于修复这个错误。
【问题讨论】:
-
johnvansickle.com/ffmpeg 这个静态构建只有 16MB 作为 tar.xz。
标签: amazon-web-services ffmpeg aws-lambda