【发布时间】:2012-06-11 15:52:30
【问题描述】:
我正在尝试缩放视频,使其始终为 512 宽,其中高度与原始视频成比例变化。 缩放后,我想对视频应用水印/叠加层,因此视频会缩放,但水印不会。
我可以使用以下过滤器分别实现这些:
缩放
-vf "scale=512:-1"
水印
-vf "movie=watermark.png [watermark]; [in][watermark] overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2 [out]"
他们自己成功地工作。
但是,当尝试将两者结合起来时,我遇到了一些麻烦。
将两者都作为参数当然是行不通的,因为一个会覆盖另一个。
我试过了:
-vf "scale=512:-1,movie=watermark.png [watermark]; [in][watermark] overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2 [out]"
我的想法是先应用比例然后再应用水印,但我得到的只是一个错误
为“电影”过滤器指定的输入过多。
打开过滤器时出错!
然后将 , 更改为 ;结果:
简单的filtergraph 'scale=512:-1; 电影=水印.png [水印]; [在][水印] overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2 [out]' 没有 一个输入和一个输出。
打开过滤器时出错!
我认为我需要对过滤器链做更多的事情,但我很难弄清楚。
有什么想法吗?
非常感谢。
【问题讨论】:
-
与编程无关 - 试试superuser.com ?
-
我认为最好先缩放水印图像,然后在缩放视频中应用它。你可以尝试在两个进程之间做一个管道。
标签: filter ffmpeg overlay scale watermark