Udostępnij przez


Formaty danych audio

Aby określić format danych dla strumienia dźwięku falowego, struktura KSDATAFORMAT jest natychmiast uzupełniana przez strukturę WAVEFORMATEX lub KSDSOUND_BUFFERDESC, a członek Specifier struktury KSDATAFORMAT jest odpowiednio ustawiony na jedną z następujących dwóch wartości:

  • KSDATAFORMAT_SPECIFIER_WAVEFORMATEX

    Wskazuje, że format danych należy do strumienia falowego używanego przez aplikację waveIn lub waveOut. W takim przypadku, jeśli rozmiar formatu struktury KSDATAFORMAT jest wystarczająco duży, specyfikator formatu danych po strukturze KSDATAFORMAT jest strukturą WAVEFORMATEX.

  • KSDATAFORMAT_SPECIFIER_DSOUND

    Wskazuje, że format danych należy do strumienia falowego używanego przez aplikację DirectSound. W tym przypadku specyfikator formatu danych po strukturze KSDATAFORMAT jest strukturą KSDSOUND_BUFFERDESC zawierającą osadzoną strukturę WAVEFORMATEX.

Struktura KSDATAFORMAT_WAVEFORMATEX hermetyzuje zarówno strukturę KSDATAFORMAT, jak i następującą po niej strukturę WAVEFORMATEX. Podobnie struktura KSDATAFORMAT_DSOUND hermetyzuje zarówno strukturę KSDATAFORMAT, jak i następującą po niej strukturę DSOUND_BUFFERDESC.

W przypadku KSDATAFORMAT_WAVEFORMATEX lub KSDATAFORMAT_DSOUND ostatnim elementem w strukturze jest osadzona struktura WAVEFORMATEX; w przypadku KSDATAFORMAT_DSOUND struktura WAVEFORMATEX jest zawarta w osadzonej strukturze DSOUND_BUFFERDESC. W obu przypadkach struktura WAVEFORMATEX może być początkiem struktury WAVEFORMATEXTENSIBLE , w tym przypadku element członkowski wFormatTag waveFORMATEX jest ustawiony na wartość WAVE_FORMAT_EXTENSIBLE. Aby uzyskać więcej informacji, zobacz Rozszerzalne deskryptory Wave-Format.

Aby określić format danych dla strumienia MIDI lub strumienia DirectMusic, struktura KSDATAFORMAT jest wystarczająca; nie jest ona uzupełniana żadnymi dodatkowymi informacjami.

Aby zapoznać się z przykładami formatów danych wave i DirectSound, zobacz Format danych strumienia PCM i Format danych strumienia DirectSound. Aby zapoznać się z przykładami formatów danych MIDI i DirectMusic, zobacz Format danych strumienia MIDI i Format danych strumienia DirectMusic.