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 に設定する必要があります。