Compartilhar via


Intervalo de dados de fluxo de bitdepth alto do PCM

Este exemplo usa uma estrutura KSDATARANGE_AUDIO para descrever o intervalo de dados de um fluxo de bitdepth alto do 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;

Os valores de membro neste exemplo são semelhantes aos do exemplo intervalo de dados de fluxo multicanal pcm , com exceção do MaximumBitsPerSample valor , que é maior que 16. Esse valor é definido como o número máximo de bits válidos com suporte. Por exemplo, se o dispositivo der suporte a 20 bits de dados de áudio válidos em contêineres de 24 bits, o valor de deverá ser definido como MaximumBitsPerSample 20.