
概要 📖 – 舞台照明・LED への DMX512 信号送出
DMX Out CHOPは、入力されたチャンネル値を DMX512 信号としてシリアル・USB・Art-Net・sACN・KiNET 経由で照明・LED デバイスへ送出する CHOPです。Interface (Serial / Enttec USB Pro / Art-Net / sACN / KiNET) の選択、Packet Per Sample / Channel フォーマット切替、Net / Subnet / Universe アドレッシング、Routing Table によるマルチユニバース振り分け、Rate (最大 44Hz) による送出制御を 1 オペレータで行います。
主な用途 🎯
- 舞台照明・ムービングライトのディマー・カラー・パン/チルト制御 (DMX512 プロトコル)
- Art-Net / sACN / KiNET によるネットワーク経由の照明制御 (LAN 上の複数 universe 送出)
- Enttec USB Pro / DMXking 等の USB-DMX インターフェイスを介したシリアル送出
- LED ピクセルマッピング (CHOP のチャンネル値を 0-255 の DMX 値として LED に直接マッピング)
- マルチユニバース構成での Routing Table によるチャンネルから universe への振り分け
データフロー 🔄
入力: 制御値の CHOP チャンネル (0-255 にマッピング済み)
↓
Active トグルで送出開始
↓
Interface 選択 (Serial / Enttec USB Pro / Art-Net / sACN / KiNET)
↓
Format 選択 (Packet Per Sample / Packet Per Channel)
↓
Routing Table で channel → universe 振り分け
↓
Rate (Hz) でフレーム送出
↓
出力: 物理デバイス・ネットワークへの DMX512 信号
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
DMX Page 📋
Active .active 🔌
デバイスへの送出開始切り替え:
- Active トグル: オン: 接続デバイスへの DMX 送出を開始 / オフ: 送出停止
Interface .interface 🔀
デバイスとの接続方式を選択するメニュー
| 項目 | 内部名 | 説明 |
|---|---|---|
| Enttec Generic Serial | .serial |
OS のシリアル API を使ってデータ書き込み (汎用 USB-シリアル DMX アダプタ向け) |
| Enttec USB Pro | .enttecusbpro |
Enttec USB Pro 専用のドライバ経由で接続 |
| Enttec USB Pro Mk2 | .enttecusbpromk2 |
Enttec USB Pro Mk2 専用のドライバ経由で接続 (2 universe 対応) |
| Art-Net | .artnet |
Art-Net プロトコルでネットワーク経由の DMX 送出 |
| sACN | .sacn |
sACN (E1.31) プロトコルでネットワーク経由の DMX 送出 |
| KiNET | .kinet |
Philips Color Kinetics の KiNET プロトコルで送出 |
Format .format 📦
送出パケットのフォーマット選択:
- Packet Per Sample: 1 サンプルにつき 1 パケットを送出 (単一 universe 向け)
- Packet Per Channel: チャンネルごとに別パケット (Routing Table を使ったマルチ universe 構成で使用)
Rate .rate ⏱️
毎秒のデータ送出レート設定:
- Rate (Hz): 1 秒あたりに送出するフレーム数。DMX512 デバイスは仕様上最大 44Hz、これを超えると受信側で取りこぼしが発生するため Rate <= 44 が推奨値
Serial Page 🔌
Serial Port .serialport 🔌
Generic Serial で使用する COM ポートの選択:
- Serial Port (COM): Interface = Generic Serial のときに利用するシリアル (COM) ポートを選択。OS が認識している COM3 等のポートが列挙される
DMXking Port .dmxkingport 🔌
DMXking ハードウェアでの送出ポート選択:
- DMXking Port: DMXking 製ハードウェアの送出先ポートを選択 (Default 等)
Device .device 🎛️
Enttec USB Pro 等の接続済み DMX デバイス選択:
- Device: メニューに列挙された接続済み DMX デバイスから対象を選択
Network Page 🌐
Net (0-127) .net 🔢
Art-Net の net アドレス設定:
- Net (0-127): Interface = Art-Net のときに設定。net は 16 個の連続する subnet (= 256 universe) を束ねた単位。範囲は 0-127。これはネットワーク IP アドレスとは別の Art-Net 内部のアドレス階層
Subnet (0-15) .subnet 🔢
Art-Net の subnet アドレス設定:
- Subnet (0-15): Interface = Art-Net のときに設定。subnet は 16 個の連続する universe を束ねた単位。範囲は 0-15。ネットワークのサブネットマスクとは別物
Universe .universe 🔢
Art-Net の universe アドレス設定:
- Universe: Interface = Art-Net のときに設定。512 ch の単一 DMX フレームを 1 universe と呼ぶ。範囲は 0-15
Multicast .multicast 📡
sACN multicast 送出の有効化:
- Multicast トグル: sACN の multicast 送出を有効化。Net / Subnet / Universe から自動的に IP を構築し、複数 universe を 1 回の送出で複数デバイスへ届ける
Network Address .netaddress 🌐
送信先 IP アドレスの指定:
- Network Address: 受信デバイスの IP アドレスを指定。デフォルトの
255.255.255.255はネットワーク内の全デバイスへ broadcast 送出。Art-Net の Net / Subnet / Universe は受信側と一致が必須
Local Address .localaddress 🌐
multi-NIC 構成での送信元アダプタ IP 選択:
- Local Address: 送信側マシンに複数のネットワークアダプタがある場合、送信元として使用するアダプタの IP アドレスを指定して経路を固定する
Local Port .localport 🔌
送信元ポートのカスタム指定:
- Local Port: 送信元のポート番号を明示指定する稀少ケース用パラメータ。デフォルトの
-1は OS 任せ (自動割当)
Use Custom Port .customport 🛠️
受信側ポートのカスタム指定切替:
- Use Custom Port トグル: オン: 次の Network Port パラメータで受信側ポートを明示指定 / オフ: 規定のポートを使用
Network Port .netport 🔢
受信側ハードウェアのポート番号:
- Network Port: 受信ハードウェアのポート番号を指定。Art-Net の仕様デフォルトは
6454、特殊用途以外は変更不要
Send ArtSync .sendartsync 🔄
ArtSync 同期パケット送出の有効化:
- Send ArtSync トグル: オン: 全 ArtDmx パケットの送出完了を待ってから ArtSync パケットを送出し、複数 universe を一斉同期させる / オフ: 同期しない
ArtSync Timeout .artsynctimeout ⏱️
ArtSync 待機タイムアウト設定:
- ArtSync Timeout (ms): 全 ArtDmx パケットの送出完了を ArtSync が待機する制限時間 (ミリ秒)。タイムアウトに達した場合 ArtSync は中止され、新しい ArtDmx フレームの送出が始まる
CID .cid 🆔
送信元の一意 ID 設定:
- CID: 送信元を識別する一意 ID。sACN では受信側がソース識別に利用する
Source .source 🏷️
送信元の表示名 (情報用):
- Source: ユーザが指定する送信元の名前 (情報目的)。sACN 受信側でのソース表示に使われる
Priority .priority ⭐
複数ソース時の優先度設定:
- Priority: 同 universe に複数ソースが存在する場合の優先度。受信側は priority の高いソースを採用する
KiNET Version .kinetversion 🔀
KiNET プロトコルのバージョン選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| DmxOut (v1) | .v1 |
KiNET v1 の DmxOut パケット形式 |
| PortOut (v2) | .v2 |
KiNET v2 の PortOut パケット形式 (broadcast / 個別ポート指定対応) |
Use Custom KiNET Port .customkinetport 🛠️
KiNET v2 カスタムポート指定の切替:
- Use Custom KiNET Port トグル: オン: 次の KiNET Port パラメータで KiNET v2 用のカスタムポートを指定 / オフ: broadcast ポート (255) を使用
KiNET Port .kinetport 🔢
KiNET v2 用のポート番号設定:
- KiNET Port: KiNET v2 インターフェイスで使用するポート番号 (Use Custom KiNET Port が有効時)
Routing Table .routingtable 📋
Packet Per Channel フォーマット時の universe 振り分けテーブル:
- Routing Table DAT: Format = Packet Per Channel + Interface = Art-Net / sACN のときに利用。docked Table DAT で channel ごとの net / subnet / universe / netaddress を行単位で指定。各カラムは省略可で、省略時は本パラメータ群の値を流用。Routing Table を外すと最初のチャンネルが指定アドレス、以降は連番で割り当てられる (sACN は universe 1 始まり、universe 0 はシステム予約)
Common Page 🔧
Time Slice .timeslice ⏱️
Time Slice モードの強制設定:
- オン: チャンネルを「タイムスライス」モードに強制
- タイムスライス: 前回のクックフレームから現在のクックフレームまでの時間
Scope .scope 🎯
影響を受けるチャンネルの絞り込み:
- Scope 文字列: 影響を受けるチャンネルを指定する文字列
- パターンマッチング:
*や[1-10]等のパターンが使用可能
Sample Rate Match .srselect ⚡
複数の入力 CHOP のサンプルレートが異なる場合の処理方法
| 項目 | 内部名 | 説明 |
|---|---|---|
| Resample At First Input’s Rate | .first |
最初の入力のレートで他をリサンプル |
| Resample At Maximum Rate | .max |
最高サンプルレートでリサンプル |
| Resample At Minimum Rate | .min |
最低サンプルレートでリサンプル |
| Error If Rates Differ | .err |
レート不一致でエラー |
Export Method .exportmethod 📤
CHOP チャンネルをパラメータに接続する方法
| 項目 | 内部名 | 説明 |
|---|---|---|
| DAT Table by Index | .datindex |
DAT テーブルのインデックスでチャンネルとパラメータを対応付け |
| DAT Table by Name | .datname |
DAT テーブルの行名でチャンネルとパラメータを対応付け |
| Channel Name is Path:Parameter | .autoname |
チャンネル名を `path:parameter` 形式で記述し直接対応付け |
Export Root .autoexportroot 🌳
Channel Name is Path:Parameter モード時のパス基点:
- Export Root パス:
autonameモードでチャンネル名のパス部分を相対化する基点 OP のパス
Export Table .exporttable 📋
DAT Table エクスポート方式での参照 DAT:
- Export Table DAT:
datindex/datnameモード時に参照する DAT のパス
Rename from .commonrenamefrom 🔤
リネーム対象チャンネルのパターン:
- Rename from パターン: リネーム対象とするチャンネル名のパターンマッチング文字列
Rename to .commonrenameto 🔁
リネーム後の置換パターン:
- Rename to パターン: Rename from にマッチしたチャンネルの新しい名前パターン (デフォルトはリネームなし)
実践アイデア 💡
Example 1: ムービングライト 1 台を Enttec USB Pro で制御 💡
Constant CHOP (8 ch) → Math CHOP (To Range 0-255) → DMX Out CHOP (Enttec USB Pro)
- Constant CHOP で 8 チャンネル (Dimmer / R / G / B / Pan / Tilt / Zoom / Strobe) を作成
- Math CHOP の To Range を [0, 255] に設定して DMX 値域へマッピング
- DMX Out CHOP の Interface を Enttec USB Pro、Active をオンに設定
- Constant の値を変えるとムービングライトの色とパン/チルトがリアルタイムに反映される
Example 2: Art-Net で複数 universe へマルチユニバース送出 🌐
Pattern CHOP (1024 ch) → Math CHOP (0-255) → DMX Out CHOP (Art-Net + Routing Table)
- Pattern CHOP で 1024 チャンネル (= 2 universe 分) のテストパターンを生成
- Math CHOP で値域を 0-255 に正規化
- DMX Out CHOP の Interface を Art-Net、Format を Packet Per Channel に設定
- docked Table DAT で channel 1-512 を universe 0、513-1024 を universe 1 に振り分け
- ネットワーク上の Art-Net 受信ノードに 2 universe 分の信号が同時送出される
Example 3: オーディオ波形を LED ピクセルマッピング 🎵
Audio Device In CHOP → Audio Spectrum CHOP → Math CHOP → DMX Out CHOP (sACN)
- Audio Device In CHOP でマイク・ライン入力を取得
- Audio Spectrum CHOP で周波数帯域ごとの強度を抽出
- Math CHOP で各帯域を 0-255 にマッピング
- DMX Out CHOP の Interface を sACN、Multicast をオンにして LED コントローラへ送出
- 音楽の周波数成分が LED ストリップの色・明るさにリアルタイムで反映される
関連オペレータ 🔗
類似機能OP 🔍
- OSC Out CHOP — OSC プロトコルでチャンネル値を送出 (照明ではなく汎用制御プロトコル向け)
- Serial CHOP — 汎用シリアル送出 (DMX に限らず任意のシリアルデバイス向け)
- MIDI Out CHOP — MIDI プロトコルで制御値を送出 (シンセ・MIDI コントローラ向け)
組み合わせ推奨OP 🔄
- Constant CHOP — DMX 値の固定セット (シーン作成・初期値) を作る上流ソース
- Math CHOP — 0-1 の制御値を 0-255 の DMX 値域に Range マッピング
- LFO CHOP — 周期的な照明アニメーション (フェード・ストロボ) を生成
- Pattern CHOP — ピクセルマッピング用のチャンネルパターンを生成
- Audio Spectrum CHOP — 音響反応型ライティングのソース信号を生成
前処理・後処理CHOP 🎯
Info CHOP情報 📊
DMX Out CHOPは Info CHOP による詳細情報取得に対応しています。
CHOP固有情報 🎚️
start: CHOPインターバルの開始(サンプル単位)length: CHOPのサンプル数sample_rate: フレーム毎秒のサンプルレートnum_channels: CHOPのチャンネル数time_slice: タイムスライス有効時は1、無効時は0export_sernum: Export接続の更新回数
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間(ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: 受信デバイスが反応しない / ちらつく
✅ Solution:
- Rate を 44Hz 以下に設定 (DMX512 仕様の上限を超えると取りこぼし)
- Active トグルがオンになっているか確認
- Interface 設定が物理デバイスに合っているか確認 (Enttec USB Pro と Generic Serial の取り違え等)
- 前段に Math CHOP を入れて値域が 0-255 範囲内か確認
❌ Problem: Art-Net で受信側が信号を受け取れない
✅ Solution:
- Net / Subnet / Universe の値が受信デバイス側と完全一致しているか確認
- Network Address を受信デバイスの IP もしくは broadcast (255.255.255.255) に設定
- Local Address を multi-NIC 構成で正しい送信元アダプタに固定
- 受信側のファイアウォールが UDP 6454 ポートをブロックしていないか確認
❌ Problem: マルチユニバースで一部の universe しか届かない
✅ Solution:
- Format を Packet Per Channel に切り替え、Routing Table DAT で channel から universe への振り分けを明示
- sACN 使用時は Multicast をオンにして複数 universe を一斉送出
- Send ArtSync をオンにして複数 universe を同期させる
- 前段に Constant CHOP でテスト用既知パターンを送り受信側を切り分ける
❌ Problem: 値が壊れる / 想定外の DMX チャンネルに化ける
✅ Solution:
- 値域が 0-255 (8bit) 整数範囲に収まっているか Math CHOP で確認
- Integer 化が必要な場合は Math CHOP の Integer = Round 等で離散化
- Routing Table の channel 番号が 1 オリジン (sACN は universe 1 始まり) であることを確認
- Format = Packet Per Sample のままマルチ universe を期待していないか確認
参考資料 📚
その他 🔗
- TouchDesigner Wiki — CHOP 概要
- TouchDesigner Wiki — Category:CHOPs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

