PCM High Bitdepth Stream Data Range
Questo esempio usa una struttura KSDATARANGE_AUDIO per descrivere l'intervallo di dati per un flusso PCM a bitdepth elevato.
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;
I valori dei membri in questo esempio sono simili a quelli dell'esempio di intervallo di dati di flusso multicanale PCM , ad eccezione del MaximumBitsPerSample
valore , maggiore di 16. Questo valore viene impostato sul numero massimo di bit validi supportati. Ad esempio, se il dispositivo supporta 20 bit di dati audio validi in contenitori a 24 bit, il valore per MaximumBitsPerSample
deve essere impostato su 20.