Я - первый пользователь ffmpeg, пытающийся смешать видео h.264 .mp4 с отдельным / вторичным звуком .wav, без перекодирования чего-либо на стороне видео. Хотелось бы, чтобы финальное аудио выходило в формате .aac (тот же кодек, что и аудио в файле h.264).

По сути, я просто хочу наложить на видео дополнительную звуковую дорожку (комментарий) эквивалентной длины. Я пытаюсь обойти невозможность Premiere правильно импортировать h.264, отредактировав аудио .wav отдельно и объединив его с исходным файлом, даже не запустив его через Premiere или какой-либо редактор. Эта программа, кажется, лучший способ сделать это быстро.

Я буду делать это в пакетном режиме, поэтому любые предложения о том, как поставить в очередь несколько заданий, будут оценены. Только совет по организации очередей, который я нашел, использовал код Linux.

Если у вас есть время ответить, объясните, что мне 5 лет, пожалуйста. Я опытный пользователь, но совершенно новый для этого ориентированного на командную строку способа работы с контентом. Не уверен , что я делаю что - то правильно.

Также: я использую Windows.

1 ответ1

0

Основная командная строка FFmpeg для вашего необходимого использования:

ffmpeg -i video.mp4 -i audio.wav -map 0 -map 1:a -c:v copy -c:a:0 copy -c:a:1 aac video-new.mp4

-map 0 означает включение всех потоков с первого входа - индекс FFmpeg начинается с нуля. Аналогично, map 1:a средство включает в себя все аудиопотоки со 2-го входа. -map 1 было бы достаточно, поскольку файлы WAV содержат только аудиопотоки.

-c:v copy означает, что любой и все видеопотоки, включенные в вывод, должны быть скопированы, поэтому повторное кодирование не требуется.

-c:a:0 copy означает, что первый аудиопоток в выводе также должен быть скопирован. Порядок выходных потоков здесь определяется порядком аргументов карты. Поскольку -map 0 помещается первым, аудио- и видеопотоки из этого файла будут накапливаться первыми в выходных данных. Таким образом, первый аудиопоток на выходе будет потоком с первого входа, т.е. video.mp4

-c:a:1 aac означает кодирование второго аудиопотока на выходе с помощью (собственного) кодера AAC.


В Windows вы можете использовать интерфейс Avanti GUI для выполнения пакетных операций. Прочитайте ссылку для инструкций по настройке - довольно просто.

Настройки вашего основного окна GUI должны выглядеть так:

После того, как вы выполнили одно задание из главного окна, вы можете загрузить Диспетчер управления заданиями, доступный из раскрывающегося меню при нажатии на значок в верхнем левом углу.

Это должно выглядеть так:

Avanti Job Manager

Для каждой соответствующей видео / аудио пары, которую вы добавляете, обязательно снимите отметку с аудио-файла, чтобы Avanti знал, что это часть той же работы, что и запись видео над ним. Выберите целевой путь (4-й значок слева вверху), чтобы он отличался от папки, содержащей ваши исходные файлы. Avanti назовет выходной файл так же, как и первый вход (видео), так что вас ждет неприятный сюрприз, если вы не позаботитесь об этом.

Это в значительной степени покрывает это.

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