fluent-ffmpeg 常用函数

2019-10-19 11:11:40

参考地址 fluent-ffmpeg 常用函数

最近项目频繁用到fluent-ffmpeg,将目前使用到的函数进行总结。

首先引入fluent-ffmpeg模块:

var ffmpeg = require('fluent-ffmpeg');

1.函数 ffmpeg.ffprobe

  ffmpeg.ffprobe查看音频视频文件信息并输出为json格式

  format 里面包含比特率,时长,文件大小等信息

  streams,包含视频音频信息详情,一般为两个stream值。

 

 2 改变文件属性

  save时可另存文件,改变源文件属性。

  inputFPS(25)可改变帧速率;

  seek(10)设置开始时间,从第10s开始保存;

  duration(10)设置总时长;

  input( "work/music/Enya - One By One.mp3")可合并音频;

  aspect("16:9") 设置视频横纵比;

  withSize('1600x900')设置视频宽高;

  withSize('1600x?').aspect('12:8').autoPad();设置比例后,宽高值可以只设置一个值。

如果原视频宽高比和转换的宽高比不一致,可以设置保持原始比例,不进行拉伸,用autoPad函数。

如下截图,主要起作用的是 -filter:v 的配置scale和pad的值,scale 保证了不拉伸,pad设置填充位置

3 将图片合成视频

  将图片按规则input到ffmpeg即可存成你所需要的格式

  var proc = ffmpeg('work/video/0000/frame%d.png').inputFPS(25).save('work/music/target.avi');

4 合并视频  

  var file1 = "1.mp4";
  var file2 = "2.mp4";
  var outPath = "out.mp4";
  var proc = ffmpeg(file1)
  .input(file2).mergeToFile(outPath);


  • 2018-04-16 07:28:10

    android点击事件,第一次无效,第二次才响应的问题

    今天碰到的问题,android的标题栏一个回退button,每次进入的时候第一次点击无效,一直到第二次点击时才响应,然后把代码copy到系统的回退按钮里面,结果每次都能响应,后面想了想,应该跟焦点有关系

  • 2018-04-18 15:56:00

    linux下如何实现mysql数据库每天自动备份定时备份

    备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的!

  • 2018-04-18 20:44:19

    $(...).live is not a function

    jquery中的live()方法在jquery1.9及以上的版本中已被废弃了,如果使用,会抛出TypeError: $(...).live is not a function错误。

  • 2018-04-19 16:31:03

    mysql双机热备的实现

    准备两个mysql,A和B,A为主,B为从。前提是这两个数据库现在的表结构要一模一样,否则不成功。这个要锁表处理了。

  • 2018-04-19 16:32:47

    mysql binlog_do_db参数设置的坑

    在配置文件中想当然地配置成binlog_do_db=test,xx,jj,以为是三个库。结果无论什么操作都没有binlog产生

  • 2018-04-20 02:11:58

    Android中finish掉其它的Activity

    在Android开发时,一般情况下我们如果需要关掉当前Activity非常容易,只需要一行代码 this.finish;即可。 那么,如果是想要在当前Activity中关掉其它的Activity应该怎么实现呢? 比如更改了某个设定,程序需要重新运行并加载新的配置文件,就要用到restart或finish让程序重启。

  • 2018-04-20 09:12:07

    如何在 7 分钟内黑掉 40 家网站?

    去年夏天我开始学习信息安全与黑客技术。在过去的一年中,我通过参加各种战争游戏、夺旗以及渗透测试模拟,不断提高我的黑客技术,还学习了很多关于“如何让计算机偏离其预期行为”的新技术。