#firewire #command #serialization #deserialize

ta1394-avc-stream-format

1394贸易协会定义的流格式AV/C命令的纯Rust实现

2个不稳定版本

0.2.0 2023年4月18日
0.1.0 2022年7月29日

#989 in 编码


2 crates 中使用

MIT 许可证

115KB
2.5K SLoC

该软件包包含1394贸易协会(1394 TA)定义的协议部分的Rust元素。

协议文档

协议在以下文档中进行了说明

  • AV/C流格式信息规范1.0(2002年5月24日,1394贸易协会,TA文档2001002)
  • AV/C流格式信息规范1.1修订版0.5(2005年4月15日,1394贸易协会,TA文档2004008)- 未发布

1394 TA成立于1994年,并于2015年决定关闭其官方运营。截至2021年,它已被解散,并在年底关闭了网址为http://1394ta.org的网站。

在URL http://1394ta.org/specifications/上,当对缓存日期进行足够关注时,可从Internet Archive服务中获得发布的文档。

使用

将以下行添加到您的Cargo.toml文件中

[dependencies]
ta1394-avc-stream-format = "0.2"

一些文档化的AV/C命令可用

  • ExtendedStreamFormatSingle(规范v1.1中的第“6.2.3 单个子功能”条款)
  • ExtendedStreamFormatList(规范v1.1中的第“6.2.4 列表子功能”条款)

应将这些命令提供给在ta1394-avc-general软件包中提供的Ta1394Avc特质实现,以执行AV/C操作。

许可证

该软件包根据MIT许可证发布。

支持

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

贡献

如果打算进行代码贡献,在使用前,我建议用户和开发者注意以下几点。

众所周知,由多家厂商推广的联盟倾向于发布过度设计的规范和文档,原因有很多;例如,商业或市场的竞争。当代码库越来越大时,包含错误的几率呈指数级增加。仅仅为了满足整个规范和文档,并不是你工作的首选。

关键点在于确实需要新的代码。例如,该存储库包含一些AV/C命令,以满足snd-firewire-ctl-services项目的需求。最好是你有实际的应用程序使用新的代码。

依赖项