开源说明
最近更新:
Rerinku 由多个组件构成。设备侧和工具侧开源,流媒体平台服务端不开源。
这条边界是刻意划的:要写进你固件、跑在你设备上的代码,你必须能看见、能改、能审计;而平台服务端是我们提供的服务,不开放源码。
开源的组件
rerinku-client —— 嵌入式推流 SDK
摄像头厂商对接 Rerinku 平台要集成的就是这一个库。基于 libdatachannel,把已经编码好的帧通过 WHIP/WebRTC 推上线。采集和编码不在它的职责内——那是设备平台(V4L2、硬件编码器)的事。
- 仓库:github.com/akarineren/relink
- 语言:C++,对外提供稳定 C ABI(
<rerinku/rerinku_c.h>) - 许可证:Apache License 2.0
- 能力:WHIP 信令、H.264/H.265/Opus RTP 打包、码流格式自动归一化、参数集回填、多通道(多摄像头 / 主辅码流 / 麦克风)
可以只编译 rerinku_core 目标,去掉 MQTT 和设备代理,适合资源紧张的设备。
rerinku-cli —— 本地摄像头发现工具
命令行工具,扫描局域网里的 ONVIF、GB28181 设备和本机 USB 摄像头,取快照、查能力、验证拉流。输出是稳定的机器可读 JSON 且不含凭据,适合接进自动化流程或交给 AI Agent。
- 仓库:github.com/akarineren/relink-cli
- 语言:Go
- 许可证:Apache License 2.0
- 能力:设备发现、能力探测(三态)、快照、拉流验证、云台控制、ONVIF 事件、录像检索与回放
git clone https://github.com/akarineren/relink-cli
cd rerinku-cli && make build
./build/rerinku-cli discover
不开源的组件
流媒体平台服务端——媒体引擎、连续录像与回放、云端分享、控制台——不提供源码。
参与贡献
- 提交 Issue 报告 bug 或兼容性问题(摄像头相关问题请附上型号、固件版本和
rerinku-cli info <n> -json的输出)。 - 给 rerinku-cli 提 PR 前请先读仓库里的
docs/ARCHITECTURE.md,保持 CLI 与 SDK 的边界(CLI 不得直接依赖internal/协议实现)。 - 新增摄像头兼容性时,请附带
testdata/下的抓包或能力快照,便于回归。
第三方依赖
Rerinku 站在这些项目的肩膀上:libdatachannel、Pion WebRTC、FFmpeg、modernc.org/sqlite、Solid.js、Astro 等。感谢所有维护者。