Поделиться через


Диапазон данных потока PCM с высокой глубиной разрядности

This example uses a KSDATARANGE_AUDIO structure to describe the data range for a PCM high-bitdepth stream.

  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. Это значение имеет максимальное количество допустимых битов, поддерживаемых. Например, если устройство поддерживает 20 бит допустимых звуковых данных в 24-разрядных контейнерах, значение MaximumBitsPerSample для этого параметра должно иметь значение 20.