Я использую ffmpeg, чтобы сложить два видео по вертикали. Они могут быть разного размера, поэтому мне нужно масштабировать их до одинакового размера. Я нашел следующие команды.
Первый работает для разных размеров (но не масштабируется до нужного размера):
ffmpeg -i input1 -i input2 -filter_complex '[0:v]pad=iw:ih*2[int];[int][1:v]overlay=0:H/2[vid]' -map [vid] -c:v libx264 -crf 23 -preset veryfast output
Второй работает, если видео имеют одинаковую ширину и формат пикселей:
ffmpeg -i input1 -i input2 -filter_complex vstack output
Как получить ширину первого ввода внутри аргумента сложного фильтра, чтобы второй вход мог масштабироваться до той же ширины? Какова будет команда, чтобы сделать это? Я бы предпочел фильтр vstack, так как он должен быть быстрее, чем комбинация pad и overlay.