Dav*_*rks 16 ffmpeg firebase google-cloud-functions
根据Firebase云功能文档,您可以在云功能中利用ImageMagick:https: //firebase.google.com/docs/functions/use-cases
是否有可能做类似的事情,但呼吁FFMPEG而不是ImageMagick?虽然缩略图像非常棒,但我还希望能够将传入图像附加到存储在Firebase存储上的视频文件中.
Bre*_*wen 30
ffmpeg没有预装(几乎只是ImageMagick); 要查看确切安装的内容,请查看Dockerfile:https://github.com/GoogleCloudPlatform/nodejs-docker/blob/master/runtime-image/Dockerfile.
但是,您可以在使用上载代码时上载任意二进制文件,gcloud beta functions deploy因为上载了当前目录(除外node_modules)中的所有内容.
注意:您只有磁盘写访问权限/tmp/.
ffmpeg-static是一个npm模块,它根据当前系统构建正确的ffmpeg二进制文件npm install.由于Cloud Functions在云中构建代码,因此它将构建正确的ffmpeg二进制文件.
https://github.com/eugeneware/ffmpeg-static
您可以在Cloud Functions for Firebase示例库中看到它的实际效果.
const ffmpeg = require('fluent-ffmpeg');
const ffmpeg_static = require('ffmpeg-static');
var cmd = ffmpeg('/tmp/video.avi')
.setFfmpegPath(ffmpeg_static.path)
.videoBitrate(1024)
.videoCodec('divx')
.format('avi')
.on('end', () => {
// ...
})
.on('error', err => {
console.error(err);
})
.save('/tmp/file-out.avi');Run Code Online (Sandbox Code Playgroud)
(感谢Daniel Lessa在他的回答中指出了这个模块.)
您可以在上传过程中包含一个ffmpeg二进制文件,然后使用类似的命令运行shell命令child_process.exec.您需要为目标平台(Debian/jessie)编译的ffmpeg二进制文件.
./
../
index.js
ffmpeg
Run Code Online (Sandbox Code Playgroud)
然后运行例如 gcloud beta functions deploy myFunc --trigger-http
var exec = require('child_process').exec;
var cmd = 'ffmpeg -i /tmp/myvideo.mp4 /tmp/image-%d.jpg';
exec(cmd, function(error, stdout, stderr) {
// command output is in stdout
});
Run Code Online (Sandbox Code Playgroud)
wab*_*bit 11
ffmpeg 现在包含在 Cloud Functions 环境中,因此可以直接使用:
spawn(
'ffmpeg',
['-i', 'video.mp4']
)
Run Code Online (Sandbox Code Playgroud)
已安装软件包的完整列表:https : //cloud.google.com/functions/docs/reference/nodejs-system-packages
小智 5
使用lib https://github.com/eugeneware/ffmpeg-static
const ffmpeg = require('fluent-ffmpeg');
const ffmpeg_static = require('ffmpeg-static');
let cmd = ffmpeg.('filePath.mp4')
.setFfmpegPath(ffmpeg_static.path)
.setInputFormat('mp4')
.output('outputPath.mp4')
...
...
.run()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7833 次 |
| 最近记录: |