Толик Панков
hex_laden
............ .................. ................

October 2030
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

Толик Панков [userpic]
Linux: замена звука в видео без тяжелого рендеринга

Преамбула


Понадобилось мне видоизменить звук в видео, а само видео не трогать. Долго ебался с этим в Vegas (на винде), но в Linux оказалось все весьма просто, и не надо ждать туеву хучу времени, пока тебе вегас все перерендерит.

Внимание!


Способ подходит не для всех видео (и аудио) форматов, иногда нужно что-нибудь куда-нибудь переконвертить.

Удаление оригинальной звуковой дорожки


ffmpeg -i 1.mp4 -vcodec copy -an bez.mp4

Имя входного файла 1.mp4 и выходного bez.mp4 замените на свои.

На выходе появится bez.mp4, файл с оригинальным видео, но без звука. Работать должно для всех форматов, которые поддерживает ffmpeg.

Добавление измененной звуковой дорожки


ffmpeg -i bez.mp4 -i 2.mp3 -vcodec copy -acodec copy so.mp4

Естественно, замените имена файлов bez.mp4, 2.mp3 и so.mp4 на свои.

Вот тут, кстати, и возникла проблема, которую я описывал в преамбуле. Измененная дорожка была в формате wav, а не mp3, ffmpeg на это внимания не обратил, а вот плеер потом подавился. Пришлось конвертить подкладываемый звуковой файл в mp3.

UPD из комментов


1. ффмпег есть и под винду

2. промежуточное немое видео не нужно

если аудио уже в мп3

ffmpeg -i 1.mp4 -i 2.mp3 -map 0:0 -map 1 -c copy so.mp4

если аудио нужно перекодировать из вав в мп3

ffmpeg -i 1.mp4 -i 2.wav -map 0:0 -map 1 -c:v copy -c:a libmp3lame -b:a 192k so.mp4

если битрейт не указать, будет 128

расширения должны соответствовать содержанию

Это репост с сайта http://tolik-punkoff.com
Оригинал: http://tolik-punkoff.com/2025/11/02/linux-zamena-zvuka-v-video-bez-tyazhelogo-renderinga/

Comments

1. ффмпег есть и под винду

2. промежуточное немое видео не нужно

если аудио уже в мп3

ffmpeg -i 1.mp4 -i 2.mp3 -map 0:0 -map 1 -c copy so.mp4

если аудио нужно перекодировать из вав в мп3

ffmpeg -i 1.mp4 -i 2.wav -map 0:0 -map 1 -c:v copy -c:a libmp3lame -b:a 192k so.mp4

если битрейт не указать, будет 128

расширения должны соответствовать содержанию

ОК, благодарю, потом обновлю пост.

Надо будет попробовать, коли опять понадобится.