Freigeben über


PCM High Bitdepth-Datenstromdatenbereich

In diesem Beispiel wird eine KSDATARANGE_AUDIO-Struktur verwendet, um den Datenbereich für einen PCM-Datenstrom mit hoher Bitdepth-Auslastung zu beschreiben.

  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;

Die Memberwerte in diesem Beispiel ähneln denen im PCM Multichannel Stream Data Range-Beispiel , mit Ausnahme des Werts, der MaximumBitsPerSample größer als 16 ist. Dieser Wert wird auf die maximale Anzahl gültiger Bits festgelegt, die unterstützt werden. Wenn das Gerät beispielsweise 20 Bits gültiger Audiodaten in 24-Bit-Containern unterstützt, sollte der Wert für MaximumBitsPerSample auf 20 festgelegt werden.