Монтаж видео
Склеить видео в один файл: 4 способа и почему съезжает звук
Два ролика нужно соединить в один, и задача выглядит на минуту. На деле либо программа отказывается их брать, либо файл собирается, но на стыке звук уезжает от картинки, либо второй кусок внезапно показывается в другом размере и с другой яркостью.
Факты сверены с первоисточниками 14 сентября 2026: справки открывали живьём, цены и лимиты смотрели на сайтах сервисов. Список документов с адресами лежит в конце статьи.
Сначала главная развилка: склейка бывает двух видов, и почти все проблемы растут из непонимания, какой именно у вас. Дальше четыре способа от самого быстрого к самому универсальному, потом подробно про звук на стыке и про куски с разными параметрами.
Короткий ответ
Если куски сняты одинаково, их можно сшить без перекодирования за секунды и без единой потери качества. Требование к такому режиму документация ffmpeg формулирует прямо: все файлы должны иметь одинаковые потоки, то есть те же кодеки и ту же временную базу.
Если файлы отличаются кодеком, разрешением или частотой кадров, нужен второй режим: всё приводится к общему формату и пересчитывается, а значит картинка пережимается ещё раз. Звук на стыке едет по той же причине, что описана в документации: временные метки подгоняются глобально, и при разной длине дорожек на границе появляется разрыв.
Два режима склейки, и почему это главное
Когда программа соединяет два видеофайла, она делает одно из двух. Либо переписывает их данные подряд в новый контейнер, не трогая картинку. Либо распаковывает оба, приводит к общему виду и запаковывает заново. Это принципиально разные операции с разной ценой.
| Без перекодирования | С перекодированием | |
|---|---|---|
| Скорость | секунды, ограничена диском | минуты и часы |
| Качество | не меняется вообще | падает, это второе сжатие |
| Требования к файлам | должны совпадать потоки | любые |
| Переходы на стыке | невозможны | возможны |
| Типичный случай | куски с одной камеры | сборка из разных источников |
Отсюда первый практический шаг, который экономит больше всего времени: посмотреть параметры кусков до того, как что-то запускать. Совпадают, берите быстрый путь. Не совпадают, даже не пробуйте, программа всё равно откажет или соберёт файл с браком.
Способ 1: склейка без перекодирования
В ffmpeg этот режим называется concat и работает через текстовый список файлов: вы перечисляете куски, программа читает их подряд и отдаёт один файл. Документация описывает его как виртуальную склейку: пакеты идут так, будто изначально лежали в одном файле.
Все файлы должны иметь одинаковые потоки: те же кодеки, ту же временную базу и так далее.
Требование звучит строго, но на практике оно выполняется само собой в самом частом случае: куски сняты одной камерой подряд, в одном режиме. Именно так выглядят записи с телефона, с экшн-камеры и с регистратора, разрезанные по объёму файла.
Что делать, если один кусок выбивается
Привести его к параметрам остальных отдельным проходом, а потом склеивать быстрым способом. Это выгоднее, чем пережимать весь материал: пострадает один кусок из десяти, а не все десять.
Способ 2: склейка с перекодированием
Второй режим ничего не требует от исходников: он распаковывает все потоки, приводит к общему разрешению, частоте кадров и параметрам звука и кодирует заново. В ffmpeg эту работу делает фильтр concat, в отличие от одноимённого режима чтения списка.
Цена известна: время и качество. Поэтому важно задать качество осознанно, а не оставить настройку по умолчанию. Шкалы, рабочие значения CRF и правило «плюс шесть режет вес вдвое» разобраны в статье про сжатие видео.
Способ 3: обычный видеоредактор
Самый привычный путь: куски кладутся на таймлайн подряд и экспортируются одним файлом. Редактор сам приводит всё к параметрам проекта, поэтому проблема несовпадения решается автоматически, но и перекодирование происходит всегда.
Главное преимущество тут не в склейке, а в контроле: видно стыки, слышно звук, можно подрезать кадры и поправить громкость. Если ролик хоть немного монтируется, а не просто соединяется, этот путь правильный.
Из бесплатных вариантов, которые открываются из России: Clipchamp работает прямо в браузере, DaVinci Resolve ставится на компьютер и не помечает экспорт водяным знаком.
Способ 4: онлайн-сервисы и их цена
Запрос про склейку видео онлайн собирает тысячи показов в месяц, и сайтов под него десятки. Внутри у них всё тот же второй режим: файлы приводятся к общему формату и пересобираются.
Что вы платите сверх этого: загрузка файла на чужой сервер, потолок размера на бесплатном тарифе, ожидание в очереди, часто водяной знак и всегда лишний проход сжатия. Для двух коротких роликов приемлемо. Для длинного материала это худший из четырёх способов.
Почему на стыке съезжает звук
Самая частая жалоба после склейки, и у неё есть точное объяснение в документации. При соединении временные метки файлов подгоняются так, чтобы первый файл начинался с нуля, а каждый следующий начинался там, где кончился предыдущий. Подгонка делается глобально, и если потоки внутри файла не одинаковой длины, на стыке образуется разрыв.
На практике это выглядит так: видеодорожка куска кончается на последнем кадре, а звуковая тянется ещё на десятки миллисекунд. Следующий кусок стартует по общей метке, и звук оказывается сдвинут. На одном стыке это незаметно, на десяти набегает полсекунды.
Как чинить
Три рабочих способа. Привести все куски к одному формату с пересчётом, тогда длины дорожек выравниваются. Резать куски по границам кадров, а не по случайным точкам. Или собирать в редакторе, где звук и картинка лежат на таймлайне и стык видно глазами.
Если сдвиг не на стыке, а растёт по ходу ролика, причина другая и лечится иначе: это переменная частота кадров, и про неё есть отдельный разбор в статье про отставание звука от видео.
Если куски сняты по-разному
Разные параметры это не повод отказываться от склейки, это повод выполнить подготовку. Порядок такой: определить целевые параметры, привести к ним выпадающие куски, потом соединять.
| Что отличается | Чем грозит | Как привести |
|---|---|---|
| Частота кадров | сдвиг звука на стыке, рывки внутри куска | пересчитать к частоте большинства кусков |
| Разрешение | скачок размера картинки на стыке | привести к общему, выпадающий вписать с полями |
| Кодек | быстрый режим недоступен | перекодировать выпадающий кусок |
| Частота дискретизации звука | щелчки и сдвиг на стыке | привести все дорожки к одной частоте |
| Переменная частота кадров с телефона | расхождение растёт внутри куска | пересчитать в постоянную частоту до монтажа |
Переходы на стыке: нужны ли они
Короткий ответ: обычно нет. Прямая склейка это нормальный язык монтажа, а плавное растворение читается как смена времени или места. Ролик, где каждый стык залит переходом, выглядит любительски.
Техническая сторона тоже важна. Переход это смешивание двух кусков на отрезке, то есть новые кадры, которых не было ни в одном исходнике. В ffmpeg за это отвечает фильтр xfade. Как только появляется переход, быстрый режим склейки исключён полностью.
Правильный порядок работы
Соберём всё в одну последовательность, чтобы не возвращаться к началу на последнем шаге.
Сначала смотрим параметры всех кусков: кодек, разрешение, частота кадров, частота звука. Потом решаем, какой режим доступен. Приводим выпадающие куски к общему виду, если он не доступен. Склеиваем. Проверяем именно стыки, а не начало файла. И только после этого делаем всё остальное: цвет, звук, титры, экспорт под площадку.
Если в конце нужно уложиться в лимит отправки, вес считают в последнюю очередь и из готового файла, а не подбирают качество на каждом куске. Про расчёт под лимит есть отдельная статья.
Определитель: что видно и что делать
| Что видно | Почему так | Что делать |
|---|---|---|
| Программа отказывается соединять файлы | потоки не совпадают, быстрый режим недоступен | приведи куски к одному формату или собирай с перекодированием |
| На стыке звук ушёл вперёд или назад | дорожки внутри куска разной длины, метки подогнаны глобально | пересчитай куски к общему формату или собери в редакторе |
| Второй кусок показывается меньше или с полями | разное разрешение кусков | приведи всё к целевому разрешению до склейки |
| Сдвиг звука растёт внутри куска, а не на стыке | исходник с телефона снят с переменной частотой кадров | пересчитай в постоянную частоту до монтажа |
| На стыке щелчок в звуке | разная частота дискретизации или обрыв по середине волны | приведи звук к одной частоте и делай короткое затухание на стыке |
| Файл собрался, но не играет на телевизоре | склейка сохранила исходный кодек, например HEVC | перекодируй итог в H.264 |
Памятка
Порядок, при котором склейка занимает минуту, а не вечер правок на стыках.
Частые вопросы
Как склеить два видео в один файл?
Двумя разными способами, и выбор зависит от файлов. Если куски сняты одной камерой в одних настройках, их можно соединить без перекодирования за секунды и без потери качества. Если файлы разные по кодеку, разрешению или частоте кадров, придётся пересчитать всё в один формат, а значит пережать картинку.
Можно ли склеить видео без потери качества?
Да, если у всех кусков совпадают потоки. Документация ffmpeg по режиму склейки формулирует требование прямо: все файлы должны иметь одинаковые потоки, то есть те же кодеки и ту же временную базу. При совпадении файлы просто сшиваются по данным, и картинка не трогается вообще. При несовпадении режим недоступен.
Почему после склейки звук съезжает на стыке?
Чаще всего из-за разной длины дорожек внутри файла. Документация ffmpeg предупреждает: временные метки подгоняются глобально, и если потоки не совпадают по длине, на стыке появляются разрывы. Видеодорожка кончилась на кадре, звуковая тянется ещё несколько миллисекунд, и следующий кусок начинается со сдвигом, который копится дальше.
Что делать, если куски сняты с разной частотой кадров?
Привести их к одной частоте до склейки, а не после. Иначе программа либо откажется соединять, либо сделает это со сдвигом, который придётся править на каждом стыке. Приводить лучше к той частоте, что у большинства кусков, а не к максимальной: лишние кадры всё равно будут дорисованы повторами.
Как соединить видео с телефона, они не склеиваются?
Скорее всего, дело в переменной частоте кадров: телефоны пишут не ровно 30 кадров в секунду, а плавающую величину. Такой файл нужно пересчитать в постоянную частоту до монтажа. Если этого не сделать, звук поедет не на стыке, а внутри самих кусков, и расхождение будет расти к концу ролика.
Онлайн-сервисы для склейки безопасны?
Файл уезжает на чужой сервер, и это главный минус. Дополнительно на бесплатных тарифах стоят потолок размера, очередь, водяной знак на результате и второй проход перекодирования, который съедает качество. Для двух коротких роликов это терпимо, для часа материала быстрее и чище сделать локально.
Нужно ли ставить переход между склеенными кусками?
В большинстве случаев нет. Прямая склейка выглядит естественнее, а плавное растворение уместно там, где меняется время или место действия. Техническая деталь: любой переход требует пересчёта кадров на стыке, то есть перекодирования, поэтому склейка с переходами уже не может быть быстрой и без потерь.
Как склеить видео разного разрешения?
Выбрать целевое разрешение и привести к нему все куски до соединения. Поднимать маленький кусок до большого разрешения бессмысленно: деталей не прибавится, зато файл вырастет. Разумнее опустить все куски до наименьшего общего, если разница невелика, а сильно выпадающий кусок вписать в кадр с полями или размытым фоном.
Сколько кусков можно склеить за раз?
Технически сколько угодно: режим без перекодирования читает список файлов и сшивает их подряд. Ограничение практическое: чем больше кусков, тем выше шанс, что один из них отличается по параметрам и всё сломает именно на нём. Поэтому длинные сборки делают партиями и проверяют стыки по ходу.
Почему склеенный файл не открывается на телевизоре?
Потому что склейка сохранила исходный кодек, а телевизор его не понимает. Частый случай: куски сняты телефоном в HEVC, соединены без перекодирования, и итог унаследовал тот же кодек. Лечится перекодированием в H.264, который открывается практически везде ценой примерно вдвое большего размера файла.
Источники
Всё, на что опирается разбор, с датой, когда документ открывали. Сервисы меняют цены и правила молча, поэтому дата тут важнее ссылки: если она старая, цифру стоит перепроверить по первоисточнику.
- Раздел concat: виртуальная склейка списком файлов
Дословно: все файлы должны иметь одинаковые потоки (те же кодеки, ту же временную базу и так далее). Там же: временные метки подгоняются глобально, и это может дать разрывы, если потоки различаются по длине.
- Фильтры concat и xfade
Фильтр concat соединяет потоки с перекодированием и работает с файлами разных параметров, xfade делает переход между двумя видеопотоками.
- Рекомендуемые настройки загрузки видео
Перечислены обычные частоты кадров 24, 25, 30 и высокие 48, 50, 60, а также рекомендованные битрейты: 8 Мбит/с для 1080p на стандартной частоте и 12 Мбит/с на высокой.