2 个不稳定版本

0.2.0 2023年4月18日
0.1.1 2022年8月5日

#416多媒体

LGPL-3.0-or-later

19KB
387

该库包包括Digi 00x系列协议的实现,旨在为IEEE 1394总线上的音频和音乐单元提供支持。

Digi 00x系列

截至2022年,Digidesign是Avid Technology管理的品牌之一。Digi 002于2002年推出,作为具有音频接口的台式机型号。2003年,推出了Digi 002 Rack作为机架式型号。2007年推出了Digi 003和003 Rack。

上述型号主要支持相同的协议,通过异步事务配置内部功能,以及通过等时通信进行音频数据流。

Digi 001已不在目标范围内,因为它不是连接到IEEE 1394总线的系统。

ALSA firewire-digi00x驱动程序

Linux声音子系统,即ALSA,提供可加载的内核模块(snd-firewire-digi00x)作为单元的驱动程序。驱动程序维护音频帧和MIDI消息的等时数据包流以及通过异步事务的通知机制,因为其他内部功能(如数字信号处理)可以直接由用户空间应用程序操作。

驱动程序允许应用程序通过执行系统调用来读取通知。为此,hitaki库提供了SndDigi00x GObject类,而crate仍然是独立的,以便将读取通知消息的任务委托给应用程序程序。

该crate是对运行时程序进行操作内部功能的补充实现,除了等时数据包流之外。

依赖项

这是依赖crate的列表。

glib和hinawa crate需要一些底层系统库

Linux FireWire子系统的功能通过hinawa crate和库调用以与IEEE 1394总线上的节点进行通信,因此crate是不可移植的。

支持的型号

这是目前支持的型号列表。

  • Digi 002
  • Digi 002 Rack
  • Digi 003
  • Digi 003 Rack
  • Digi 003 Rack+

crate的状态

该模块由 ALSA GObject Introspection 团队snd-firewire-ctl-services 项目开发和维护,目前尚不稳定。其中包含的 Rust 元素可能没有向后兼容性。

许可协议

本模块遵循 GNU Lesser General Public License v3.0 或更高版本,适用于逆向工程条款。

支持

如发现问题,请在 https://github.com/alsa-project/snd-firewire-ctl-services/ 上提交。

免责声明

协议的实现采用逆向工程方式,通过嗅探与目标设备连接的 IEEE 1394 总线,并分析硬件供应商提供的设备与驱动程序之间的通信。由于开发者是在黑盒中工作的,因此该实现可能与您的设备不兼容。

依赖项

~6.5MB
~135K SLoC