我正在构建一个需要使用ffmpeg的Lambda函数。出现的错误是:
与问题相关的代码如下...
ERROR :: Error: Cannot find ffmpeg
与问题相关的代码如下...
process.env['PATH'] = process.env['PATH'] + "/" + process.env['LAMBDA_TASK_ROOT']
process.env['PATH'] = process.env['PATH'] + ':/tmp/'
var ffmpeg = require('fluent-ffmpeg')
exports.handler = (event, context, callback) => {
var proc = new ffmpeg();
proc.addInput('testfile.mp4)
.on('start', function(ffmpegCommand) {
})
.on('progress', function(data) {
})
.on('end', function() {
})
.on('error', function(error) {
/// ERROR IS HERE
})
.outputOptions(['-hls_time 10'])
.output(fileName + '.m3u8')
.run();
}
这是我的ZIP结构:
./ffmpeg
./ffprobe
./index.js
./node_modules
./node_modules/aws-sdk
./node_modules/ffmpeg
./node_modules/fluent-ffmpeg
./package.json
我看过很多文章,有人提到需要对ffmpeg和ffprobe进行chmod
操作,我尝试使用chmod 755
对两个可执行文件进行操作,但并没有起作用。
我也看到了需要更改路径的相关内容,我尝试了一些方法,但仍然失败。我不确定该从哪里开始,或者如何进一步诊断我所做的错误。非常感谢您的帮助!