Intervalo de datos de flujo de bits alto de PCM
En este ejemplo se usa una estructura de KSDATARANGE_AUDIO para describir el intervalo de datos de una secuencia de alto bitdepth de PCM.
DataRange.FormatSize = sizeof(KSDATARANGE_AUDIO);
DataRange.Flags = 0;
DataRange.SampleSize = 0;
DataRange.Reserved = 0;
DataRange.MajorFormat = STATICGUIDOF(KSDATAFORMAT_TYPE_AUDIO);
DataRange.SubFormat = STATICGUIDOF(KSDATAFORMAT_SUBTYPE_PCM);
DataRange.Specifier = STATICGUIDOF(KSDATAFORMAT_SPECIFIER_WAVEFORMATEX);
MaximumChannels = 4; // max number of channels, or -1 for unlimited
MinimumBitsPerSample = 2;
MaximumBitsPerSample = 24; // 24, 32, etc.
MinimumSampleFrequency = 5000;
MaximumSampleFrequency = 48000;
Los valores de miembro de este ejemplo son similares a los del ejemplo intervalo de datos de secuencia multicanal de PCM , con la excepción del MaximumBitsPerSample
valor , que es mayor que 16. Este valor se establece en el número máximo de bits válidos admitidos. Por ejemplo, si el dispositivo admite 20 bits de datos de audio válidos en contenedores de 24 bits, el valor de MaximumBitsPerSample
debe establecerse en 20.