AudioQueue.CurrentLevelMeterDB 属性

定义

当前级别计量器,每个通道一个,以分贝为单位。

public AudioToolbox.AudioQueueLevelMeterState[] CurrentLevelMeterDB { get; }
member this.CurrentLevelMeterDB : AudioToolbox.AudioQueueLevelMeterState[]

属性值

级别计量数组,每个音频通道一个。

注解

若要使用此属性,请确保在队列中设置 EnableLevelMetering 属性。

CurrentLevelMeter如果要将值规范化为范围零, (最小) 一个 (最大) ,请使用 。

class MyInputQueue : InputAudioQueue {
    public MyQueueInput (AudioStreamBasicDescription desc) : base (desc) 
    {
    	inputQueue.EnableLevelMetering = true;
    }

    protected virtual void OnInputCompleted (IntPtr audioQueueBuffer, 
                                             AudioTimeStamp timeStamp, 
                                             AudioStreamPacketDescription [] packetData)
    {
        var levels = CurrentLevelMeterDB;
        for (int channel = 0; channel < levels.Count; channel.Length)
    	Console.WriteLine ("Channel {0} Average Power: {1} Peak Power: {2}", 
                               channel, levels [channel].AveragePower, levels [channel].PeakPower);
        }
    }
}

适用于