0
我正在使用語音識別來創建應用程序。要檢查通過麥克風進入的音頻電源,我寫了一個如下的方法。AudioQueue上的音頻電源
-(void)checkPower(AudioqueRef)queue{
UInt32 expectedSize= sizeof(AudioQueueLevelMeterState);
AudioQueueGetProperty(queue,
kAudioQueueProperty_CurrentLevelMeter,
audioLevels,
expectedSize);
NSLog(@"average:%f peak:%f",audioLevels.mAveragePower,audioLevels.mPeakPower);
}
我發現有時mAveragePower比mPeakPower, 較大並且當mAveragePower爲1.0,換句話說,averagePower 被視爲最大值,mPeakPower低於1.0。
我認爲這通常是不可能的。 請讓我知道,如果你有任何關於CoreAudio聲功率的信息。
謝謝。
你在檢查AudioQueueGetProperty返回的結果碼(OSStatus)嗎?出錯時,這些值可能沒有意義。 – diciu 2009-12-03 11:20:53
感謝您的建議。我檢查了OSStatus,但它是「noErr」... – Tomoyuki 2009-12-04 09:48:11