【ffmpeg】将视频转换为9:16的竖屏,多出的两边黑色填充

 

  【命令】

 ffmpeg -i 1.mp4 -vf "scale=1080:ih*1080/iw,pad=iw:iw*16/9:(ow-iw)/2:(oh-ih)/2" 4.mp4

【参数说明】
scale=1080:ih*1080: 将视频的宽度设置为1080,高度等比缩放
pad=iw:iw*16/9:  将视频的高度扩展,多余部分用黑色填充
(ow-iw)/2:(oh-ih)/2: 将视频在水平和垂直方向上居中对齐,以便填充的黑色区域均匀分布在视频的上下两侧

【nodejs实现】

复制代码
let targetWidth   = 1080; // 目标宽度(竖屏时的宽度)
let targetHeight  = 1920; // 目标高度(竖屏时的高度)

ffmpeg()
.input(cutFile)
.outputOptions([
  '-vf',
 `scale=${targetWidth}:ih*${targetWidth}/iw,setsar=1,pad=iw:iw*${targetHeight}/${targetWidth}:(ow-iw)/2:(oh-ih)/2`
])
.saveToFile(outFile)
.on("progress", (progress) => {
  console.log('视频适配,进度: ' + progress.percent + '% done');
})
.on("end", () => {
  console.log("视频适配完成"); 
  resolve();
});
复制代码

*【注意】

这里默认视频比例是大于9/16的,如果视频比例小于9/16需要自行处理细节



posted @   蓝色星辰1993  阅读(837)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示