1

У меня есть четыре файла MP4 с именами "file_1", "file_2", "file_3" и "file_4", и я хочу объединить их в один файл в следующем порядке: file_1, file_2, file_3 и file_4.

file_1 имеет следующие характеристики:

frame width       = 640
frame height      = 480
frame rate        = 29 frames/second
audio sample rate = 44kHz

file_2, file_3 и file_4 каждый имеет следующие характеристики:

frame width       = 640
frame height      = 480
frame rate        = 30 frames/second
audio sample rate = 48kHz

Используя функцию добавления в Avidemux v2.5.4, я объединил file_2 и file_3 в file_2_3, а аудио и видео остались синхронизированными в file_2_3. Затем, снова используя функцию "добавления", я объединил file_2_3 и file_4 в file_2_3_4, а аудио и видео остались синхронизированными в file_2_3_4.

Затем я объединил file_1 с file_2_3_4 в file_1_2_3_4. Однако аудио и видео в file_1_2_3_4 не были синхронизированы. Когда воспроизводится file_1_2_3_4, все нормально в части file_1. Однако, начиная с части file_2, аудио и видео не синхронизируются.

Затем я попробовал обратное. Я слил file_2_3_4 с file_1 в file_2_3_4_1. Когда файл_2_3_4_1 воспроизводится, часть file_2_3_4 в порядке. Тем не менее, аудио и видео не синхронизированы в части file_1.

Итак, я использовал Avidemux, чтобы изменить частоту кадров в файле file_1 до 30 кадров в секунду. Ширина кадра, высота кадра и частота дискретизации звука остались прежними. Я снова использовал Avidemux для слияния file_1 с file_2_3_4 в file_1_2_3_4. Еще раз, начиная с части file_2, аудио и видео не синхронизируются.

Итак, что мне нужно сделать, чтобы убедиться, что аудио и видео синхронизированы по всему file_1_2_3_4? Должен ли я преобразовать частоту дискретизации аудиофайла file_1 в 48 кГц? Какое программное обеспечение я использую для этого? Я слышал о программном инструменте под названием MP4 Joiner. Это поможет?

2 ответа2

1

Очевидно, Avidemux использует частоту кадров и аудио первого файла. Таким образом, если файл 1 имеет частоту 42 кГц, а файл234 имеет частоту 48 кГц, аудио файла file234 будет воспроизводиться слишком медленно, если его не подвергать повторной дискретизации. По мере продвижения видео вы заметите большую дельту.

Если частота кадров второго видео сильно отличается, например, 60 кадров в секунду, вы также заметите, что видео второй части движется в два раза медленнее, поскольку оно все равно будет воспроизводиться, как если бы оно было 30 кадров в секунду (как в первом файле)

0

Вам нужно будет перекодировать файл_1 как 30 кадров в секунду. Вы можете сделать это с помощью x264 или mencoder или одной из очень многих бесплатных программ для кодирования. Вы не можете просто объединить файлы, если они не имеют одинаковую частоту кадров. Вам также нужно будет перекодировать аудио, чтобы получить ту же частоту дискретизации. Я предлагаю использовать sox для изменения формы волны, а затем повторно сжать с любым кодеком, который вы уже используете.

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