
概要 📖 – テーブルを別機へ送信
Touch Out DATは、入力された DAT のデータをネットワーク越しに別の TouchDesigner へ送信する DATです。送信プロトコルは TCP/IP・UDP・Multi-Cast から選択し、受信側の Touch In DAT とペアで動作します。
主な用途 🎯
- テーブルや文字列データを別の TouchDesigner へネットワーク送信
- 複数台連携で制御情報や設定値を配信
- Streaming (TCP/IP) による確実なデータ転送
- Messaging (UDP) による低遅延な配信
- Multi-Cast による複数受信機への一斉同報
データフロー 🔄
入力: 送信したいテーブル / 文字列 DAT
↓
送信処理(Protocol と Port の設定に従いパケット化)
↓
出力: ネットワーク経由で受信側の Touch In DAT へ配信
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
Touch Out Page 📋
通信プロトコル .protocol 🎛️
Protocol (通信方式) — データをどの方式でネットワーク送信するかを選択します。詳細は公式の Network Protocols を参照してください。
| 項目 | 内部名 | 説明 |
|---|---|---|
| Streaming (TCP/IP) | .streaming |
TCP/IP による確実なストリーミング送信(順序保証・再送あり) |
| Messaging (UDP) | .msging |
UDP による低遅延なメッセージ送信(順序保証なし) |
| Multi-Cast Messaging (UDP) | .multicastmsging |
UDP マルチキャストで複数の受信機へ一斉送信 |
送信先アドレス .addressport 🌐
Network Address .address 🌐
– Network Address (ネットワークアドレス) — マルチキャスト方式では待ち受けるマルチキャストアドレス、UDT 方式ではサーバの IP アドレスを指定します。
Port .port 🔌
– Port (ポート番号) — パケットを送出するポート番号を指定します。受信側と同じ番号に揃えます。
Shared Connection .shared 🔗
– Shared Connection (接続共有) — 同じネットワークプロトコルを使う他のネットワーク系 DAT と同一の接続を共用します。
送信動作の制御 .sendcontrol 📤
Active .active ✅
– Active (送信の有効化) — オンの間はネットワークポートへデータを送信します。
– オフの間は更新が行われず、送信は停止します。
Redundant Sends .redendantsends 🔁
– Redundant Sends (冗長送信回数) — 同じデータを連続して送る最大回数を指定します。
– パケット欠落が起きやすい UDP で、同じデータを複数回送って到達性を高める用途に使います。
Resend Data .resend 🔄
– Resend Data (再送信) — これまで何回送ったかに関わらず、現在のデータを再送します。
実践アイデア 💡
Example 1: 2台間でのテーブル共有 🔗
Table DAT → Touch Out DAT (Streaming TCP/IP) → ネットワーク → Touch In DAT
1 台目で編集した Table DAT の内容を Touch Out DAT で TCP/IP 送信し、2 台目の Touch In DAT で受け取って同期する、最も基本的な機材間データ共有のフローです。
- 送信側で Table DAT を Touch Out DAT の入力に接続
- Protocol を「Streaming (TCP/IP)」に設定し Port を決める
- 受信側の Touch In DAT に同じ Port と送信側 IP を設定
- Active をオンにするとテーブル更新が相手機に反映される
Example 2: 複数機への一斉配信 📡
Text DAT → Touch Out DAT (Multi-Cast UDP) → 複数の Touch In DAT
マルチプロジェクション等で複数台へ同じ制御情報を配る際、Multi-Cast Messaging を使って 1 回の送信で全受信機へ同報する構成です。低遅延が要るライブ演出に向きます。
- Protocol を「Multi-Cast Messaging (UDP)」に設定
- Network Address にマルチキャストアドレスを指定
- 各受信機の Touch In DAT を同じアドレス・Port に揃える
Example 3: UDP で低遅延送信 ⚡
Script DAT → Touch Out DAT (Messaging UDP) → Touch In DAT
毎フレーム変化するパラメータ群を UDP メッセージで送る用途。順序保証はないものの遅延が小さく、欠落しても次フレームで上書きされる種類のデータ送信に適します。
- Protocol を「Messaging (UDP)」に設定
- 欠落対策が必要なら Redundant Sends を 2 以上に設定
関連オペレータ 🔗
類似機能OP 🔍
- OSC Out DAT — OSC メッセージ形式での送信に特化
- UDP Out DAT — 汎用 UDP パケットの送信
組み合わせ推奨OP 🔄
- Touch In DAT — 受信側として必ずペアで使用
- Table DAT — 送信する表形式データの作成元
- Select DAT — 送信したい範囲だけを抽出して前段に配置
前処理・後処理DAT 🎯
- 前処理: Table DAT、Text DAT、Select DAT、Convert DAT
- 後処理: Touch In DAT
Info情報 📊
Touch Out DAT の動作状態は Info DAT や Info CHOP で確認できます。
DAT 固有情報 📋
num_rows: DAT の行数num_cols: DAT の列数type: DAT の型 (table / text)is_table: テーブル形式の場合 1、テキスト形式の場合 0
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
接続状態の確認 📡
接続状態: 送信先との接続が確立されているかの状態送信バイト数: これまでに送出した累計データ量の目安
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: 受信側にデータが届かない
✅ Solution:
- 送信側と受信側の
Port番号が一致しているか確認 Activeがオンになっているか確認- 前段に Table DAT 等が正しく接続されているか確認
❌ Problem: UDP でパケットが欠落する
✅ Solution:
Redundant Sendsを 2 以上にして同じデータを複数回送る- 確実性が必要なら
Protocolを Streaming (TCP/IP) に切り替える - ネットワーク帯域や経路上のファイアウォール設定を確認
❌ Problem: マルチキャストで一部の機材だけ受信できない
✅ Solution:
Network Addressのマルチキャストアドレスが全機材で一致しているか確認- 受信側 Touch In DAT の設定を送信側に揃える
- スイッチ/ルータが IGMP マルチキャストを通す設定か確認
参考資料 📚
その他 🔗
- TouchDesigner Wiki — DAT 概要
- TouchDesigner Wiki — Category:DATs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group
公式リソース 📖
- TouchDesigner公式ドキュメント – Touch Out DAT
- TouchDesigner公式ドキュメント – Touch In DAT
- TouchDesigner公式ドキュメント – Network Protocols

