4

У меня есть 3 mp4 файла:

  • 1.mp4 - есть видео, нет звука
  • 2.mp4 - имеет видео и аудио
  • 3.mp4 - имеет видео и аудио

Я создал файл клипов (clips.txt) для объединения:

file '1.mp4'
file '2.mp4'
file '3.mp4'

Я запускаю следующую командную строку:

ffmpeg -f concat -i "clips.txt" -c:a aac -b:a 160k -y "out.mp4"

В создаваемом файле есть видео, но нет звука, предположительно потому, что в 1.mp4 нет звуковой дорожки.

Если я переставлю clips.txt, чтобы 1.mp4 был не первым, у out.mp4 есть звуковая дорожка.

Есть ли способ заставить ffmpeg использовать аудио? Я предполагаю, что это должно было бы произвести тихую звуковую дорожку для любых немых видео.

Спасибо!

1 ответ1

7

Для любого, кто сталкивается с этим и хочет достичь того же, что и я, я решил это следующим образом:

ffmpeg -i "1.mp4" -f lavfi -i aevalsrc=0 -shortest -y "new_1.mp4"

Что это говорит:

  • Возьмите 1.mp4 (это видео без аудио) (-i "1.mp4")
  • Создайте минимальное требуемое молчание (-f lavfi -i aevalsrc = 0 -shortest)
  • Вывести результат (-y "new_1.mp4")

Отсюда я объединяю, как и раньше, но заменяя «1.mp4» в clips.txt на «new_1.mp4»

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