Как заменить звук в файле MP4 без перекодирования?


23

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

Кто-то еще в Интернете предложил использовать VirtualDub для замены звуковой дорожки, но он даже не откроет видеофайл. Подмастерье Гик предложил в чате, что я использую ffmpeg, но документация для меня довольно сложна для понимания.

Как я могу сделать это на Windows? Я буду загружать / устанавливать внешние программы, если я должен.

Ответы:


33

Я закончил изучение документации ffmpegи выработал решение:

ffmpeg.exe -i input_video.mp4 -i replacement_audio.m4a -vcodec copy -acodec copy -map 0:0 -map 1:0 output.mp4


7
RTFM снова бьет!
Мартино

Обратите внимание, что при этом не сохраняются все метаданные, такие как 360 равносторонних (я не проверял экстент).
Elaskanator

4

Дополнение к текущему решению: если аудиофайл не соответствует формату видео контейнера, просто избегайте параметра -acodec:

ffmpeg.exe -i input_video.mp4 -i replacement_audio.m4a -vcodec copy -map 0:0 -map 1:0 output.mp4

Теперь только аудио кодируется, чтобы соответствовать контейнеру.


2

Для этого есть несколько бесплатных программ:

и многие другие на videohelp.com


MP4Box кажется очень простым, и я не нашел никакой возможности заменить аудио, но графический интерфейс MKVToolNix прост в понимании и отлично работает!
Витас
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.