- 积分
- 171
- 在线时间
- 91 小时
- 最后登录
- 2021-2-4
- 阅读权限
- 50
- 精华
- 0
- UID
- 695
- 帖子
- 63
- 精华
- 0
- 经验
- 171 点
- 金钱
- 39 ¥
- 注册时间
- 2004-5-28
|
本帖最后由 mogle 于 2015-7-3 18:55 编辑
As of 2007 there is also an experimental ASIO driver for Wine, a Windows compatibility layer for Linux. This wineasio driver uses the JACK sound server as its audio back-end and allows many ASIO-aware applications to run with low latency under WINE.
而Jack呢
“JACK (JACK Audio Connection Kit 的递归缩写)是一个专业级的声音服务(守护进程),它为声音和MIDI数据提供实时的、低延时的连接,有关的程序使用JACK的API。
它是由保罗·戴维斯(Paul Davis)(他凭着这项工作赢得了2004年的开源奖[3])带领的一个开源社区开发。自从2002年初以来一直是Linux下的关键的基础设施和事实上的专业音频软件标准。这个服务是在GNU GPL协议下的开源软件,它的库则采用更宽松的GNU LGPL协议。
JACK 能使用ALSA、PortAudio、CoreAudio、FFADO和OSS作为硬件层的后端。此外, 还有一个虚拟的驱动(当不需要声音输出时是很有用的,例如离线渲染)和一个通过UDP协议的音频驱动(Audio-over-UDP driver)。它可以运行在Linux、 Mac OS X、 Solaris、 Windows、 FreeBSD、 OpenBSD 和 NetBSD上。JACK的API被标准化,并且存在两种可融合的实现:jack1,由简单的C实现并且已经维护了一段时间;至于jack2(原来的jackdmp),由Stéphane Letz领导的用C++重写的实现,jack2在积极开发中,目标是支持多处理器和对其它非Linux操作系统。[4]
JACK为达到足够的低延时的调度要求是目前Linux 2.6 内核的实时操作系统优化的动力[5][6]。Linux 2.6 内核最初的延时表现和老的2.4内核对比是让人失望的。[7]实时操作系统的调整工作已经在众多的对主线内核和一个对2.6.24版本的插入优化的 -rt分支中的调度调整中达到顶峰,最后成为一个CONFIG_PREEMPT_RT(配置优先)补丁。”
所以,大概是这一个上下层关系:
asio--》wine---》jack--》alsa
|
|