FFmpeg
FFmpeg将视频导出每一帧图片
#ffmpeg -r framerate -i input.mp4 -f image2 output001.jpg~output447.jpg
ffmpeg -r 30 -i kitten.mp4 -f image2 image%03d.jpg
导出的图片
FFmpeg将图片合成视频
将image001.jpg到image447.jpg合成为一个视频
# ffmpeg -f image2 -i input_image_%03d.jpg output.mp4
ffmpeg -f image2 -i image%03d.jpg cat.mp4
可以加入-r 50设置50帧每秒的帧率。
FFmpeg转换视频格式
# ffmpeg -i input.mp4 output.avi
ffmpeg -i video1.mp4 video1.avi
输出的视频清晰度比较差,可以添加参数提高清晰度,
ffmpeg -i video1.mp4 -b:v 20000k video2.avi
FFmpeg支持的格式
ffmpeg -formats
在输出中挑了几个常见的格式
DE avi AVI (Audio Video Interleaved)
DE mp3 MP3 (MPEG audio layer 3)
E mp4 MP4 (MPEG-4 Part 14)
DE mpeg MPEG-1 Systems / MPEG program stream
其中的DE意思如下
Codecs:
D..... = Decoding supported
.E.... = Encoding supported
..V... = Video codec
..A... = Audio codec
..S... = Subtitle codec
...I.. = Intra frame-only codec
....L. = Lossy compression
.....S = Lossless compression
-------
FFmpeg支持的音频和视频编码格式
ffmpeg -codecs
在输出中挑了几个常见的格式
DEVI.S bmp BMP (Windows and OS/2 bitmap)
DEV..S gif CompuServe GIF (Graphics Interchange Format)
DEVILS jpeg2000 JPEG 2000 (decoders: jpeg2000 libopenjpeg ) (encoders: jpeg2000 libopenjpeg )
DEV.L. mpeg4 MPEG-4 part 2 (decoders: mpeg4 mpeg4_cuvid ) (encoders: mpeg4 libxvid )
FFmpeg支持的编码器
ffmpeg -encoders
在输出中挑了几个常见的格式
V....D libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (codec h264)
V....D libx265 libx265 H.265 / HEVC (codec hevc)
V....D libvpx libvpx VP8 (codec vp8)
Encoders:
V..... = Video
A..... = Audio
S..... = Subtitle
.F.... = Frame-level multithreading
..S... = Slice-level multithreading
...X.. = Codec is experimental
....B. = Supports draw_horiz_band
.....D = Supports direct rendering method 1
Reference
FFmpeg 视频处理入门教程
http://www.ruanyifeng.com/blog/2020/01/ffmpeg.html