帧生成视频命令:
ffmpeg -threads 2 -y -r 24 -i %05d.jpg output.mp4
视频生成帧命令(按帧生成图片):
ffmpeg -i checkpoints_dstt_car-turn_result.mp4 chaifen/%06d.png
1、下载ffmpeg安装包
https://github.com/BtbN/FFmpeg-Builds/releases
解压文件,进入bin目录,能看到ffmpeg.exe、ffplay.exe、ffprobe.exe三个文件。不用管它,进行下一步。
2、设置环境变量
点击“系统属性->高级系统设置->环境变量->用户变量”,选择“Path”条目,点击“编辑->新建”,把第一步的bin文件夹路径复制粘贴进去,然后点击确定即可。
我们打开cmd命令行窗口,输入命令“ffmpeg –version”。窗口返回ffmpeg的版本信息,说明安装成功。接下来你就可以直接使用命令行执行ffmpeg命令进行各种媒体格式的转换了。
3、ffmpeg的使用
首先要计算出视频的总帧数:
总帧数 = duration * fps 。
duration是我们设定的视频的长度,fps是视频每秒的帧数。
第二步将所有的图片文件放到一个临时目录,并且制定一个命名规则(可正则的):
例如图片的素材是image0.jpg image1.jpg image2.jpg
然后可以执行命令合成视频了:(简单版)
ffmpeg -threads 2 -y -r 24 -i %05d.jpg output.mp4
带音频:
ffmpeg -threads 2 -y -r 10 -i /tmpdir/image%04d.jpg -i audio.mp3 -absf aac_adtstoasc output.mp4
参数的解释含义:
- -threads 2 以两个线程进行运行, 加快处理的速度。
- -y 对输出文件进行覆盖
- -r 10 fps设置为10帧/秒(不同位置有不同含义,后面再解释)
- -i /tmpdir/image%04d.jpg 输入图片文件,图片文件保存为 image0001.jpg image0002.jpg ….
- -i audio.mp3 输入的音频文件
- -absf aac_adtstoasc 将结果的音频格式转为faac格式时需要这个选项。将音频格式转为faac是因为在iphone上某些音频格式的视频无法播放,例如mp3. 但faac格式的音频的视频在iphone上可以播放。-absf 的意思是设置一个bitstream filter进行某些转换。可以用ffmpeg -bsfs 查看所有支持的bitstream filter。 bitstream filter和 aac_adtstoasc的具体含义我也说不上。但是如果不用这个选项又会导致转换失败。
不带音频:
ffmpeg -loop 1 -f image2 -i /tmpdir/image%04d.jpg -vcodec libx264 -r 10 -t 10 test.mp4
- -loop 1循环读输入 0读完就不读了
- -vcode 编码格式libx264
- -b 指定200k码率
- -t 输出视频总时长:
这样运行命令就可以生成视频了;