python - 带有缩放、concat 和 xstack 的 ffmpeg 过滤器语法的无效命令
问题描述
我正在尝试使用 xstacks。我有几个视频,我想重新缩放,然后连接然后给 xstack。
这在我给python的subprocess.run()的输入中,它是一个字符串列表,所以它可以更好地自己处理空格。
'ffmpeg.exe',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.webm',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.webm',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-i',
'file.mp4',
'-filter_complex',
'[0:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled0];',
'[1:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled1];',
'[2:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled2];',
'[3:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled3];',
'[4:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled4];',
'[5:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled5];',
'[6:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled6];',
'[7:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled7];',
'[8:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled8];',
'[9:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled9];',
'[10:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled10];',
'[11:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled11];',
'[12:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled12];',
'[13:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled13];',
'[14:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled14];',
'[15:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled15];',
'[16:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled16];',
'[17:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled17];',
'[18:v]scale=320:180:force_original_aspect_ratio=decrease,pad=320:180:(ow-iw)/2:(oh-ih)/2,setsar=1[rescaled18];',
'[rescaled0][rescaled1][rescaled2][rescaled3][rescaled4]concat=n=0:v=1:a=1[concat0];',
'[rescaled5][rescaled6][rescaled7][rescaled8][rescaled9]concat=n=1:v=1:a=1[concat1];',
'[rescaled10][rescaled11][rescaled12][rescaled13][rescaled14]concat=n=2:v=1:a=1[concat2];',
'[rescaled15][rescaled16][rescaled17][rescaled18]concat=n=3:v=1:a=1[concat3];',
'[concat0][concat1][concat2][concat3]xstack=inputs=4:layout=0_0|w0_0|0_h0|w0_h0;',
'file.mp4'
我收到一个错误:
[AVFilterGraph @ 000002540f986d40] No such filter: ''
Error initializing complex filters.
Invalid argument
我不确定是否应该使用 lavfi、-vf 或 -filter_complex
解决方案
去掉最后一个过滤器后的分号;他们只分离一组过滤器。
'[concat0][concat1][concat2][concat3]xstack=inputs=4:layout=0_0|w0_0|0_h0|w0_h0',
推荐阅读
- c++ - MPI_ERR_TRUNCATE 与 Boost.MPI 并且仅阻塞通信
- javascript - 使用纯js更改复选框状态时如何获取属性中的值?
- vue.js - 为什么我的 AWS-Amplify 注册请求不包含某些参数?
- python - 如何检查熊猫数据框中是否有重复的样本?
- r - R cut - 标签具有前瞻偏差
- terraform - Terraform 在嵌套动态块中使用 count.index
- postgresql - 在 postgreSQL 中获取日期
- python - 在实时读取stdout和stderr的同时与子进程交互
- sql - 处理 CustomField 插入 - 哪个选项更高效且更易于维护
- xamarin.forms - 如何在列表视图中使用数据库信息更改标签的文本颜色和背景颜色?