DirectSound 流数据范围
此示例使用 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 值除外。 此值设置为示例容器大小,应为 8 的倍数。 例如,如果设备在 24 位容器中支持 20 位有效音频数据,则应将 MaximumBitsPerSample 的值设置为 24。