Skip to content

A script set that uses ffmpeg to implement various functions

License

Notifications You must be signed in to change notification settings

jifengg/ffmpeg-script

Repository files navigation

ffmpeg-script

一个使用ffmpeg实现各种功能的脚本集(nodejs)

运行环境

名称 版本 注意
nodejs 18.16.1+
ffmpeg 4.4.2+ 需要添加到环境变量path中

脚本为了方便使用,尽量不使用第三方库,因此,如果没有特殊说明,每个文件均可以独立运行。
无需执行npm install

分析视频场景帧,并生成播放器支持的书签文件(PotPlayer)

命令行示例

node ffmpeg.video2bookmark.js -i "视频文件(夹)完整路径"

将在视频文件同目录下创建同名的.pbf文件,该文件为PotPlayer支持的书签文件。打开视频文件将自动加载。更多书签的使用方式,请自行研究PotPlayer。

  • 分析需要对视频进行解码,受CPU性能影响;
  • 更多参数可执行node ffmpeg.video2bookmark.js -h查看帮助文档
  • 关于这个脚本的记录文章可以查看这里docs/ffmpeg.video2bookmark.md

使用视频画面拼接自定义的字幕

命令行示例

node ffmpeg.subtitle.stack.js -i "视频文件路径" -t "文本文件路径" -font "字体文件路径"
  • 更多参数可执行node ffmpeg.subtitle.stack.js -h查看帮助文档
  • 关于这个脚本的记录文章可以查看这里docs/ffmpeg.subtitle.stack.md

以水平滚动的方式,展示多张图片

示例视频
output.mp4

命令行示例

node ffmpeg.images.rolling.js -i "图片文件夹路径"
  • 更多参数可执行node ffmpeg.images.rolling.js -h查看帮助文档
  • 关于这个脚本的记录文章可以查看这里docs/ffmpeg.images.rolling.md

为图片或视频添加自定义的水印,具有动态水印等多种高级功能。

模拟DVD待机画面
big_buck_bunny_10s_dvd.mp4

每1秒随机变换水印位置
big_buck_bunny_10s_random.mp4

身份证添加水印:

idcard_watermark

命令行示例

node ffmpeg.watermark.js -i "图片文件夹路径"

将多张图片转换成类似幻灯片的视频,支持多种转场效果

效果预览
output.mp4

命令行示例

node ffmpeg.img2video.js -i "图片文件夹路径"
  • 将一个目录里的图片文件按顺序生成幻灯片视频,如果目录下有音频和字幕,也将第一个音频和字幕添加到视频里
  • 更多参数可执行node ffmpeg.img2video.js -h查看帮助文档
  • 如果你对ffmpeg的开发感兴趣,关于这个脚本的技术文章可以查看这里docs/ffmpeg.img2video.md
  • 增加了对自定义转场效果的支持,并在preset/xfade里预置了一些效果,点击这里预览效果。
  • 关于自定义转场效果要怎么写,可以查看这个文档docs/ffmpeg.xfade.md

About

A script set that uses ffmpeg to implement various functions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published