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);


  • 2019-09-09 05:32:55

    SrpingBoot 热启动与热部署

    当我们已经启动了一个服务,然后修改代码之后,会自动重新部署。Spring项目通常有新内容修改后需要重新编译然后运行。通过配置Spring boot的热启动配置,可以实现自动编译重启项目,通常要比手动停止,启动项目快。

  • 2019-09-11 15:28:07

    Node 性能优化

    硬盘的 IO 开销是非常昂贵的,硬盘 IO 花费的 CPU 时钟周期是内存的 41000000/250 = 164000 倍。 所有在一般应用中,优化要首先考虑数磁盘 IO , 通常也就是数据层的优化,说到数据库优化,很多人第一时间会想到加索引,但是什么加了索引查询会变快呢?索引要怎么加才合适呢?

  • 2019-09-11 16:49:56

    flex布局详解,Flex 布局语法教程

    布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现

  • 2019-09-12 16:32:19

    JSLint,JSHint,ESLint的区别

    主流的JS Lint工具及介绍 JavaScript已经发展蛮长时间了,对应的Lint工具也是层出不穷,下面介绍一下比较主流的几个Lint工具(其实是我用过的几个XD)