Я пытаюсь автоматизировать повседневную задачу редактирования видео, которую я выполняю еженедельно. Я бы хотел использовать melt
.MLT/melt: конкатенатные клипы, аудио и видео fade-in/fade-out
Предположим, у меня есть видеоролики a
, b
и c
. Я хотел бы сделать следующее:
- Снип
a1
,b1
иc1
изнутриa
,b
иc
. - Конкатенация
a1
,b1
иc1
в одно видео. - Переход к/из черного в течение одной секунды при переходе от
a1
,b1
иc1
. - Применить саундтрек к конкатенированному выходу
a1
,b1
иc1
, а также сохранить исходный звук. - Затухают саундтрек, так как
c1
исчезает до черного (завершение видео).
Причем:
a
,b
иc
имеет произвольную длину.a
,b
иc
- все 1080p видеоролики, снятые со скоростью 60 кадров в секунду.a
,b
,c
,a1
,b1
иc1
все.mp4
файлы.- Саундтрек является файлом
.mp3
.
Это так близко, как я получил: (. Я использую произвольные заполнители для соответствующих файлов и выцветанию в/из раза в приведенном выше примере)
#!/bin/sh
melt \
colour:black out=59 $VIDEO1 in=0 out=600 -mix 60 -mixer luma \
colour:black out=59 -mix 60 -mixer luma \
colour:black out=59 $VIDEO2 in=0 out=600 -mix 60 -mixer luma \
colour:black out=59 -mix 60 -mixer luma \
colour:black out=59 $VIDEO3 in=0 out=600 -mix 60 -mixer luma \
colour:black out=59 -mix 60 -mixer luma \
-audio-track $AUDIO -transition mix
Это удается в обрезке и конкатенации a1
, b1
и c1
с анимированными переходами. Однако:
$AUDIO
Если больше, чем конкатенацияa1
,b1
иc1
, звук продолжает играть (с белым экраном) после того, как видео закончилось.Саундтрек не исчезает, когда
c1
исчезает (т.е. когда видео заканчивается).
Из того, что я собрал, выведении саундтрек может быть достигнуто путем «оживляющий аудио фильтр громкости», но я не имел никакого успеха в попытке этого.
Что мне делать?
Благодарим за помощь.
Так это решает пункт # 1 (окончание аудио, когда видео заканчивается), так что спасибо за это! По какой-то причине, по-видимому, он не исчезает из-за звука (№2), когда фильм заканчивается. Связанная с вами документация говорит о том, что она * должна * работать, поэтому я не понимаю, почему это не так:/ Я продолжу копаться в документах и опубликую ответ здесь, если я получу это для работы. –
Как я думаю об этом, «mix» может не делать то, что вы хотите, потому что это действительно кроссфейд, и он применяет линейный переход, а не логарифмический. Возможно, попробуйте применить фильтр «объем», как это предлагается в моем обновленном ответе. – Brian
Это делает именно то, что я искал, и удовлетворяет всем целям, изложенным в моем вопросе. Большое спасибо за Вашу помощь! (Как только SO позволяет мне, я собираюсь присудить вам 100 баллов за ваш ответ в качестве благодарности за то, что это стоит.) –