Как получить точный уровень децибел с какао?
Мы создаем приложение, которое записывает окружающий звук и предпринимает необходимые действия, если звук пересекает указанный децибел.
Для достижения цели приложения мы используем следующий метод из AudioQueueObject.h
- (void) getAudioLevels: (Float32 *) levels peakLevels: (Float32 *) peakLevels {
UInt32 propertySize = audioFormat.mChannelsPerFrame * sizeof (AudioQueueLevelMeterState);
AudioQueueGetProperty(
self.queueObject,
(AudioQueuePropertyID)kAudioQueueProperty_CurrentLevelMeterDB,
self.audioLevels,
&propertySize);
levels[0] = self.audioLevels[0].mAveragePower;
peakLevels[0] = self.audioLevels[0].mPeakPower;
}
У нас есть следующий набор запросов
Записанный звук показывает значение в децибелах, начиная с -60. Это значение продолжает увеличиваться в тот момент, когда звук становится громче. Максимальное значение, записанное с этим объектом, составляет 0,0000. Пожалуйста, объясните нам, как интерпретировать эти значения.согласно документации, в которой говорится, что значения, которые мы получаем, выражаются в цифровых децибелах, которые необходимо преобразовать в аналоговые, пожалуйста, предложите, если есть какой-либо способ сделать это.
заранее спасибо