【问题标题】:audio power on AudioQueueAudioQueue 上的音频电源
【发布时间】:2009-12-03 11:09:01
【问题描述】:

我现在正在使用语音识别创建一个应用程序。要检查通过麦克风输入的音频功率, 我写了一个方法如下。

-(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 被认为是max,mPeakPower低于1.0。

我认为一般来说这个结果是不可能的。 如果您有任何有关 CoreAudio 声音功率的信息,请告诉我。

谢谢。

【问题讨论】:

  • 您是否正在检查 AudioQueueGetProperty 返回的结果代码(OSStatus)?出错时,这些值可能没有意义。
  • 感谢您的建议。我检查了 OSStatus,但它是“noErr”...

标签: cocoa core-audio


【解决方案1】:

我认为 mPeakPower 表示当前时刻的通道功率和 mAveragePower - 所有记录时间的平均通道功率,如果它是正确的,您的结果可能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-25
    相关资源
    最近更新 更多