получить уровень громкости из необработанных данных, полученных с микрофона в DirectShow

Как я могу получить уровень громкости из необработанных данных, полученных с микрофона в DirectShow?

IMediaSample хранит данные в байтах. И как я могу прочитать эти байты и получить что-то?

-1

Решение

Громкость — это слуховое качество, а не физическая формула. Есть много много определений для этого.

Это также временная ценность. Как следствие, это значение изменяется во времени.

Самая простая реализация, которую я помню несколько лет назад, заключалась в простом выделении максимального значения амплитуды. Но логарифм амплитуды конечно лучше приблизить чувствительность уха гораздо ближе.

Вы также можете учитывать мощность сигнала (сигнал * сигнал … но есть и другие определения, которые учитывают компоненты частотного спектра …).

Это кухонные рецепты. Выбери самый простой.

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

2

Другие решения

Вам необходимо обработать данные, чтобы вычислить громкость из необработанных байтов. Один из методов определен в BS.1770: Алгоритмы для измерения громкости звуковых программ и истинно пикового уровня звука спецификация и описывает алгоритм.

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector