FFMpeg教程
https://blog.csdn.net/class_brick/article/details/82893967
縮放
ffmpeg -i IMG_6188.MOV -filter_complex scale=180:320 -y 縮放.mp4
說明:scale參數(shù)為寬高异剥。
視頻剪切(時間)
ffmpeg -ss 0:0 -t 0:5 -i IMG_6188.MOV 剪切.mp4
-ss 開始時間
-t 持續(xù)時間
剪裁
ffmpeg -i IMG_6188.MOV -filter_complex crop=360:640:100:100 -y 裁剪.mp4
說明:其中的 crop=320:240:0:0為裁剪參數(shù)闯狱,具體含義是 crop=width:height:x:y,其中 width 和 height 表示裁剪后的尺寸岗钩,x:y 表示裁剪區(qū)域的左上角坐標(biāo)。
加水印
ffmpeg -i IMG_6188.MOV -vf "movie=logo.png[logo];[in][logo]overlay=100:100[out]" -y 水印.mp4
說明:LogoName為圖片名,overlay=100:100意義為overlay=x:y,在(x,y)坐標(biāo)處開始添加水印欢揖。
左上角:overlay=10:10
右上角:overlay=main_w-overlay_w-10:10
左下角:overlay=10:main_h-overlay_h-10
右下角:overlay=main_w-overlay_w-10:main_h-overlay_h-10
旋轉(zhuǎn)
ffmpeg -i IMG_6188.MOV -filter_complex transpose=1 -y 旋轉(zhuǎn).mp4
說明:transpose=1為順時針旋轉(zhuǎn)90°,transpose=2逆時針旋轉(zhuǎn)90°奋蔚。
上下鏡像
ffmpeg -i IMG_6188.MOV -vf "split[mian][tmp];[tmp]crop=iw:ih/2:0:0,vflip[flip];[mian][flip]overlay=0:H/2"-y 上下鏡像.mp4
左右鏡像
ffmpeg -i IMG_6188.MOV -vf "split [main][tmp]; [tmp] crop=iw/2:ih:0:0, hflip [flip]; [main][flip]overlay=W/2:0" 左右鏡像.mp4
加黑邊
ffmpeg -i IMG_6188.MOV -vf pad=1120:1960:20:20:black -y 加黑邊.mp4
說明:pad=width:high:x:y:coler她混,這里的寬和高指的是結(jié)果視頻尺寸(包含加黑邊的尺寸),XY指的是源視頻添加到結(jié)果視頻所在位置泊碑,coler為填充顏色坤按。
加速/減速視頻
ffmpeg -i IMG_6188.MOV -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2[a]" -map "[v]" -map "[a]" 加速.mp4
setpts=0.5*PTS 中的 0.5 是視頻速度放慢一半
atempo=2 中的 2 是相對應(yīng)的音頻速度(=1/視頻速度)
提取視頻
ffmpeg -i IMG_6188.MOV -vcodec copy -an 提取視頻.mp4
提取音頻
ffmpeg -i IMG_6188.MOV -write_xing 0 提取音頻.mp3
音頻淡入/淡出
ffmpeg -i IMG_6188.MOV -af afade=t=in:st=0:d=3,afade=t=out:st=13:d=3 音頻淡入.mp4
視頻截圖
ffmpeg -i IMG_6188.MOV -ss 00:00:10 -vframes 1 視頻截圖.jpg
輸出第 10 秒的截圖
視頻 GIF 轉(zhuǎn)換
ffmpeg -i 剪切.mp4 -r 10 output.gif
GIF 轉(zhuǎn)視頻
ffmpeg -f gif -i output.gif GIF.mp4
去logo濾鏡
ffmpeg -i IMG_6188.MOV -vf mp=delogo=560:10:190:60:20 -y 去logo濾鏡.mp4
將mp4轉(zhuǎn)成ts
ffmpeg -y -i dance_5.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb dance_5.ts
將ts文件切割成一段段(segment_time 每段10秒)
ffmpeg -i dance_3.ts -c copy -map 0 -f segment -segment_list 3/index.m3u8 -segment_time 10 3/nxb-%04d.ts
mp4轉(zhuǎn)yuv
ffmpeg -i test.mp4 test.yuv
播放yuv
ffplay -video_size 640x480 -pixel_format yuv420p out.yuv