Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
想要改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
去年关闭。
Improve this question
我正在做一个教育性的多座项目,我们需要将36个键盘和36个USB声卡连接到一台计算机上。我们正在运行具有3.6.3-030603-通用内核的Ubuntu Linux 12.04。
到目前为止,我们已经设法从36个键盘获取输入,并识别出36个声卡,而没有引起内核 panic (这是在更新内核之前发生的)。我们知道,由于
但是,
所以我的问题是,如果这些声卡甚至没有在这些命令中列出,我该如何访问它们呢?我正在用python编写应用程序,并且有一些库可供选择,但是由于这个原因,恐怕它们总共也将仅限于32个设备。任何指导都是有用的。
谢谢。
从代码及其注释中,我读到两件事:
变量cards_limit是模块参数。我假设在您的安装中,此参数设置为32。如果内核中内置了ALSA支持,则可以在更改此选项的位置构建自定义内核。如果ALSA支持不是内置的,而是作为模块加载的,则可以在模块加载期间设置此参数。为此,您可以更改系统配置( 该限制仅用于限制自动加载的声卡的数量。要克服此限制,可以手动加载负责您的声卡的模块就足够了。内核中没有为手动添加的声卡设置限制。
资料来源:Kernel 2.8 Git
想要改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
去年关闭。
Improve this question
我正在做一个教育性的多座项目,我们需要将36个键盘和36个USB声卡连接到一台计算机上。我们正在运行具有3.6.3-030603-通用内核的Ubuntu Linux 12.04。
到目前为止,我们已经设法从36个键盘获取输入,并识别出36个声卡,而没有引起内核 panic (这是在更新内核之前发生的)。我们知道,由于
$ lsusb | grep "Audio" -c
输出36
,因此已识别出36个声卡。但是,
$ aplay -l
总共列出了32个播放设备(包括“内部”声卡)。另外,$ alsamixer -c 32
表示“无效的卡索引:32”(仅从0到31起作用;总共也为32)。所以我的问题是,如果这些声卡甚至没有在这些命令中列出,我该如何访问它们呢?我正在用python编写应用程序,并且有一些库可供选择,但是由于这个原因,恐怕它们总共也将仅限于32个设备。任何指导都是有用的。
谢谢。
最佳答案
您提出的问题基本上是:由ALSA控制的系统中是否可以有32个以上的声卡?显然,尽管您的USB Controller 知道您所连接的所有声卡,但ALSA系统却不知道。
让我们进入内核源代码来检查这里发生了什么。在/sound/core/sound.c
中,您将找到有关最大声卡问题的更多信息:
39 static int cards_limit = 1;
40
41 MODULE_AUTHOR("Jaroslav Kysela <[email protected]>");
42 MODULE_DESCRIPTION("Advanced Linux Sound Architecture driver for soundcards.");
43 MODULE_LICENSE("GPL");
44 module_param(major, int, 0444);
45 MODULE_PARM_DESC(major, "Major # for sound driver.");
46 module_param(cards_limit, int, 0444);
47 MODULE_PARM_DESC(cards_limit, "Count of auto-loadable soundcards.");
48 MODULE_ALIAS_CHARDEV_MAJOR(CONFIG_SND_MAJOR);
49
50 /* this one holds the actual max. card number currently available.
51 * as default, it's identical with cards_limit option. when more
52 * modules are loaded manually, this limit number increases, too.
53 */
54 int snd_ecards_limit;
55 EXPORT_SYMBOL(snd_ecards_limit);
从代码及其注释中,我读到两件事:
man modprobe.d
)或卸载模块,然后使用选项(man modprobe
)重新加载它。 资料来源:Kernel 2.8 Git
关于python - 我的系统上需要32个以上的USB声卡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14201551/
10-12 21:34