ffmpeg常用命令
ffmpeg常用命令
程序猿_46957 发表于7个月前
ffmpeg常用命令
  • 发表于 7个月前
  • 阅读 42
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

1.查看视频信息

ffmpeg -i videopath

使用ffprobe输出信息为json

ffprobe -v quiet -print_format json -show_format -show_streams video.mp4 

 

2.图片转为视频(循环显示图片)

ffmpeg -r 60 -loop 1 -i pic_1.jpg -pix_fmt yuv420p -vcodec libx264 -b:v 600k -r:v 60 -preset medium -crf 30 -s 720x576 -vframes 600  -r 60 -t 10 picvideo.mp4 -y

60 代表每秒60帧
-t 10 表示视频时长10秒
600为60*时长

720x576表示视频分辨率

3.视频格式转换为较流行通用的格式 H.264编码,Main/High Profile复杂度,MP4/TS封装

ffmpeg -i picvideo.mp4 -c:v h264 -c:a aac picvideo_1.ts 

-c:v 视频编码格式
-c:a 音频编码格式
 

4.视频加水印图片
合流

 ffmpeg -i video.mp4 -i pic_1.jpg -filter_complex overlay="10:10" 

10:10表示距离左边10像素,上边10像素
添加水印同时缩放水印图片尺寸

ffmpeg -i source.mp4  -i watermark.png  -filter_complex [1:v]scale=700:146[ovrl],[0:v][ovrl]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2 out.mp4

700:146最终水印宽:高像素
overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2 表示水印居中,视频中间

movie过滤器

ffmpeg -i video.mp4  -vf  "movie=pic.jpg ,scale= 50: 50[watermask]; [in] [watermask] overlay=10:10 [out]" out.mp4

5.合并视频

ffmpeg -i concat:"video_1.ts|video_2.ts" -c copy   output.mp4

需要把视频转成相同编码的格式(h264的ts视频)
其它方式见
http://blog.csdn.net/doublefi123/article/details/47276739

6.调整视频分辨率,保证源视频纵横比

ffmpeg -i input.avi -vf scale=400:-1

宽度固定为400,高度等比例缩放

7.调整视频纵横比,4:3转为16:9

ffmpeg -i input -vf pad=ih*16/9:ih :(ow-iw)/2:0:color output

16:9转为4:3

ffmpeg -i input -vf pad=iw :iw*3/4:0:(oh-ih)/2:color output

例如ffmpeg -i video.mp4  -vf pad=640:640*3/4:0:(720-360)/2:black out.mp4
源视频为640*360,转为4:3的视频,black颜色填充
其它文章
http://davidaq.com/tutorial/2014/11/20/ffmpeg-commands.html

标签: ffmpeg
共有 人打赏支持
粉丝 0
博文 25
码字总数 2031
×
程序猿_46957
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: