Для ffmpeg.output("path/file.mp4")
необходим путь string
в качестве аргумента для записи в него выходного файла. Но для s3 bucket.upload(parms, ...)
требуется двоичный файл в качестве значения Body:
в параметрах JSON
Проблема: Невозможно предоставить данные файла, используя путь к файлу s3 в NodeJS Окружающая среда
FFmpeg()
.input("source.mp4") //video
.setStartTime(startTime)
.setDuration(duration)
.output(output) //output file path: string
.on("end", function() {
console.log("Processing finished successfully");
var params = {
Bucket: process.env.S3_BUCKET,
Key: "videos/filename.mp4",
Body: output //binary file data to be provided not file path
};
const bucket = new S3({
accessKeyId: process.env.S3_ACCESS_KEY_ID,
secretAccessKey: process.env.S3_SECRET_ACCESS_KEY,
region: process.env.S3_REGION
});
bucket.upload(params, function(err, data) {
console.log(err, data);
});
})
.run();