Как я могу использовать инструмент avconv для объединения нескольких .mp4 видео с различными параметрами кодирования в одном контейнере без потери качества?

1 ответ1

1

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

Например, согласование частоты кадров и размеров видео, частоты дискретизации звука и аудиоканалов:

avconv -i input_1.mp4 -s 1920x1080 -r 25 -c:v ffv1 -c:a pcm_s16le -ac 2 -ar 44100 out_1.avi
avconv -i input_2.mp4 -s 1920x1080 -r 25 -c:v ffv1 -c:a pcm_s16le -ac 2 -ar 44100 out_2.avi
avconv -i "concat:out_1.mp4|out_1.mp4" -c copy output.avi

При этом в качестве кодека без потерь используется ffv1 , но любой другой кодек без потерь будет работать нормально (например, huffyuv в AVI или libx264 с -crf 0 в MP4).

Если вам снова нужен "маленький" выходной файл, у вас нет другого выбора, кроме сжатия output.avi с помощью какого-либо кодера с потерями.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .