オープンソースについて
最終更新:
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 パケット化、ビットストリーム形式の自動正規化、パラメータセットの補完、マルチチャンネル(複数カメラ/メイン・サブストリーム/マイク)
リソースの限られたデバイス向けに、MQTT とデバイスエージェントを除いた rerinku_core ターゲットのみをビルドすることもできます。
rerinku-cli —— ローカルカメラ探索ツール
ネットワーク内の ONVIF・GB28181 デバイスとローカルの USB カメラを検出し、スナップショット取得、機能の確認、配信の検証を行うコマンドラインツールです。出力は認証情報を含まない安定した機械可読 JSON で、自動化パイプラインや AI エージェントからの利用に適しています。
- リポジトリ:github.com/akarineren/relink-cli
- 言語:Go
- ライセンス:Apache License 2.0
- 機能:デバイス検出、機能プローブ(三状態)、スナップショット、配信検証、PTZ 制御、ONVIF イベント、録画の検索と再生
git clone https://github.com/akarineren/relink-cli
cd rerinku-cli && make build
./build/rerinku-cli discover
非公開のコンポーネント
配信プラットフォームのサーバー —— メディアエンジン、連続録画と再生、クラウド共有、コンソール —— のソースコードは公開していません。
コントリビュート
- 不具合や互換性の問題は Issue でご報告ください。カメラ関連の場合は、機種名・ファームウェアバージョン・
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 をはじめとする多くのプロジェクトの上に成り立っています。メンテナの皆さまに感謝します。