2010-05-04 103 views
1

經典的C程序是這樣的:瑣碎Linux聲音回放

int main() { fprintf(stderr, "hello world\n"); } 

經典的OpenGL程序是:

open up a window 
setup ortho view 
draw a colored triangle 

現在,我要做的最基本的事情Linux中的音效。

我想:

1) open up speakers 
2) send a bunch of data, meant to be interpreted at 40Khz, 
3) have pseakers play said data 

沒有MIDI,沒有儀器,...只是播放原始數據

什麼是在C程序要做到這一點最簡單的方法是什麼? [和什麼圖書館;什麼是OpenGL的聲音?]

謝謝!

回答

1

OpenGL的聲音等價物是OpenAL庫。它是跨平臺的,而ALSA是Linux專用的。

1

Linux有兩個聲音API:s:較舊的Open Sound System(OSS)和當前的Advanced Linux Sound Architecture(ALSA)。

ALSA不是因爲非常容易開始而聞名;這可能是因爲smallest "hello world"類型的應用程序會嚇到你。但由於錯誤檢查,它通常很冗長。

您還可以使用默認輸出設備通常映射爲/ dev/dsp的事實,因此您只需將位寫入並將它們播放即可。

0

有一個與OpenGL相對稱的,不出所料,OpenAL