Диапазон данных DirectSound Stream
В этом примере используется структура KSDATARANGE_AUDIO для описания диапазона данных для потока DirectSound.
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_DSOUND);
MaximumChannels = 4; // max number of channels, or -1 for unlimited
MinimumBitsPerSample = 2;
MaximumBitsPerSample = 16; // 16, 24, 32, etc.
MinimumSampleFrequency = 5000;
MaximumSampleFrequency = 48000;
Значения элементов в этом примере аналогичны значениям диапазона данных многоканального потока PCM , за исключением значения MaximumBitsPerSample . Это значение равно размеру контейнера образца и должно быть кратно восьми. Например, если устройство поддерживает 20 бит допустимых звуковых данных в 24-разрядных контейнерах, для параметра MaximumBitsPerSample должно быть задано значение 24.