春有百花秋有月 - gif
type: channel
link: https://www.313390.xyz/index.php/tag/gif/
items: ffmpeg commond

ffmpeg commond
type: item
date: 2022-05-16T09:24:00+08:00
description: 视频文件简单转换成另一个格式的视频文件, 会默认使用H264编码格式输出视频文件. ffmpeg -i input.avi output.mkv 把一个视频文件my.avi和一个声音文件my.mp3合并成一个音视频文件my.mkv ffmpeg –i my.avi –i my.mp3 –vcodec copy –acodec copy my.mkv 把音视频文件my.mkv里的声音数据去掉生成只有图像的my.avi文件, 并使用h264编码 ffmpeg -i my.mk v -vcodec h264 -an my.avi 把音视频文件my.mkv里的图像数据去掉生成只有声音的my.aac文件, 并使用aac编码 ffmpeg -i my.mkv -acodec aac -vn my.aac 把多个图像文件使用h264编码封装成avi文件，如有my0.jpg, my1.jpg ... my99.jpg ffmpeg -i my%d.jpg -vcodec h264 my.avi ```xshell 指定音视频文件把1分30秒到5分20秒的内容输出到另一个文件 ffmpeg -ss 00:01:30 -i my.avi -to 00:05:20 -vcodec copy -acodec copy my.mkv 把视频文件里内容输出成多张图像 ffmpeg -i my2.avi -r 1 -f image2 my%d.jpg 只输出一张图像 ffmpeg -i my2.avi -r 1 -f image2 -t 0.0001 my%d.jpg 从音视频文件里生成yuyv422格式的数据 ffmpeg -i 99bear.mp4 -r 1 -f rawvideo -pix_fmt yuyv422 my.yuyv //yuv数据可用ffplay来播放 ffplay -f rawvideo -video_size 640x480 -pixel_format yuyv422 my.yuyv 改变原视频文件的分辨率大小为640x480, 使用h264编码, 声音使用aac编码, 并指定视频输出的码率为100k. ffmpeg -i 78.flv -vcodec h264 -acodec aac -s 640x480 -b:v 100k 78.avi 指定把视频文件里在第500秒开始30帧图像数据保存为gif, 指定一秒2张图像的速率 ffmpeg -ss 500 -r 2 -i 99bear.mp4 -vframes 30 my.gif 合并多个同格式的视频文件. 如把"1.flv 2.flv 3.flv"三个文件合并为my.avi 先创建一个文本文件files.txt, 里面记录要合并的文件名: files.txt： file '1.flv' file '2.flv' file '3.flv' 然后： ffmpeg -f concat -safe 0 -i files.txt -vcodec copy -acodec copy my.avi 视频文件增加logo. ffmpeg -i God.rm -i logo.png -filter_complex overlay my.avi 指定logo的位置, overlay=logo在视频里开始显示的x坐标:y坐标. 可以用变量W/w, H/h来表示, W表示视频图像的宽度 H表示视频图像的高度, w表示logo的宽度, h表示logo的高度 如右下角: ffmpeg -i God.rm -i logo.png -filter_complex overlay=W-w:H-h my.avi 如居中: ffmpeg -i God.rm -i logo.png -filter_complex overlay=W/2-w/2:H/2-h/2 my.avi 操作摄像头. 查看摄像头所支持的数据格式及分辨率: ffmpeg -f v4l2 -list_formats all -i /dev/video0 录制10秒摄像头里的内容, 并指定帧率为10和使用h264编码: ffmpeg -t 10 -f v4l2 -r 10 -i /dev/video0 -vcodec h264 ./a.avi 录制摄像头的内容为gif，并指定分辨率及帧率: ffmpeg -f v4l2 -video_size 320x240 -r 2 -i /dev/video0 o.gif 操作声卡, 录音10秒并使用aac编码: ffmpeg -t 10 -f alsa -i default -acodec aac my.aac 录音10秒保存为wav文件: ffmpeg -t 10 -f alsa -i default my.wav…