Ffmpeg делает звук длиннее при изменении битрейта - PullRequest
0 голосов
/ 17 марта 2020

Я использую ffmpeg для преобразования звука из одного формата в другой и для изменения битрейта звука. Когда я пытаюсь преобразовать c аудио в mp3, используя команду:

ffmpeg -i SomeAudio.aa c - c: mp3 -b: 128k SomeOutputPath.mp3

все работает правильно, и выходной звук имеет ту же длину, что и входной звук (6 минут, 15 секунд).

Однако, когда я пытаюсь преобразовать его в c аудио с использованием аналогичной команды:

ffmpeg -i SomeAudio.aa c - c: aa c -b: 128k SomeOutputPath.aa c

увеличивает продолжительность вывода звука (около 10 минут). Я попытался указать выходную длину, но это по-прежнему делает видео длиннее, оно просто обрезает часть аудио:

ffmpeg -i SomeAudio.aa c - c: aa c -b: 128k -t 00:06:15 SomeOutputPath.aa c

Вот ссылка на скриншот:

Changing aac bitrate

Я подозреваю, что сообщение "Оценка длительности по битрейту, это может быть неточно" (на скриншоте) - это root моей проблемы, но я просто не смог найти какую-либо полезную информация об этом в Интернете.

Большое спасибо за любую помощь заранее:)

1 Ответ

0 голосов
/ 17 марта 2020

Длительность, показанная для необработанного AA C, является приблизительной, поскольку она не содержит информации о продолжительности. Вы можете найти фактическую длительность с помощью:

ffmpeg -i input.aac -f null -

Или более быстрым, «достаточно близким» методом:

ffmpeg -i input.aac -c copy -f null -

Обходной путь заключается в том, чтобы выполнить ремукс до M4A:

ffmpeg -i input.aac -c copy output.m4a
...