【ffmpeg】视频常用操作合集
2023-12-13 21:38:20
1.转码264
ffmpeg -i [原视频.mp4] -vcodec h264 [输出视频.mp4]
2.视频流yuv数据抽取帧
ffmpeg -f rawvideo -s:v [尺寸] -i "[视频源]" -f image2 -q 2 -r [帧数] [文件夹及文件名]
尺寸 : 例如 :640x360
视频源:例如: test.yuv
帧数: 例如:5
文件夹及文件名: 例如:2-5/%04d.png
ffmpeg -f rawvideo -s:v 640x360 -i "1.yuv" -f image2 -q 2 -r 5 out/%04d.png
从1.yuv文件中抽取640*360尺寸的图片,储存在out文件夹中,名字按照0001.png ,0002.png 递增。
yuv数据必须指定尺寸,因为他是源数据,没有行列概念。
3.yuv转为MP4
ffmpeg -f rawvideo -s:v 640x360 -i "1.yuv" -c:v libx264 1.mp4 -y
将640*360的源yuv数据1.yuv转为1.MP4
4.压缩视频(按照比特率500K-700K),同时拆分为图片
压缩视频
ffmpeg -i 1.mp4 -vf scale=640:360 -vcodec libx264 -b:v 500k -bufsize 500k -maxrate 700k 1_360P_500k.mp4
抽取图片
ffmpeg -i 1_360P_500k.mp4 -s:v 640x360 -f image2 -q 2 -r 5 1_360P_500k_5/%04d.png
5.截取视频段
ffmpeg -ss 00:00:17 -to 00:00:50 -i 原视频.mp4 -vcodec copy -acodec copy out.mp4
6.限制比特率为2M/s
ffmpeg -i "1.mp4" -b:v 2M 1_out.mp4
7.缩放到720P
ffmpeg -i 1.mp4 -vf scale=1280:720 -vcodec h264 1_720P.mp4
8.视频拼接
横向拼接
ffmpeg -i 0001.mp4 -i 0001_2.mp4 -filter_complex hstack 0001_cat.mp4
纵向拼接
ffmpeg -i 0001.mp4 -i 0001_2.mp4 -filter_complex vstack 0001_cat.mp4 -y
9.合并视频同时编码成h264
创建txt文件
mylist.txt
内容写上需要合并的视频名称
file '0.mp4'
file '1.mp4'
合并视频并转264
ffmpeg -f concat -safe 0 -i mylist.txt -c copy output.mp4 -vcodec h264 output_h264.mp4
直接合并视频
ffmpeg -f concat -safe 0 -i mylist.txt -c copy output.mp4
10. 查看视频码率等信息
ffprobe 1.mp4
11. 视频拼接并指定列数
ffmpeg -i 1.mp4 -i 2.mp4 -filter_complex "[0:v]crop=1920:ih:920:0[v0];[1:v]crop=1920:ih:920:0[v1];[v0][v1]hstack=inputs=2[v]" -map "[v]" output.mp4
1920是开始的列,920是总的提取多少列
12.提取特定范围的帧
ffmpeg -i input.mp4 -vf "fps=1" -ss 00:01:00 -to 00:02:30 output_%04d.png
文章来源:https://blog.csdn.net/weixin_43707042/article/details/134816177
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!