pay*_*ike 6 ffmpeg thumbnails node.js
我尝试用fluent-ffmpeg创建一个视频缩略图,这是我的代码
var ffmpeg = require('fluent-ffmpeg');
exports.thumbnail = function(){
var proc = new ffmpeg({ source: 'Video/express2.mp4',nolog: true })
.withSize('150x100')
.takeScreenshots({ count: 1, timemarks: [ '00:00:02.000' ] }, 'Video/', function(err, filenames) {
console.log(filenames);
console.log('screenshots were saved');
});
}
Run Code Online (Sandbox Code Playgroud)
但我一直收到这个错误
"mate data contains no duration, aborting screenshot creation"
Run Code Online (Sandbox Code Playgroud)
任何想法为什么,
顺便说一句,在Windows上,我将ffmpeg文件夹放在c/ffmpeg中,我将ffmpeg/bin添加到我的环境varable中,我不知道fluent-ffmpeg是否需要知道ffmpeg的路径,但我可以成功使用下面的代码创建缩略图
exec("C:/ffmpeg/bin/ffmpeg -i Video/" + Name + " -ss 00:01:00.00 -r 1 -an -vframes 1 -s 300x200 -f mjpeg Video/" + Name + ".jpg")
Run Code Online (Sandbox Code Playgroud)
请帮我!!!
FFmpeg 需要知道视频文件的持续时间,而大多数视频在文件头中都有此信息,而有些文件则没有,大多数是原始视频,例如原始 H.264 流。
一个简单的解决方案可能是在拍摄快照之前重新混合视频,用于此任务的 FFmpeg 0.5 命令非常简单:
ffmpeg -i input.m4v -acodec copy -vcodec copy output.m4v
Run Code Online (Sandbox Code Playgroud)
该命令告诉 FFmpeg 读取“input.m4v”文件,使用相同的音频编码器和视频编码器(根本不编码)进行输出,并将数据输出到文件 output.m4v 中。
FFmpeg 会自动添加稍后拍摄快照所需的所有额外元数据/标头信息。
| 归档时间: |
|
| 查看次数: |
2601 次 |
| 最近记录: |