← IndexWork 11 / 36

DJ ソフト連携ツール|DLL フック・Web 配信

Rekordbox DJ Link for PCDJ

Rekordbox のプロセスに専用の DLL を注入して内部の関数を直接フックし、再生中の曲・BPM・再生時間をほぼ遅延なく取り出して、ブラウザや外部のツールへ配信するシステム。

Period
2026.04 – 開発中
Role
設計 / DLL フック(C++) / Web サーバー / UI / 配信 API の設計
Team
個人開発(Seraf())
対応
Rekordbox 7.2 系(7.2.13 / 7.2.14 / 7.2.18)+ Pioneer DJ コントローラー(FLX シリーズなど)
Rekordbox DJ Link for PCDJ
Fig. 01

Overview

DJ の再生情報を配信画面や演出に使おうとすると、ファイルを定期的に見に行く方法ではどうしても遅れが出ます。そこで Rekordbox の内部の関数をフックし、曲が切り替わった瞬間の状態をそのまま取り出す方式にしました。取り出した情報は Web サーバーで統合して表示し、API として外部へ配信します。

照明・映像の制御ソフト Syndocal とも連携し、DJ が実際に再生しているデッキの曲に合わせてショーを進める用途でも使っています。

What I did

  1. 01

    DLL フックで、遅れのない再生情報

    Rekordbox に DLL(rb_hook.dll)を注入し、内部の関数を直接フックすることで、ファイル監視では実現できない遅れのない曲の状態を取得します。

  2. 02

    どのデッキの曲かを、取り違えない

    実際に再生しているデッキの曲だけを対象にし、曲名とアーティストがそろわないものや、古い・食い違う情報は送らずに止める(fail-closed)ようにしています。

  3. 03

    Syndocal との連携

    決めた形式の電文で Syndocal へ曲の開始や同期の情報を送り、MIDI のペダルやループの状態も連動させて、照明・映像のタイムラインを曲に合わせられるようにしました。

Facts

対応バージョン
Rekordbox 7.2.13 / 7.2.14 / 7.2.18
連携
Syndocal
公開
2026 年 5 月(GitHub)

Stack

C++ · JavaScript · Python · HTML / CSS

Links