Filmora
Filmora - ИИ видеоредактор
Мощное, но простое приложение для редактирования видео
Открыть

Видеоредактор Filmora

Создавайте креативный контент без усилий

  • 20+ функций ИИ упрощают редактирование.
  • Расширенные функции редактирования видео.
  • 2,3 млн.+ креативных ресурсов.

Как объединить видео с помощью FFmpeg

Мария Матвеева
Мария Матвеева Опубликована 27-04-2023, обновлена 21-11-2024

Редактирование видео является важнейшим аспектом создания контента для многих людей. Являетесь ли вы ютубером, маркетологом или просто кем-то, кто хочет поделиться видео с друзьями и семьей, умение редактировать свои видео и манипулировать ими имеет ключевое значение. Одной из самых основных задач редактирования видео является объединение видео, при котором несколько файлов объединяются для создания одного целостного видео.

FFmpeg - это мощный инструмент, который позволяет вам делать именно это, и в этом руководстве мы познакомим вас с процессом объединения видео в FFmpeg. Независимо от того, являетесь ли вы новичком или опытным видеоредактором, это руководство предоставит вам всю необходимую информацию для плавного объединения ваших видео. Мы расскажем обо всем, начиная с установки и заканчивая исполнением, чтобы вы могли упростить процесс редактирования видео.

объединять видео с помощью ffmpeg
В этой статье
  1. Обзор и установка FFmpeg
  2. Предпосылка
  3. [Бонус] Присоединяйтесь к видео вместе с Filmora

Обзор и установка FFmpeg

FFmpeg - это бесплатный проект с открытым исходным кодом, который позволяет вам записывать, конвертировать и передавать потоковое цифровое аудио и видео. Это инструмент командной строки, широко используемый при редактировании и перекодировании видео. FFmpeg можно использовать для объединения видео и других задач, таких как добавление субтитров, изменение разрешения видео и многое другое. Он доступен для Windows, Mac и Linux, что делает его универсальным и доступным инструментом для любого пользователя.

Вот как установить FFmpeg:

Шаг 1 Войдите на свой сервер Ubuntu через SSH и обновите индекс пакета.

$ sudo apt update

Шаг 2 Установите FFmpeg и все необходимые зависимости

$ sudo apt install ffmpeg

Шаг 3 Проверьте версию FFmpeg, которую вы установили.

$ ffmpeg -version

Предпосылка

Прежде чем мы объединим видео с помощью FFmpeg, мы должны разобраться в различных доступных нам методах. FFmpeg предлагает три способа объединения видео: демультиплексирование, фильтр или протокол. Однако у каждого метода есть свой набор соображений, и наилучший метод для вас будет зависеть от свойств видео, с которыми вы работаете.

Крайне важно убедиться, что все свойства, связанные с кодировкой, соответствуют выбранному вами методу. Это включает в себя временную базу, высоту и ширину, кодеки и формат в пикселях. Некоторые методы требуют, чтобы видео, которые вы объединяете, имели одинаковую кодировку, в то время как другие допускают разные кодировки. Важно помнить об этом, чтобы гарантировать, что финальное видео будет бесшовным без каких-либо перерывов. Помните, что эти предварительные условия помогут вам обеспечить плавный процесс.

Объединяйте видео с теми же кодеками, используя FFmpeg

Если видео, которые вы хотите объединить, имеют один и тот же кодек, вы можете использовать демультиплексор FFmpeg "concat" или протокол для объединения их вместе. Этот простой и эффективный метод не требует перекодирования видео, экономя время и сохраняя исходное качество. В этом разделе будут рассмотрены шаги по объединению видео с использованием демультиплексора "concat" и протоколов "concat" в FFmpeg.

Объединяйте видео с помощью демультиплексора "Concat"

Средство демультиплексирования concat в FFmpeg позволяет вам объединять несколько видеофайлов с одними и теми же кодеками, считывая список путей к файлам из текстового файла и последовательно демультиплексируя их. Каждое видео начинается там, где заканчивается предыдущее, без необходимости перекодирования видео. Вот как это сделать:

Шаг 1 Создайте файл .txt и перечислите пути к видеофайлам, которые вы хотите объединить.

Join_video.txt

file /Users/Video/input1.mp4

file /Users/Video/input2.mp4

Примечание: Вы можете добавить более двух видеофайлов.

Шаг 2 Запустите команду FFmpeg:

ffmpeg -f concat -safe 0 -i join_video.txt -c copy output_demuxer.mp4

Примечание: -safe 0 добавляется для принятия любого имени файла.

-c copy скопирует все потоки.

Поскольку этот метод позволяет вам "копировать файлы в потоковом режиме" вместо их перекодирования, объединение происходит очень быстро. Это может быть хорошим вариантом, если у вас есть видео с теми же кодеками и вы хотите быстро присоединиться к ним без потери качества.

Объединяйте видео с помощью протокола "Concat"

Протокол concat в FFmpeg позволяет объединять несколько видеофайлов в определенном формате, который поддерживает объединение на уровне файлов, например MPEG-2 TS. Однако он не может быть использован для других видеоформатов, таких как MP4 и WEBM.

Вот как использовать "протокол объединения":

Шаг 1 Запустите команду FFmpeg:

ffmpeg -i "concat:input1.ts|input2.ts" -c copy output_protocol.ts

Примечание: Протокол concat позволяет вам "копировать файлы в потоковом режиме", добавив опцию -c copy.

Шаг 2 Введите имя файла видео, используя этот код:

ffmpeg -i "concat:input1.mp4|input2.mp4" -c copy output_protocol.mp4

Примечание: Если вы попытаетесь использовать этот метод для видеоформатов, которые не поддерживаются, в выходном видео будет сохранено только первое входное видео. И видео заканчивается после первого видео.

Хотя этот метод ограничен с точки зрения поддерживаемых видеоформатов, он очень прост в использовании, если вы объединяете видео в поддерживаемых форматах. Это единственная команда в терминале, не требующая использования текстового файла. Кроме того, использование опции -c copy делает его эффективным, поскольку не требует повторного кодирования, экономя время.

Объединяйте видеофайлы MP4 с различными кодеками и разрешениями с помощью FFmpeg

Если видео, которые вы хотите объединить, имеют разные кодеки или разрешения, вы все равно можете использовать FFmpeg для объединения их вместе. Однако этот метод требует перекодирования видео, что может занять больше времени и привести к потере качества. В этом разделе будут описаны шаги по объединению видео с различными кодеками или разрешениями с помощью FFmpeg.

Вот как это сделать:

Шаг 1 Укажите имена входных файлов в FFmpeg.

ffmpeg -i file1.mp4 -i file2.mp4 -i file3.mp4 \

Шаг 2 Используйте параметр filter_complex filtergraph, чтобы указать FFmpeg, откуда брать аудио и видео.

-filter_complex "[0:v] [0:a] [1:v] [1:a] [2:v] [2:a]

Примечание: [0:v][0:a] означает, что FFmpeg должен взять видео и аудио из 0-го видео (file1.mp4).

Шаг 3 Скажите FFmpeg объединить три файла (n=3).

concat=n=3:v=1:a=1 [vv] [aa]" \

Примечание: v=1:a=1 подразумевает один поток для аудио и один поток для видео.

Шаг 4 Сопоставьте эти аудио и видеовыходы с конечным контейнером видео. Это делается следующим образом:

-map "[vv]" -map "[aa]" mergedVideo.mp4

Важно отметить, что этот метод требует перекодирования видео, что может занять больше времени и привести к потере качества. Однако он обеспечивает гибкость фильтрации видео перед их объединением. Метод filter_complex в FFmpeg позволяет объединять видео с различными кодеками и разрешениями. Заключительным шагом является сопоставление аудио- и видеовыходов с конечным видеоконтейнером. Это можно сделать с помощью комманды -map.

Объединяйте видео с несколькими аудиопотоками с помощью FFmpeg

Объединение видео с несколькими аудиопотоками может быть более сложным, чем объединение видео с одним аудиопотоком. В этом разделе будут описаны шаги по объединению видео с несколькими аудиопотоками с помощью FFmpeg. Мы будем использовать метод filter_complex в FFmpeg, который позволяет вам управлять несколькими аудио- и видеопотоками и объединять их в одну команду. Этот метод более продвинутый, но позволяет вам объединять видео с разными аудиопотоками и создавать итоговое видео с несколькими звуковыми дорожками.

Шаг 1 Укажите входные файлы и opening.mkv, episode.mkv и ending.mkv:

$ ffmpeg -i opening.mkv -i episode.mkv -i ending.mkv -filter_complex

Шаг 2 Используйте параметр filter_complex в FFmpeg, чтобы указать входные потоки для видео и аудио.

[0:0] [0:1] [0:2] [1:0] [1:1] [1:2] [2:0] [2:1] [2:2]

Примечание: Одиночный видеопоток ([0:0], [1:0], [2:0])

Двойные аудиопотоки ([0:1][0:2], [1:1][1:2], [2:1][2:2])

Шаг 3 Используйте фильтр concat, чтобы указать, что вы хотите объединить 3 файла (n=3) с 1 видеопотоком (v=1) и 2 аудиопотоками (a=2). Укажите выходные потоки как [v], [a1], [a2]:

concat=n=3:v=1:a=2 [v] [a1] [a2]

Step4 Используйте опцию -map, чтобы отобразить выходные потоки в конечный контейнер видео:

-map '[v]' -map '[a1]' -map '[a2]' output.mkv

[Бонус] Присоединяйтесь к видео вместе с Filmora

Хотя FFmpeg предлагает широкий спектр опций для объединения видео воедино, некоторым пользователям может потребоваться много времени для обучения. Альтернативным методом объединения видео является использование Filmora. Wondershare Filmora - это удобное программное обеспечение для редактирования видео, которое позволяет вам легко объединять несколько видеороликов. Это отличный вариант для пользователей, не знакомых с редактированием видео или нуждающихся в опыте работы с инструментами командной строки, такими как FFmpeg.

Скачать бесплатно
Скачать бесплатно
iOS Android

Filmora имеет простой интерфейс перетаскивания, упрощающий добавление, упорядочивание и редактирование видео и аудиодорожек. Кроме того, он предлагает различные функции, такие как разделение, обрезка, кадрирование, слияние и многое другое. Он также содержит различные эффекты, переходы и анимацию для улучшения общего вида вашего видео. С Filmora вы можете создавать профессионально выглядящие видеоролики с минимальными усилиями.

Пошаговые инструкции

Вот как объединить видео с помощью Filmora:

Шаг 1 Откройте Filmora и нажмите" Новый проект".

новый проект filmora

Шаг 2 Go to "Файл" > "Импорт медиафайлов" > "Импорт медиафайлов" для добавления ваших видеофайлов в медиатеку.

filmora импортирует файлы

Шаг 3 Перетащите и drop файлы, которые вы хотите объединить, из медиатеки на временную шкалу, и тогда вы получите объединенное видео без проблем.

filmora добавить медиа

Шаг 4 Отредактируйте свое видео.

filmora редактирует видео

Шаг 5 После редактирования перейдите на вкладку "Экспорт", чтобы сохранить ваши видео.

filmora экспортирует видео

Итог

FFmpeg - это мощный инструмент, который позволяет вам объединять видео различными способами. Независимо от того, работаете ли вы с видео с одинаковыми кодеками и разрешениями или с видео с несколькими аудиопотоками, FFmpeg справится с этим. Однако для пользователей, не знакомых с редактированием видео или нуждающихся в опыте работы с инструментами командной строки, использование Filmora может быть более удобным вариантом. Он предлагает простой интерфейс перетаскивания и множество функций и эффектов для улучшения общего вида вашего видео.

Мария Матвеева
Мария Матвеева Главный редактор
Поделиться в: