我有一个以 640x360 录制的输入视频(如果有任何区别,它来自网络摄像头)。
我希望输出为 1280x720(原始宽度的两倍)并且我希望原始视频向右移动并垂直居中。
我有两个或多个 640x720 的图像 (png),它们应该在左侧视频中的特定时间显示。
这是我必须重新调整大小和填充原始视频的内容:
ffmpeg -i "E:\Videos\testvid.wmv" -q:a 0 -q:v 0 -vf "pad=1280:720:(1280-iw):(720-ih)/2" -s 1280:720 "E:\Videos\new.wmv"
Run Code Online (Sandbox Code Playgroud)
这是我必须在视频中插入图像的内容:
ffmpeg -i "E:\Videos\new.wmv" -i "E:\Pictures\red_640x720.png" -filter_complex "[0:v][1:v] overlay=0:0:enable='between(t,1,10)'" "E:\Videos\new2.wmv"
Run Code Online (Sandbox Code Playgroud)
上面的两个语句工作正常。但是,我想一次完成它们,因此 FFMPEG 只运行一次(如果可能的话)。谁能帮我看看语法?
谢谢。
用逗号连接过滤器。一个或多个过滤器的线性序列构成过滤器链。用分号连接过滤器链以创建过滤器图。有关更多详细信息,请参阅过滤介绍和过滤器图说明。
例子:
-filter_complex \
"[0:v]filter_0,filter_1,filter_2[chain1]; \
[1:v]filter_3,filter_4,filter_5[chain2]; \
[chain1][chain2]filter_6"
Run Code Online (Sandbox Code Playgroud)
所以你的命令可能看起来像:
ffmpeg -i video.wmv -i image0.png -i image1.png -filter_complex \
"[0:v]pad=iw*2:ih*2:ow-iw:(oh-ih)/2[padded]; \
[padded][1:v]overlay=0:0:enable='between(t,1,10)'[bg]; \
[bg][2:v]overlay=0:0:enable='between(t,10,20)'[out]" \
-map "[out]" -map 0:a output.wmv
Run Code Online (Sandbox Code Playgroud)
导致:
归档时间: |
|
查看次数: |
2158 次 |
最近记录: |