const ffmpegPath = require('ffmpeg-static');
const spawn = require('child_process').spawn;
function extractFrames(inputFile, outputFile, fps = 0.1) {
return new Promise((resolve, reject) => {
const ffmpeg = spawn(ffmpegPath, [
'-i', inputFile,
'-vf', `fps=${fps}`,
outputFile
]);
ffmpeg.on('close', resolve);
ffmpeg.on('error', reject);
});
}
字符串
这段代码是gcp云函数Uncaught signal: 11, pid=15, tid=15, fault_addr=99.
的错误,我试图保存帧在“/tmp”文件夹.但是,我得到这个错误.
我的ffmpeg-static版本是:5.2.0
在本地主机上运行时,这是完全正常的。但是,它在gcp上,它给出错误。
1条答案
按热度按时间wz8daaqr1#
根据您收到的错误消息,这似乎是库版本的问题。
我建议你查看这个GitHub问题,它建议使用旧版本的node.js。同时检查安装的版本是否与你正在使用的库版本兼容。此外,它似乎是一个开放的问题,这不是一个完整的答案,而是一个解决方案。
在Ubuntu 22.04上的Google Cloud Functions,第二代,Node 20中遇到了这个问题。
考虑到人们报告说这适用于旧版本的Node和/或Ubuntu,我想知道这是否是ffmpeg或Node(或两者)的问题。降级到旧版本不是一个有吸引力的长期解决方案,所以我试图做更多的挖掘,看看我是否能找到问题的根源。
也检查这另一个Github Link知道
ffmpeg-static
的支持版本环境.我可以看到,你正在使用ffmpeg-static
5.2.0版本,但根据这个Github Link最新使用的ffmpeg-static
版本是6.0.