После получения справки из этого поста Как использовать выходные данные для другого действия в одной командной строке?

Сейчас я сталкиваюсь с другой проблемой, с которой сталкивался несколько раз раньше и не знал, как это исправить. сейчас я использую эту командную строку, чтобы объединить файл изображения и mp3 в новый видеофайл и прикрепить к нему водяной знак:

ffmpeg -loop 1 -i image.jpg -i watermark.png -ss 00:08:02.00 -t 137 -i input.mp3 -filter_complex scale=nhd,overlay=W-w-5:H-h-5 -c:v libx264 -c:a aac -shortest -fflags -shortest output.mp4

Поскольку этот видеофайл является только изображением, я хочу использовать -r 1 для изменения частоты кадров, чтобы кодирование проходило быстрее. Тем не менее, в результате у меня больше времени с 1 минутой молчания, и некоторые плееры даже не читают этот файл.

Кто-нибудь знает, как это можно исправить?

1 ответ1

0

Используйте более высокое значение -r 5 или, если вы знаете длительность вывода, в этом случае 137 с, добавьте -t 137 в качестве параметра вывода, удалив самые короткие флаги.

ffmpeg -loop 1 -i image.jpg -i watermark.png -ss 00:08:02.00 -t 137 -i input.mp3 -filter_complex scale=nhd,overlay=W-w-5:H-h-5 -r 1 -c:v libx264 -c:a aac -t 137 output.mp4

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