DirectSound-Streamdatenbereich
In diesem Beispiel wird eine KSDATARANGE_AUDIO-Struktur verwendet, um den Datenbereich für einen DirectSound-Stream 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_DSOUND);
MaximumChannels = 4; // max number of channels, or -1 for unlimited
MinimumBitsPerSample = 2;
MaximumBitsPerSample = 16; // 16, 24, 32, etc.
MinimumSampleFrequency = 5000;
MaximumSampleFrequency = 48000;
Die Memberwerte in diesem Beispiel ähneln denen des PCM-Mehrkanaldatenbereichs , mit Ausnahme des MaximumBitsPerSample-Werts . Dieser Wert wird auf die Größe des Beispielcontainers festgelegt und sollte ein Vielfaches von acht sein. Wenn das Gerät beispielsweise 20 Bits gültiger Audiodaten in 24-Bit-Containern unterstützt, sollte der Wert für MaximumBitsPerSample auf 24 festgelegt werden.