ffmpeg 9:16和16:9互相转换

ffmpeg 9:16和16:9互相转换

​今天搜集了一下16:9和9:16相互转换的命令。将多余的部分用模糊背景填充,感觉比直接加黑边好很多。

16:9转9:16 #

命令 #

ffmpeg -i input.mp4 -lavfi "[0:v]scale=256/81*iw:256/81*ih,boxblur=luma_radius=min(h\,w)/40:luma_power=3:chroma_radius=min(cw\,ch)/40:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,setsar=1,crop=w=iw*81/256"  output.mp4

效果 #

16-9.jpg

16-9_9-16.jpg

9:16转16:9 #

命令 #

ffmpeg -i input.mp4 -lavfi '[0:v]scale=ih*16/9:-1,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=h=iw*9/16' -vb 800K output.mp4

效果 #

由于没有9:16的素材,我就直接用上面16:9转9:16的输出文件,作为9:16转16:9的输入文件使用了。

16-9_9-16_BJxGn0VwQ.jpg

9-16_16-9.jpg