Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MPEG VBR


Pepe ©   (2011-06-11 12:49:00) 

Доброго времени суток, товарищи Гуру. Задался вопросом написания Mp3 плеера, и не могу никак прийти к выводу как расчитать средний битрейт при переменном битрейте (VBR). По всему файлу проходится в поисках заголовков и нахождения в них битрейта, а затем по среднему арифметическому - это не выход. Нужен более оптимизированный вариант, исходя из данных: Продолжительность, Частота дискретизации, Длина Mpeg Потока.
Исходя из логики, т.к Битрейт это есть кол-во килобайт в секунду, пробовал применить обыкновенную формулу:
Bitrate = MpegDataLength / Duration / 1024
При таком подходе выдаёт значения 25,23 - хотя на самом деле их усреднённый битрейт около 170-190.
Помогите пожалуйста разобраться, буду очень признателен =)


Ega23   (2011-06-11 15:14:00) [1]


> Что-то я замкнул


Бывает


> Спасибо


Незачто.


Pepe   (2011-06-11 15:10:00) [2]


> килобайт или килобит?

=) Что-то я замкнул, что скорость в килобайтах измеряется. Поэтому и формулу вывести не мог, нормальную.
Теперь благодаря, вашей поправке я вывел формулу. И всё ОК.
Спасибо
BitRate:= Trunc(FData.MpegDataLength / Duration / 1000 * 8);


Pepe   (2011-06-11 15:05:00) [3]

килобайт или килобит?
да килобит, спасибо что поправили.


Ega23   (2011-06-11 14:08:00) [4]


> это есть кол-во килобайт в секунду

кило байтили кило бит?


Наверх

Титульная страница Поиск, карта сайта Написать письмо