다음을 통해 공유


AudioQueue.CurrentLevelMeterDB 속성

정의

현재 수준 미터로, 채널당 1개(데시벨)입니다.

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

속성 값

오디오 채널당 하나씩 수준 미터의 배열입니다.

설명

이 속성을 사용하려면 큐에서 EnableLevelMetering 속성을 설정해야 합니다.

CurrentLevelMeter 값을 0(최소)에서 1(최댓값)으로 정규화하려는 경우 를 사용합니다.

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);
        }
    }
}

적용 대상