Как централизованно ориентировать одиночный оверлей showwaves (или showfreqs) на фоне двух симметрично прокручиваемых оверлейных программ showpectrum с помощью ffmpeg? - PullRequest
0 голосов
/ 05 февраля 2019

Я пытаюсь правильно map и центрально-ориентировать одиночный оверлей showwaves (или showfreqs) против двух симметрично-прокручиваемых оверлеев showspectrum с помощью ffmpeg, например,

ffmpeg -i input.mp3 -filter_complex "[0:a]showspectrum=color=fiery:saturation=1:slide=scroll:scale=log:win_func=gauss:overlap=1:s=960x1080,pad=1920:1080[vs]; [0:a]showspectrum=color=fiery:saturation=2:slide=rscroll:scale=log:win_func=gauss:overlap=1:s=960x1080[ss]; [0:a]showwaves=s=960x540:mode=p2p[sw]; [vs][ss]overlay=w[out]; [out][sw]overlay=w[out]" -map "[out]" -map 0:a -c:v libx264 -preset fast -crf 18 -c:a copy output.mkv

enter image description here

1012 * Как показано на скриншоте выше, showwaves накладка упорно фиксируется в верхнем правом квадранте.Намерение состоит в том, чтобы он отображался горизонтально по центру.

Бонусные баллы, если вы можете помочь мне сгущать линии, нарисованные фильтром showwaves.

1 Ответ

0 голосов
/ 05 февраля 2019

Использовать

ffmpeg -i input.mp3 -filter_complex "[0:a]showspectrum=color=fiery:saturation=1:slide=scroll:scale=log:win_func=gauss:overlap=1:s=960x1080,pad=1920:1080[vs]; [0:a]showspectrum=color=fiery:saturation=2:slide=rscroll:scale=log:win_func=gauss:overlap=1:s=960x1080[ss]; [0:a]showwaves=s=1920x540:mode=p2p,inflate[sw]; [vs][ss]overlay=w[out]; [out][sw]overlay=0:(H-h)/2[out]" -map "[out]" -map 0:a -c:v libx264 -preset fast -crf 18 -c:a copy output.mkv

Координаты, установленные для наложения шоу-волн.Размер showwaves также изменился, чтобы охватить всю ширину.Добавлен фильтр надувания для имитации «толщины», но с точки зрения качества, YMMV.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...