Nodejs:如何从图像创建视频

时间:2016-01-25 13:47:31

标签: node.js

如何在nodejs中从给定图像创建视频? 我已经使用了ffmpeg npm模块,但它不能为我工作,还使用了videohow npm模块,这对我来说也不起作用?

有人可以建议我如何从图像创建视频吗? 还给我一些基本的代码来运行。

1 个答案:

答案 0 :(得分:2)

直接使用ffmpeg很有挑战性,我不推荐它。相反,我推荐你引用的videohow npm。它也可能很棘手,但经过大量的摆弄,我能够很好地在我们的项目中获得视频。

这是我的代码(只需填写您自己的路径,它应该有效)

var videoshow = require('videoshow')

var secondsToShowEachImage = 1
var finalVideoPath = '/whatever_path_works_for_you'

// setup videoshow options
var videoOptions = {
  fps: 24,
  transition: false,
  videoBitrate: 1024 ,
  videoCodec: 'libx264', 
  size: '640x640',
  outputOptions: ['-pix_fmt yuv420p'],
  format: 'mp4' 
}

// array of images to make the 'videoshow' from
var images = [
  {path: path1, loop: secondsToShowEachImage}, 
  {path: path2, loop: secondsToShowEachImage}, 
  ...etc  
]

videoshow(images, videoOptions)
.save(finalVideoPath)
.on('start', function (command) { 
  console.log('encoding ' + finalVideoPath + ' with command ' + command) 
})
.on('error', function (err, stdout, stderr) {
  return Promise.reject(new Error(err)) 
})
.on('end', function (output) {
  // do stuff here when done
})