![如何提高 ALSA 性能(或应用低延迟)以适应实时 Linux?](https://linux22.com/image/1596673/%E5%A6%82%E4%BD%95%E6%8F%90%E9%AB%98%20ALSA%20%E6%80%A7%E8%83%BD%EF%BC%88%E6%88%96%E5%BA%94%E7%94%A8%E4%BD%8E%E5%BB%B6%E8%BF%9F%EF%BC%89%E4%BB%A5%E9%80%82%E5%BA%94%E5%AE%9E%E6%97%B6%20Linux%EF%BC%9F.png)
ALSA 项目主页包含“低延迟指南”页面。链接如下。
https://alsa-project.org/wiki/Low_latency_howto
不幸的是,这太旧了,因为这是为 Linux 内核 2.6 编写的。
我实际上正在使用“Linux kernel 4.9”开发“Debian 9”。
我尝试为内核 4.9 应用实时补丁,并且成功了。然后,按照“低延迟操作方法”页面的说明一步一步设置内核配置。我没有应用页面指向的任何内核选项,因为它们不存在。
我使用实时补丁制作了内核并且它是完整的。
我按照“系统调整”一章的说明调整了一些设置。
- ALSA 不从源代码构建,因为它已经包含内核。
- 我向 PAM (/etc/security/limits.con) 添加了一些设置。
- 一些使用音频的用户添加到音频组。
最后,我到达了“线程优先级”页面。但是,尽管执行了“ps -e”,我还是找不到“IRQ 线程”和“hrtimer 线程”;也就是说,“softirq-timer”和“softirq-hrtimer”不存在。所以我无法完成线程优先级的应用。
我的问题是,
在新 Linux 上应优先考虑哪些线程以将低延迟应用于 ALSA;例如内核 4.9。否则,如果有人知道其他更好的解决方案,请告诉我。
谢谢你,