PHP FFMPEG Как рассчитать размер файла видео по битрейту и длительности до конвертации? - PullRequest
0 голосов
/ 17 апреля 2019

Я использую php-ffmpeg (PHP-API для ffmpeg) для проверки видеофайлов перед их преобразованием. Я получаю всю информацию, которая мне нужна, просто отлично, но я хочу использовать ее для расчета приблизительного размера файла видео после его конвертации, чтобы я мог более эффективно конвертировать видео для качества по сравнению с пространством и т. Д.

Размер файла после преобразования должен быть только приблизительным. До сих пор я пытался умножить длительность на ожидаемый битрейт видео плюс ожидаемый битрейт аудио. Однако, это дает мне размер, намного больший, чем у исходного видеофайла с более высоким битрейтом видео и аудио. Я предполагаю, что есть коэффициент сжатия, который, возможно, придется принимать во внимание для каждого другого видеокодека, но сейчас я просто пытаюсь получить что-то с .mp4 / m4v.

Это то, что я пробовал;

// duration | vid bitrate | aud bitrate
$estimated_converted_size = $duration * ((4992 * 1024) + (128 * 1024));

Результат для видео продолжительностью 24 секунды с битрейтом видео 29302 Кбит / с и размером файла 87,86 МБ оценивается как 121,11 МБ после преобразования в 4992 КБ - явно не правильно!

Я не слишком разбираюсь в технических характеристиках видео, но есть ли способ достаточно точно оценить размер файла после преобразования?

1 Ответ

1 голос
/ 17 апреля 2019

29302kbps - это килобит в секунду

87.86 MB - это мегабайт.

В байте содержится 8 бит.121.11Mb равно 15.13MB (121.11/8)

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