В чем разница длительности битрейта и скорости потока в ffmpeg / ffprobe? - PullRequest
0 голосов
/ 09 февраля 2019

Почему ffmpeg / ffprobe дает разные значения битрейта для потока и для файла в целом?

Когда я анализирую mp3-файл с помощью ffprobe, он дает разные битрейты в первой и второй строках.Кто-нибудь знает, в чем разница?

// File 1, there is problem
Duration: 02:05:47.04, start: 0.000000, bitrate: 193 kb/s
Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 192 kb/s

// File 2, no problem
Duration: 02:05:51.05, start: 0.000000, bitrate: 192 kb/s
Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 192 kb/s

(мне нужно получить правильную информацию о файлах, потому что я обрабатываю эти файлы для снятия отпечатков пальцев)

1 Ответ

0 голосов
/ 09 февраля 2019

Если вам нужен фактический битрейт аудиопотока, вам нужно его проанализировать.

ffmpeg -i file -c copy -map 0:a -f null -

Запишите размер аудиопотока в последней строке, например, audio:8624kB и продолжительность настрока над ним, например time=00:03:43.16.Разделите первое на второе, чтобы получить средний битрейт потока.

Если вы хотите условный битрейт, т.е. цель, установленную для кодера, тогда это чтение для потока.

Формат битрейта, т.е. тот, что рядом с start:, является грубым и просто делит размер файла на длительность.Но это включает в себя все потоки и заголовки.Полезно для файла с одним видео + одним звуком, но не для других.

...