音视频提取
-vn: video no
-an:不要音频
-acodec copy : 音频拷贝
-f 包装格式
-y 复制
-i 输入
提取音频流
ffmpeg.exe -i ande.mp4 -vn -acodec copy -f mp4 -y ande-vn.mp4
提取视频流
ffmpeg.exe -i ande.mp4 -an -vcodec copy -f mp4 -y ande-an.mp4
ffprobe.exe -i ande-vn.mp4
截取10-20s视频流
-ss 放-i前面,可以从指定时间开始再打开文件
ffmpeg.exe -i ande.mp4 -ss 10 -t 00:00:10 -c copy -f mp4 -y ande-ss10.mp4
重新编解码
libxvid:(iso:mpeg1(vcd),2(dvd),4(1:avc,h.264);3(audio);4(video))(MPEG-4)
libmp3lame:(iso:mpeg1,later3)
libx264:国际电信联盟(h26x:1,3,4,5)AVC(advanced video coding)
libx265: HEVC(high efficience video coding)
ffmpeg.exe -i ande.mp4 -acodec libmp3lame -vcodec libxvid -f mp4 ande-xvid-mp3.mp4 //MPEG-4
ffmpeg.exe -i ande.mp4 -acodec libmp3lame -vcodec libx265 -f mp4 ande-x265-mp3.mp4 //转h265
添加图片水印
-vf :video filter
watermark1:水印标识
overlay:指定位置
[in]:输入文件
main_w:主视频宽度
overlay_w:水印宽度
ffmpeg.exe -i ande.mp4 -vf “movie=图片.png[watermark1];[in][watermark1]overlay=10:10” -y ande-picwm2.mp4
ffmpeg.exe -i ande.mp4 -vf “movie=图片.png[watermark1];[in][watermark1]overlay=main_w-overlay_w-10:main_h-overlay_h-10” -y ande-picwm3.mp4
//水印直接转到右下角
ffmpeg.exe -i ande.mp4 -vf “movie=图片.png[watemark1];[in][watermark1]overlay=main_w-overlay_w:0” -y ande.picwm4.mp4 //右上角
跑马灯滚动字幕
drawtext:文件特效插件
line_h:时间线
n:帧
rand(min,max)
mod(a,b)求余
sar:采样宽高比
t:时间戳
text_h:文本高度
从右到左
ffmpeg.exe -i ande.mp4 -vf “drawtext=fontfile=simhei.ttf:text=‘hello,您好’ :x=w-tw/10:y=10:fontcolor=#FF66CC:fontsize=60" -f mp4 -y ande-text4.mp4
从左到右
ffmpeg.exe -i ande.mp4 -vf "drawtext=fontfile=simhei.ttf:text=‘hello,您好’ :x=(mod(2n,w+tw)-tw):y=10:fontcolor=#FF66CC:fontsize=60” -f mp4 -y ande-text4.mp4
镜面倒影特效
split:分割
pad:裁剪大小 iw 宽度
vfilp:倒转
ffmpeg.ext -i ande.mp4 -vf “split[up][down];[up]pad=iw:ih*2[up];[down]vflip[down];[up][down]overlay=0:h” -y output_vfilp.mp4
裁剪指定区域
crop w :h :x :y
w h 输出视频的宽和高
x y 标记输入视频点,作为基准点,向下进行裁剪得到输出视频,不写xy,默认居中裁剪
ffmpeg.exe -i ande.mp4 -vf crop=400:400:0:0 -y ande-crop.mp4
vlc服务器推流,播放服务器流 RTSP
ffplay.exe -i rtsp://127.0.0.1:8554/rtsp21
抓流
ffmpeg.exe -i rtsp://127.0.0.1:8557/rtsp21 -c copy -f mpegts ts11.ts