2017-08-16 77 views
0

在snd_mixer_open的documentation中,第二個參數int mode的描述是:「打開模式」。但是我找不到有關在同一模塊中使用哪些符號值的更多信息。經過一番搜索之後,我發現在snd_ctl/control模塊中,有象SND_CTL_NONBLOCK和SND_CTL_ASYNC這樣的符號值,還有SND_CTL_READONLY。但是我仍然沒有指出在snd_mixer_open函數中哪些是可以使用的!因爲這些前綴爲'SND_CTL',所以我認爲它們僅用於snd_ctl模塊的功能。Alsa snd_mixer_open()'打開模式'

(什麼我通常試圖實現的,是能夠讀取默認聲卡的主通道的音量。)

+0

還有其他函數原型https://developer.blackberry.com/playbook/native/reference/com.qnx.doc.neutrino.audio/topic/libs/snd_mixer_open.html – EsmaeelE

+0

https://stackoverflow.com/問題/ 21483929/set-mixer-as-default-alsa-api – EsmaeelE

回答

1

alsa-lib/src/mixer.c:68的「模式」的說法被標記源作爲未使用:

int snd_mixer_open(snd_mixer_t **mixerp, int mode ATTRIBUTE_UNUSED) 

並且該函數的來源承載了。所以它看起來像在那裏使用任何int是安全的(我個人只是0)。

+0

將來可能會使用一些模式位。 –