Serwis Edukacyjny
Nauczycieli
w I-LO w Tarnowie

obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

Autor artykułu: mgr Jerzy Wałaszek
Uaktualniono: 31.07.2022

©2022 mgr Jerzy Wałaszek
I LO w Tarnowie

Interfejs SDL2:

SDL_LoadWAV

SPIS TREŚCI

Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.

SDL_LoadWAV

Użyj tej funkcji, aby załadować dane dźwiękowe WAVE z pliku.

Składnia

SDL_AudioSpec* SDL_LoadWAV(const char*    file,
                           SDL_AudioSpec* spec,
                           Uint8**        audio_buf,
                           Uint32*        audio_len)

Parametry funkcji

file nazwa pliku do załadowania.
spec struktura SDL_AudioSpec reprezentująca pożądany format wyjściowy.
audio_buf bufor dźwiękowy.
audio_len długość bufora dźwiękowego w bajtach.

Wartość zwracana

Ta funkcja, jeśli wywołanie się powiodło, zwraca wskaźnik do struktury SDL_AudioSpec wypełnionej formatem danych dźwiękowych źródłowych danych WAVE. Wskaźnik audio_buf jest wypełniany wskaźnikiem do przydzielonego bufora, zawierającego dane dźwiękowe, a audio_len jest wypełniane długością tego bufora w bajtach.

Funkcja zwraca NULL, jeśli pliku WAV nie można otworzyć, używa nieznanego formatu danych lub jest uszkodzony; wywołaj funkcję SDL_GetError(), aby otrzymać więcej informacji na temat błędu.

Gdy aplikacja skończy z danymi zwróconymi w audio_buf, powinna wywołać SDL_FreeWAV(), aby je zwolnić.

Przykładowy kod

SDL_AudioSpec wav_spec;
Uint32 wav_length;
Uint8 *wav_buffer;

/* Załaduj WAV */
if (SDL_LoadWAV("test.wav", &wav_spec, &wav_buffer, &wav_length) == NULL)
{
    fprintf(stderr, "Could not open test.wav: %s\n", SDL_GetError());
}
else
{
    /* Zrób swoje z danymi WAV, a potem... */
    SDL_FreeWAV(wav_buffer);
}

Uwagi

SDL_LoadWAV jest wygodnym makrem, które wywołuje SDL_LoadWAV_RW().

To makro istnieje po to, abyś mógł przekazać nazwę pliku do SDL_LoadWAV_RW() bez potrzeby zaprzątania sobie głowy funkcjami strumienia RWops API.

Powiązane funkcje

Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2022 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.

Informacje dodatkowe.