Как склеить два видео: Соединить видео онлайн — Слияние видеороликов — Бесплатный инструмент для соединения видео — Clideo

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

Contents

    Ожидается, что к 2025 году у YouTube будет почти 2,85 миллиарда пользователей по всему миру. С ростом числа зрителей видео нет сомнений в том, что спрос на редактирование видео будет расти.

    Редактирование видео — это часть процесса производства видео, которая включает в себя такие задачи, как упорядочивание и объединение видео, добавление графики, добавление субтитров и многое другое.

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

    В этом уроке я покажу вам несколько примеров использования редактора командной строки FFmpeg для объединения видеофайлов. Вы сможете объединить input1.mp4 и input2.mp4 с помощью FFmpeg в конце этого урока:

    Ваш браузер не поддерживает HTML-видео.

    Предварительное условие

    Вам необходимо скачать FFmpeg. Для справки: в этом руководстве используется версия FFmpeg v5.0.1.

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

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

    Что такое формат контейнера

    Формат контейнера — это формат видеоконтейнера. Контейнер видео содержит видеопотоки, аудиопотоки, субтитры и другие метаданные видеофайла.

    Контейнерный формат видео также может быть известен как расширение файла. Формат контейнера видео можно найти в его имени файла. Одними из наиболее часто используемых форматов видеоконтейнеров являются MP4, MOV, MKV и т. д.

    Данные, содержащиеся в видеофайле, сжимаются и распаковываются с использованием кодека.

    Что такое видеокодек

    Видеокодек — это инструмент, который сжимает или распаковывает видеофайл. Слово кодек происходит от слов en co der и dec заказ.

    Видеокодер сжимает видеофайл, а видеодекодер распаковывает его. Формат сжатых данных обычно соответствует стандартному формату кодирования видео или формату сжатия видео. Одними из наиболее распространенных и популярных видеокодеков являются H.264 (MPEG-4, часть 10), H.262 (MPEG-2, часть 2) и Motion JPEG (MJPEG).

    Вы можете проверить кодек вашего видео, выполнив эту команду в терминале:

     ffprobe -i input. mp4
     

    Видеокодек можно найти в распечатанной информации:

    Видео выше сжато с использованием кодека H.264 с основным профилем.

    Хотя названия формата контейнера и видеокодека могут звучать одинаково (MP4 и MPEG-4), на самом деле они разные.

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

    Объединение видеофайлов с одинаковыми кодеками

    Способ 1. Использование демультиплексора concat

    Демультиплексор concat считывает список видеофайлов из текстового файла и последовательно демультиплексирует их. Каждое видео начинается там, где заканчивается предыдущее.

    Чтобы использовать демультиплексор concat, видеофайлы должны иметь одинаковых потоков . Однако они могут быть упакованы в контейнеры разных форматов, например . mp4 , .mov , .wmv и т. д.

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

    join_video.txt

     файл /Users/Video/input1.mp4
    файл /Пользователи/Видео/input2.mp4
     

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

    Затем запустите команду FFmpeg.

     ffmpeg -f concat -safe 0 -i join_video.txt -c копировать output_demuxer.mp4
     

    -safe 0 добавляется так, что любое имя файла будет принято. Значение по умолчанию 1 отклонит абсолютные пути в текстовом файле.

    -c copy скопирует все потоки. Это заставляет FFmpeg игнорировать процесс декодирования и кодирования и выполнять только демультиплексирование и мультиплексирование.

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

    Bear Tip 🐻: вы можете опустить -safe 0 , если вы используете относительные пути.

    Объединенное видео начинается с первого видео, input1.mp4 , которое длится 9 секунд.

    Второе видео, input_2.mp4 следует сразу за первым видео.

    Видео с разными форматами контейнеров

    Форматы видеоконтейнеров могут быть разными, но их потоки должны быть одинаковыми.

    На приведенных ниже снимках экрана показана информация о видео MP4, input1.mp4, и видео MOV, input2.mov , которые имеют одинаковые видеопотоки.

    видеопотока видео выше имеют одинаковый кодек (h364), профиль кодека (основной), формат пикселей (yuv420p) и разрешение (1920×1080). Это свойства потока, которые должны быть одинаковыми для использования демультиплексора concat.

    Если видео содержат аудиопотока , кодек (aac), профиль кодека (LC), частота дискретизации или частота (44 100 Гц), структура каналов (стерео) и формат выборки (fltp) должны совпадать. Битрейт значения не имеет.

    Способ 2. Использование протокола «

    concat»

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

     ffmpeg -i "concat:input1.ts|input2.ts" -c копировать output_protocol.ts
     

    Подобно предыдущему методу, протокол concat позволяет выполнять «потоковое копирование» файлов путем добавления параметра -c copy .

    Если вы используете его для видеоформатов, которые не поддерживаются, в выходном видео будет сохранено только первое входное видео. Например, вы можете попробовать использовать этот метод для объединения двух файлов MP4, использованных в предыдущем примере:

     ffmpeg -i "concat:input1. mp4|input2.mp4" -c копировать output_protocol.mp4
     

    Общая длина выходного видео, output_protocol.mp4 , составляет всего 9 секунд, что совпадает с первым входным видео, input1.mp4.

    Видео заканчивается после первого видео.

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

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

    Объединение видеофайлов с разными кодеками

    Видеофайлы не всегда имеют одинаковые кодеки. Могут быть сценарии, когда видео, которые вы хотите объединить, имеют разные кодеки.

    Например, вы можете объединить видео в формате MP4 (MPEG-4, часть 14) и видео в формате WMV. В этом случае вы не можете использовать предыдущие методы для объединения видеофайлов.

    Использование фильтра concat

    Чтобы использовать фильтр

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

    Запустите команду для объединения видео:

     ffmpeg -i input1.mp4 -i input2.wmv -filter_complex "[0:0][0:1][1:0][1:1]concat=n= 2:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" output.mp4
     

    -filter_complex позволяет использовать фильтр concat с несколькими входами и выходами.

    [0:0][0:1] и [1:0][1:1] указать FFmpeg взять видеопоток №0 и аудиопоток №1 из первого входного видео и второго входного видео соответственно .

    n=2 задает количество сегментов, эквивалентное количеству входных видео.

    v=1 и a=1 задайте количество выходных видео- и аудиопотоков, которые также являются количеством видео- и аудиопотоков в каждом сегменте.

    [outv][outa] — результирующие конкатенированные потоки, которые затем выбираются для выходного видео.

    В отличие от демультиплексора и протокола concat, фильтр concat не позволяет «потоковое копирование» видео. Видео нужно будет перекодировать, поэтому объединение видео займет много времени.

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

    Более простой и быстрой альтернативой является использование Bannerbear Movies API, так как он выполняет все вышеперечисленные (и даже больше) работы с гораздо меньшими усилиями.

    Обрезка и кодирование файлов будут выполняться автоматически для создания одного видео в формате MP4 с желаемым разрешением. Вы можете объединять видеофайлы разных форматов и даже другие медиафайлы, такие как MP3 и PNG, в одном запросе API без ручного масштабирования и преобразования формата.

     переменные данные = {
      "ширина": 800,
      "высота": 500,
      «переход» : «затухание»,
      "soundtrack_url": "https://ffmpeg-bb.s3.ap-southeast-1.amazonaws.com/audio.mp3",
      "входы" : [
        {
          "asset_url": "https://ffmpeg-bb.s3.ap-southeast-1.amazonaws.com/input1.mp4"
        },
        {
          "asset_url": "https://ffmpeg-bb.s3.ap-southeast-1.amazonaws.com/input2.wmv",
          "обрезать_до_длины_в_секундах": 3
        },
        {
          "asset_url": "https://ffmpeg-bb.s3.ap-southeast-1.amazonaws.com/image.png",
          "обрезать_до_длины_в_секундах": 3
        }
      ]
    }
    fetch('https://api.bannerbear.com/v2/movies', {
      метод: «ПОСТ»,
      тело: JSON.stringify(данные),
      заголовки: {
        «Тип контента»: «приложение/json»,
        «Авторизация»: «Носитель ${API_KEY}»
      }
    })
     

    Используя видеофайлы из последнего примера, дополнительный звук в формате MP3 и изображение в формате PNG, вот результат, сгенерированный с использованием API 🔊:

    Ваш браузер не поддерживает HTML-видео.

    Что дальше

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

    Если вы хотите перейти к следующим шагам, вот несколько руководств, которые могут вам помочь:

    • Как извлечь изображения из видео с помощью FFmpeg
    • Как установить пользовательский эскиз для видеофайла с помощью FFmpeg
    • Как добавить субтитры в видеофайл с помощью FFmpeg

    Как объединить/связать два видеоклипа в Premiere?

    Каждый раз, когда я ищу эту проблему в Google, единственные варианты — как связать аудиоклипы с видео или как синхронизировать аудио с видеоклипами.

    Мне нужно объединить/связать/объединить изображение с видеоклипом, чтобы при редактировании одного из них то же самое происходило с другим клипом, как при объединении слоев в Photoshop.

    • видео
    • премьера

    0

    ОБЪЕДИНЕНИЕ ВИДЕОКЛИПОВ

    Для объединения видеоклипов существует так называемая вложенная последовательность.

    Очень мощная техника. При добавлении клипов на временную шкалу вы работаете с так называемой последовательностью (обычно называемой последовательностью 01), перетащите два клипа на временную шкалу и переименуйте последовательность 01, например, в «Моя однодневная поездка на рынок».

    Выберите другой видеоклип и перетащите его на кнопку «Новый элемент». В правом нижнем углу окна проекта. Это создаст ДРУГУЮ последовательность, которую вы можете переименовать как свою «мастер-последовательность» из того, что, вероятно, будет называться «последовательностью 02».

    Теперь вы можете перетаскивать исходный эпизод, как клип, В свой основной эпизод. И тада.

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

    ОБЪЕДИНЕНИЕ АУДИО И ВИДЕО (оригинальный ответ о слиянии аудио и видео)

    Импортируйте свои клипы в проект. Выберите свои видео- и аудиоклипы (чтобы они оба были выбраны) Щелкните правой кнопкой мыши и «Объединить клипы…» Он попросит синхронизировать вход (начало аудио и видео) или выход (конец аудио и видео). Нажмите «ОК», и теперь у вас будет файл слияния ваших видео- и аудиоклипов, которым вы можете управлять как одним клипом.

    Надеюсь, это поможет.

    1

    Я заменил видеоклип композицией после эффектов. затем я добавил картинку в вырезку после эффектов, и она была там в премьере как один клип.

    Я не уверен, что то, о чем вы просите, возможно, но вот несколько идей, которые могут помочь.

    Связывание групп : Вы можете сгруппировать 2 файла вместе Clip > Group.

    Применение эффекта к нескольким видеоклипам : Если вы хотите скопировать эффекты, вы можете выбрать затронутый клип, скопировать эффект на панели предварительного просмотра клипа «Элементы управления эффектами» и просто вставить его в клипы по отдельности или выбрать все клипы и ctrl+V или если ваш исходный клип имеет только один эффект (без ключевого кадра непрозрачности и т.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *