Serwis Edukacyjny Nauczycieli w I-LO w Tarnowie Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy Wałaszek |
©2024 mgr Jerzy Wałaszek
|
SDL_OpenAudio
SPIS TREŚCI |
Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.
Jest to przestarzały sposób otwierania urządzenia dźwiękowego. W nowych programach używaj raczej funkcji SDL_OpenAudioDevice().
int SDL_OpenAudio(SDL_AudioSpec* desired, SDL_AudioSpec* obtained) |
desired | struktura SDL_AudioSpec reprezentująca pożądany format wyjściowy |
obtained | struktura SDL_AudioSpec wypełniana faktycznymi parametrami lub NULL |
Jeśli obtained ma wartość NULL, dane dźwiękowe przekazywane do funkcji wywoływanej zwrotnie na pewno będą w pożądanym formacie i w razie potrzeby zostaną automatycznie skonwertowane na faktyczny sprzętowy format dźwiękowy. Jeśli obtained ma wartość NULL, to struktura wskazywana przez desired będzie odpowiednio modyfikowana.
Funkcja zwraca ujemny kod błędu w przypadku niepowodzenia otwarcia urządzenia dźwiękowego lub niepowodzenia utworzenia wątku dźwiękowego; wywołaj funkcję SDL_GetError(), aby otrzymać więcej informacji na temat błędu.
SDL_AudioSpec want, have; SDL_memset(&want, 0, sizeof(want)); /* lub SDL_zero(want) */ want.freq = 48000; want.format = AUDIO_F32; want.channels = 2; want.samples = 4096; want.callback = MyAudioCallback; /* napisałeś tę funkcję w innym miejscu - szczegóły w opisie SDL_AudioSpec */ if (SDL_OpenAudio(&want, &have) < 0) { SDL_Log("Failed to open audio: %s", SDL_GetError()); } else { if (have.format != want.format) { SDL_Log("We didn't get Float32 audio format."); } SDL_PauseAudio(0); /* start odtwarzania dźwięku. */ SDL_Delay(5000); /* niech funkcja dźwiękowa odtwarza jakiś dźwięk przez 5 sekund. */ SDL_CloseAudio(); } |
Funkcja ta jest mniej więcej odpowiednikiem funkcji:
SDL_OpenAudioDevice(NULL, 0, desired, obtained, SDL_AUDIO_ALLOW_ANY_CHANGE); |
Z dwoma godnymi uwagi wyjątkami:
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2024 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:
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.