Как склеить два.mp4 в ffmpeg без перекодирования?
FFmpeg: склейка и соединение файлов формата видео MP4Видеофайлы в контейнере MP4 нельзя соединить с помощью оператора concat. Но можно предварительно преобразовать эти файлы в контейнер, например, MPEG-TS без перекодирования видео и звука:ffmpeg -i vid1.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts vid1.ts
ffmpeg -i vid2.mp4 -acodec copy -vcodec copy -vbsf h264_mp4toannexb -f mpegts vid2.ts
А потом эти файлы уже можно соединить при помощи оператора concat в итоговый файл mp4:ffmpeg -i "concat:vid1.ts|vid2.ts" -vcodec copy -acodec copy out.mp4
Без перекодирования возможно только если файлы одинакового формата - кодек и параметры кодирования должны совпадать.
Вам нужно выделить сперва видеопотоки из обоих файловffmpeg -i input1.mp4 -an -vcodec copy -f m4v input1video.m4v
Затем соединить m4v файлы, не уверен, что простого склеивания хватит, но вполне возможно.
И в конце вам нужно запаковать полученный поток обратно в mp4. Для этого вам потребуется все данные из заголовков файлов. Больше тут:
processors.wiki.ti.com/index.php/Extracting_MPEG-4...