Я пытался добиться перехода с плавным переходом между двумя видеоклипами с помощью ffmpeg, но до сих пор не получилось. Я новичок в ffmpeg и в основном полагаюсь на то, что я могу найти в документации и существующих примерах онлайн. Из того, что я читал до сих пор, используя либо смесь или наложения фильтра должно помочь в достижении того, что я после , но я не могу выяснить подробности командной строки , чтобы получить его на работу.
В замирании и Concat фильтров отлично подходит для постепенного исчезновения видео 1, нарастающих и видео 2 и CONCAT на 2 в 1 клип переходов типа , но я ценю помощь в получении команды перехода из видео 1 к видео 2 без какого - либо собирается черный между ними. Я нигде не мог найти примеров именно этой проблемы, может быть, я ищу неправильные ключевые слова ...?
Говоря более конкретно, мои видео имеют формат mp4 (видео h264, без звука, если это имеет значение), каждое из них имеет длину 5 секунд, и я после перехода с ок. 4,5 с видео от 1 до 0,5 с видео 2.
Подобно тому, как этот учебник использует MLT и фреймы (пример затухания см. В 2:25), хотя я ищу способ сделать это только в ffmpeg без вызова каких-либо других прог. http://www.youtube.com/watch?v=3PRZ9L_KLdI
Любые указатели или, возможно, командная строка, чтобы получить исчезновение, как это было бы очень признательно, большое спасибо!
Ответы:
Я предлагаю сделать так:
Таким образом, команда для добавления кроссфейдера к 2 видео (5 секунд) должна быть:
Это приведет к исчезновению первого видео в альфа-формате на 4-й секунде (st = 4) в течение 1 секунды (d = 1), к второму видео на 0 секунд (st = 0) в течение 1 секунды (d = 1) и переместит его отображение время пересылки до 4 с (+ 4 / ТБ). Затем мы просто обрезаем 9 секунд черного цвета, масштабируем его для вывода размера видео и наложения материала.
Надеюсь, это поможет.
источник
-i 1.mp4 -i 2.mp4...
, верно?Вот как я это сделал:
1) Добавьте исчезновение (от светлого к темному) в конце 1-го и добавьте (от темного к светлому) в начале 2-го:
76:24 означает, что затухание начнется с 76-го кадра и закончится через 24 кадра = 1 с затухания.
0:25 означает, что появление начнется с 0 кадра и закончится через 25 кадров.
2) Объединить 2 видео
Конвертировать все в TS
Объединить
Благодаря:
http://www.bogotobogo.com/FFMpeg/ffmpeg_fade_in_fade_out_transitions_effects_filters.php
источник
ffmpeg-concat - это самый простой способ выполнить то, что вы хотите, и он позволяет вам использовать множество сексуальных переходов OpenGL, по умолчанию это кроссфейд.
ffmpeg-gl-transition - это пользовательский фильтр ffmpeg, который позволяет использовать GLSL для плавного перехода между двумя видеопотоками. Этот фильтр значительно проще в использовании и настройке, чем альтернативы, перечисленные здесь.
Этот фильтр поддерживает большой список типов переходов, по умолчанию используется кроссфейд.
источник