2016-12-30 2 views
1

Я пытаюсь включить библиотеку ffmpeg с AWS.Включая библиотеку ffmpeg в AWS Lambda

drwxrwxrwx 2 root root  0 Dec 22 13:04 bin 
    -rwxrwxrwx 1 root root 40166912 Dec 22 11:50 ffmpeg.exe 
    -rwxrwxrwx 1 root root  30 Dec 22 13:04 version.sh 

drwxrwxrwx 2 root root  0 Dec 22 16:35 node_modules 
-rwxrwxrwx 1 root root  594 Dec 22 13:03 package.json 
-rwxrwxrwx 1 root root  818 Dec 30 11:04 SplitFrames.js 

Ниже то, что в главном файле JS, SplitFrames.js

var execute = require('lambduh-execute'); 
var validate = require('lambduh-validate'); 

process.env['PATH'] = process.env['PATH'] + ':/tmp/:' + process.env['LAMBDA_TASK_ROOT'] 

exports.handler = function(event, context, callback) { 
    var exec = require('child_process').exec; 
    var cmd = 'ffmpeg -version'; 

    exec(cmd, function(error, stdout, stderr) { 
     console.log(stdout); 
     callback(null, stdout); 
    }); 
} 

Я проверить функцию в лямбда и не выводит ничего. Учтите, как включить библиотеку ffmpeg с AWS и узлом js. Любая помощь приветствуется.

ответ

1

Непонятно, в чем проблема, которую вы пытаетесь решить, не могли бы вы добавить ее на свой вопрос?

С расширением кажется, что вы используете неправильные платформы, бинарные там -rwxrwxrwx 1 root root 40166912 Dec 22 11:50 ffmpeg.exe, Lambda использует Linux kernel version – 4.4.35-33.55.amzn1.x86_64 (http://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html).

Вместо этого вы можете использовать этот модуль узла https://github.com/eugeneware/ffmpeg-static, который должен содержать все три большие платформы, включая Linux, Windows (установка двоичных файлов с сторонних сайтов не является хорошей практикой).

Проверьте правильность пути выполнения.

Смежные вопросы