@9c5s/node-tcnet
v0.10.0
Published
Implements the TC-Supply TCNet protocol used by ShowKontrol and ProDJLink Bridge app from Pioneer
Readme
node-tcnet
TCNetプロトコルのNode.js実装。Pioneer DJ / ShowKontrol / Event Imagineering GroupのTCNet仕様に準拠。
インストール
npm install @9c5s/node-tcnet使い方
import { TCNetClient, TCNetConfiguration, TCNetDataPacketType, TCNetDataPacketMetadata } from "@9c5s/node-tcnet";
async function main() {
const config = new TCNetConfiguration();
config.broadcastInterface = "10GbE"; // ネットワークインターフェース名
const client = new TCNetClient(config);
client.on("broadcast", (packet) => console.log(packet));
client.on("data", (packet) => console.log(packet));
await client.connect();
// メタデータ取得 (layer: 0-based)
const meta = await client.requestData(TCNetDataPacketType.MetaData, 0);
if (meta instanceof TCNetDataPacketMetadata && meta.info) {
console.log(meta.info.trackArtist, meta.info.trackTitle);
}
await client.disconnect();
}
main().catch(console.error);前提条件
以下のいずれかが必要。
- PRO DJ LINK Bridge (Windows / Mac)
- ShowKontrol / Beatkontrol (Mac)
機能
- [x] TCNetネットワーク接続・アダプタ自動検出
- [x] ステータス / タイムスタンプ受信
- [x] メタデータリクエスト (アーティスト名、曲名)
- [x] メトリクスリクエスト (BPM、Speed、Position)
- [x] CUEデータリクエスト
- [x] Beat Grid / Wave Form (Small / Big) リクエスト
- [x] Mixerデータリクエスト
- [x] アートワーク取得 (JPEG)
- [x] TCNASDP認証 (セッション自動維持)
- [x] マルチパケット自動組み立て
- [ ] Time Sync (NTP/PTP相当)
- [ ] Control機能 (レイヤー制御)
ドキュメント
- Getting Started -- 導入ガイド
- API Reference -- APIリファレンス
- PRO DJ LINK Bridge -- Bridge固有の制限
- TCNet Protocol -- プロトコル仕様
- Implementation Status -- 実装状況
関連プロジェクト
- prolink-connect (JS) -- Pro DJ Linkプロトコル直接実装
- dysentery (Java) -- 同上
免責事項
Pioneer DJおよびEvent Imagineering Groupの支援・承認を受けていない。製品名・企業名は各所有者の商標または登録商標。
