这个项目能做什么

moqt-rs是用Rust实现的Sans-I/O且支持no_std的Media over QUIC Transport (MOQT)库。它提供MOQT / LOC / MSF的codec,以及封闭在单个Transport Session内的会话状态机。 主要特点: - Sans-I/O设计,不包含I/O、异步处理及relay功能 - 支持no_std,依赖仅有hashbrown / noflate / nojson三个 - 带缓冲的增量解码器 (MessageDecoder / SubgroupStreamDecoder / FetchStreamDecoder) - FETCH响应的增量压缩编码器 (FetchStreamEncoder) - 支持的规范:MOQT draft-21、LOC draft-04、MSF draft-01 使用方法: - 控制消息的encode/decode:以Type | Length | Message Body形式处理ControlMessage - 增量解码:由于QUIC/WebTransport的帧边界与消息边界不一致,采用push + try_decode模式进行解码 - 会话:Session是不持有I/O的纯状态机。通过new_client / new_server生成,用poll_event()获取事件 - 目录与时间线:MSF的目录文档及媒体/事件时间线与JSON相互转换,支持gzip压缩 作为示例,同捆提供了moqt-publisher、moqt-subscriber、moqt-transport,使用了Tokio、s2n-quic、shiguredo_http3。 还同捆了Agent Skills形式的技能,可安装到AI代理中以帮助理解API和规范。 许可证为Apache License 2.0。