PCM 高位深度流数据范围

此示例使用 KSDATARANGE_AUDIO 结构来描述 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;

此示例中的成员值类似于 PCM 多声道流数据范围示例中的成员值,但 MaximumBitsPerSample 值除外,该值大于 16。 此值设置为支持的最大有效位数。 例如,如果设备在 24 位容器中支持 20 位有效音频数据,则应将 MaximumBitsPerSample 的值设置为 20。