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_GetNumAudioDevices
SPIS TREŚCI |
Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.
Użyj tej funkcji, aby dodać otrzymać liczbę wbudowanych urządzeń dźwiękowych.
int SDL_GetNumAudioDevices(int iscapture) |
iscapture | zero dla urządzeń odtwarzających, różne od zera dla nagrywających. |
int i, count = SDL_GetNumAudioDevices(0); for (i = 0; i < count; ++i) { printf("Audio device %d: %s\n", i, SDL_GetAudioDeviceName(i, 0)); } |
Zwróć uwagę, że nagrywanie dźwięku nie jest jeszcze zaimplementowane w SDL 2.0.4, zatem parametr iscapture jest dla przyszłych rozszerzeń i na razie powinien zawsze mieć wartość 0.
Funkcja zwróci -1, jeśli nie można określić jawnej listy urządzeń. Zwrócenie wartości -1 nie jest błędem. Na przykład, jeśli SDL zostało ustawione do komunikacji ze zdalnym serwerem audio, nie może umieścić na liście wszystkich serwerów internetowych, lecz wciąż umożliwia określenie specyficznego hosta w SDL_OpenAudioDevice().
W wielu typowych przypadkach, gdy funkcja zwraca wartość mniejszą od zera, wciąż możliwe jest otwarcie z sukcesem standardowego urządzenia (NULL jako pierwszy argument funkcji SDL_OpenAudioDevice()).
Funkcja ta może wyzwolić ponowne, pełne rozpoznawanie dostępnego sprzętu. Nie powinno się jej wywoływać w każdym obiegu pętli, lecz raczej jeden raz przed wejściem do pętli:
// Nie rób tego: for (int i = 0; i < SDL_GetNumAudioDevices(0); i++) // lecz to: const int count = SDL_GetNumAudioDevices(0); for (int i = 0; i < count; ++i) { /* zrób coś tutaj. */ } |
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.