5
A
回答
17
下面的代碼是從Apple's Sample AVRecorder
中提取的......這段代碼從該類的movieFileOutput的連接方法獲取一組連接,獲取每個連接的AVCaptureAudioChannel,並基於此計算分貝功率。我會假設,如果你正在尋找一個輸出「噪音水平」,你將能夠捕捉到類似的信息。如果您正在尋找比此更低的級別,請嘗試HAL(硬件抽象層)框架。
- (void)updateAudioLevels:(NSTimer *)timer
{
NSInteger channelCount = 0;
float decibels = 0.f;
// Sum all of the average power levels and divide by the number of channels
for (AVCaptureConnection *connection in [[self movieFileOutput] connections]) {
for (AVCaptureAudioChannel *audioChannel in [connection audioChannels]) {
decibels += [audioChannel averagePowerLevel];
channelCount += 1;
}
}
decibels /= channelCount;
[[self audioLevelMeter] setFloatValue:(pow(10.f, 0.05f * decibels) * 20.0f)];
}
相關問題
- 1. 如何以編程方式獲取當前的音頻級別?
- 2. 如何檢測當前音頻設備音量
- 3. 輸出聲音到音頻設備
- 4. 獲取當前播放音頻的AVPlayer
- 5. Google Cast:從音頻設備獲取當前播放歌曲
- 6. Java - 獲取當前計算機聲音輸出
- 7. 如何從音頻設備ID獲取音頻設備號?
- 8. 在iPhone上獲取當前系統音量級別
- 9. 「音頻隊列獲取當前時間失敗」:雖然增加耳手機音頻插口的iPhone設備
- 10. 如何獲得當前的音量
- 11. 獲取當前TTS語音的語言
- 12. 節日音頻設備問題。沒有聲音輸出
- 13. 我怎樣才能獲得當前聲音的音量?
- 14. 在java中獲取當前音量輸出
- 15. Swift - 如何從麥克風輸入獲取當前音量(AVAudioPCMBuffer)
- 16. 在C++中錄製時從設備獲取聲音級別
- 17. 在IOS5中獲取當前音量
- 18. 如何在Xamarin中獲取/設置當前音量水平?
- 19. Xcode - OpenAL - 獲取播放聲音的當前時間
- 20. 獲取iOS中當前的鈴聲音量值?
- 21. 獲取聲音的總時間和當前時間?
- 22. 如何獲得Windows音頻播放的當前採樣率?
- 23. 在Android中獲取當前播放音頻的元數據
- 24. Android獲取音頻輸出
- 25. 當音頻用Javascript暫停時發出「流行噪音」聲音
- 26. 如何獲得當前堆棧級別
- 27. 獲取Magento當前頂級類別
- 28. HTML 5音頻當前位置
- 29. 使用C#錄製當前音頻?
- 30. 更改SpeechSynthesizer的音頻輸出設備
該轉換不應該是pow(10.f,0.05f *分貝)嗎?在那裏你不需要額外的時間。閱讀這裏:http://stackoverflow.com/questions/2465328/iphone-sdk-avaudiorecorder-metering-how-to-change-peakpowerforchannel-from-d或更好但http://travisjeffery.com/b/2013/02 /轉換-avfoundations-power-levels-to-logarithmic-and-linear-scale/ – ucangetit 2014-05-02 10:18:40
@ucangetit,我無法智慧地談論關於代碼片段的那一點細節。我只在Apple修改鏈接到示例代碼的情況下複製了代碼。 – 2014-05-02 21:30:06