ffmpeg缩放nvenc保持宽高比

时间:2019-11-03 12:10:02

标签: ffmpeg nvenc

我想完全将mkv文件转码为mp4并上/下缩放保持宽高比的内容。

使用基于CPU的代码转换,您只需添加:

scale=1920:1080:force_original_aspect_ratio=decrease

使用HW(CUDA)可以在解码端进行-resize或在编码端进行-scale_npp的代码转换,但似乎都无法强制原始宽高比。

例如,我想将1920x800文件升级到1920x1080,同时用黑条填充其余部分,这样我就可以在这些条上覆盖字幕...

借助此功能,我可以使用GPU功率而不是cpu进行完全转码。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用scale_npp,您可以手动实现force_original_aspect_ratio

假设您的最大尺寸为1920x1080,

应该是

scale_npp=w='if(gt(a\,1920/1080)\,1920\,oh*a)':h='if(gt(a\,1920/1080)\,ow/a\,1080)'

但是,scale和scale_npp都不会填充输入。这需要使用软垫滤波器。