У меня есть два видеофайла MTS, каждый по 2 минуты. Мне нужно иметь возможность объединять файлы и конвертировать формат в MPEG4. У меня есть подходящая командная строка для преобразования MTS в MP4, но я не знаю, как соединить файлы вместе.
Некоторые статьи в Интернете предлагают использовать команду CAT, например:
cat video1.mts video2.mts > whole_video.mts
Однако это не ' t работает и, согласно FFMPEG, "whole_video.mts" длится всего 2 минуты, а не 4 минуты.
Кто-нибудь знает, как объединить файлы? Является ли FFMPEG лучшей программой для этого? Заранее спасибо.
Все нормально, разобрал. Используя последние версии SVN FFMPEG, x264 и MP4Box (GPAC), вот что я сделал ...
Используйте FFMPEG для преобразования файлов MTS в MP4 как обычно:
ffmpeg -i video1.mts -vcodec libx264 -deinterlace -crf 25 -vpre hq -f mp4 -s hd480 -ab 128k -threads 0 -y 1.mp4
ffmpeg -i video2.mts -vcodec libx264 -deinterlace -crf 25 -vpre hq -f mp4 -s hd480 -ab 128k -threads 0 -y 2.mp4
Используйте MP4Box, чтобы соединить файлы MP4 вместе:
MP4Box -cat 1.mp4 -cat 2.mp4 output.mp4
Это объединяет файлы в «output.mp4», однако, когда я использую «ffmpeg -i output.mp4», он говорит, что продолжительность больше, чем должна быть. Чтобы исправить это, мне пришлось снова использовать FFMPEG:
ffmpeg -i output.mp4 -vcodec copy -y final.mp4
И вуаля! Запрос файла "final.mp4" с помощью FFMPEG показывает правильную продолжительность, и видео воспроизводится нормально.
Надеюсь, это поможет любому, кто сталкивается с той же проблемой.