Compartilhar via


Formatos de dados de áudio

Para especificar o formato de dados para um fluxo de áudio de onda, a estrutura KSDATAFORMAT é seguida imediatamente por uma estrutura WAVEFORMATEX ou KSDSOUND_BUFFERDESC e o membro Especificador de KSDATAFORMAT é definido de acordo com um dos dois valores a seguir:

  • KSDATAFORMAT_SPECIFIER_WAVEFORMATEX

    Indica que o formato de dados pertence a um fluxo de ondas que está sendo usado por um aplicativo waveIn ou waveOut. Nesse caso, se o FormatSize da estrutura KSDATAFORMAT for grande o suficiente, o especificador de formato de dados após a estrutura KSDATAFORMAT será uma estrutura WAVEFORMATEX.

  • KSDATAFORMAT_SPECIFIER_DSOUND

    Indica que o formato de dados pertence a um fluxo de ondas que está sendo usado por um aplicativo DirectSound. Nesse caso, o especificador de formato de dados seguindo a estrutura KSDATAFORMAT é uma estrutura KSDSOUND_BUFFERDESC, que contém uma estrutura WAVEFORMATEX inserida.

A estrutura KSDATAFORMAT_WAVEFORMATEX encapsula uma estrutura KSDATAFORMAT e a estrutura WAVEFORMATEX que a segue. Da mesma forma, a estrutura KSDATAFORMAT_DSOUND encapsula uma estrutura KSDATAFORMAT e a estrutura DSOUND_BUFFERDESC que a segue.

Para KSDATAFORMAT_WAVEFORMATEX ou KSDATAFORMAT_DSOUND, o último item na estrutura é uma estrutura WAVEFORMATEX inserida; no caso de KSDATAFORMAT_DSOUND, a estrutura WAVEFORMATEX está contida na estrutura de DSOUND_BUFFERDESC inserida. Em ambos os casos, a estrutura WAVEFORMATEX pode ser o início de uma estrutura WAVEFORMATEXTENSIBLE , nesse caso, o membro wFormatTag de WAVEFORMATEX é definido como o valor WAVE_FORMAT_EXTENSIBLE. Para obter mais informações, consulte Extensible Wave-Format Descriptors.

Para especificar o formato de dados para um fluxo MIDI ou fluxo DirectMusic, a estrutura KSDATAFORMAT é suficiente; ele não é seguido por nenhuma informação adicional.

Para obter exemplos de formatos de dados wave e DirectSound, consulte Formato de dados de fluxo do PCM e Formato de dados do DirectSound Stream. Para obter exemplos de formatos de dados MIDI e DirectMusic, consulte Midi Stream Data Format e DirectMusic Stream Data Format.