2012-02-19 16 views

Odpowiedz

4

Możesz po prostu open("/dev/dsp") i napisz do niego. Uważam, że jest to "rodzima syscall", jak można uzyskać.

+0

Nie jestem pewien, czy/dev/dsp jest dostępny na Macu (domyślnie co najmniej) – NothingMore

+0

Czy możesz dać mi przykład pracy? Nie wiem, jak to zrobić. –

1

Cóż, nie jestem pewien, czy obecne komputery stacjonarne mają jakieś bardziej zaawansowane usługi/bibliotek, które odtwarzać pliki audio, ale jeśli naprawdę chcesz zrobić jakieś wyjście audio niskopoziomowe OS, zacząć szukać here. Może to trochę za niski poziom dla twoich potrzeb.

3

Dotyczy audio: Linux! = Mac, więc odpowiem osobno na oba te pytania.

MacOS wykorzystuje framework core audio dla niskiego poziomu audio. W oparciu o to istnieje kilka interfejsów API wyższego poziomu. Jeśli chcesz po prostu odtworzyć plik dźwiękowy, najprawdopodobniej jest to droga AV Foundation Framework. Here znajduje się przykład do zbudowania prostej aplikacji dla systemu iOS, którą można łatwo przenieść do systemu MacOS.

Dla systemu Linux cała sytuacja jest dość delikatna. Istnieje wiele różnych struktur i bibliotek i bardzo niejasne jest to, co niskie, a które na wysokim poziomie, ponieważ niektóre z nich naśladują pozostałe. Zasadniczo istnieje ALSA i OSS dla dźwięku niskiego poziomu. Obaj są bzdurami. Jack ma na celu stworzenie ram dla profesjonalnego audio, ale nie jest bardzo przenośny (przynajmniej jeśli interesują Cię urządzenia wbudowane). Większość systemów operacyjnych Linux używa obecnie PulseAudio jako swojego serwera audio, który ma również prosty interfejs API do odtwarzania pojedynczego dźwięku i bardzo trudny interfejs API dla plików o niskim poziomie. A potem jest biblioteka Gstreamer, która jest raczej przenośna i ma interfejs API w połowie drogi i jest specjalnie zaprojektowana do odtwarzania plików wideo i strumieni audio, a więc prawdopodobnie do wyjścia na Linuksa.

ja osobiście polecam użyć PortAudio, który jest biblioteką, która zapewnia - jak sama nazwa wskazuje - frameworkiem audio, który jest przenośny w kilku systemach operacyjnych i audio frameworks. PortAudio jest również dobrze zaprojektowany i ma prosty, ale elastyczny interfejs API.

Powiązane problemy