
概要 📖 – リニアタイムコード出力
LTC Out CHOPは、SMPTE 規格のリニアタイムコード (LTC) をオーディオ信号として出力する CHOPです。出力信号は外部レコーダー・DAW・映像機器の同期入力に直結でき、Frame Rate や Drop Frame、User Data ビットの細かい制御が可能です。
主な用途 🎯
- 映像・音響機器同期のための SMPTE LTC タイムコード生成
- マルチマシン環境でのフレーム精度同期信号の出力
- 外部レコーダーや DAW へのタイムコード送出
- Cue / Cue Pulse による任意フレームからの再生制御
- User Data ビット領域を利用したカスタムメタデータ伝送
データフロー 🔄
入力: タイムコード参照 (CHOP / DAT / Timecode Class) または Frame/Second/Minute/Hour パラメータ
↓
LTC エンコード処理 (Frame Rate / Drop Frame / High FPS Behaviour 設定に従う)
↓
出力: オーディオレートの LTC 信号 (1 channel)
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
LTC Page 📋
Play Mode .playmode 🎛️
LTC を出力する方式を決定するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Sequential | .sequential |
前方向に連続再生するモード |
| Timecode Object/CHOP/DAT | .timecodeop |
CHOP・DAT・Timecode Class オブジェクトを参照して LTC 値を設定するモード |
再生・キュー制御 ▶️
Play .play ▶️
– カウントを進めるか、現在値で停止保持するかを切替
– オフでフリーズ、オンで通常再生
Cue .cue 📍
– オン中は出力を初期値 (Frame / Second / Minute / Hour) に保持
– 任意のキューポイントへの即時ジャンプに使用
Cue Pulse .cuepulse ⚡
– パルスで初期値に瞬時ジャンプ
– 外部トリガに同期したキュー打ち込みに利用
初期タイムコード値 ⏱️
Frame .frame 🎞️
– カウント開始のフレーム値
– Cue / Cue Pulse 時の初期フレーム
Second .second ⏲️
– カウント開始の秒値
– Cue / Cue Pulse 時の初期秒
Minute .minute 🕐
– カウント開始の分値
– Cue / Cue Pulse 時の初期分
Hour .hour 🕛
– カウント開始の時値
– Cue / Cue Pulse 時の初期時
フレームレート設定 🎚️
Frame Rate .framerate 🎚️
– エンコードする 1 秒あたりの完全フレームメッセージ数
– 通常 24〜30 fps の範囲で設定
Drop Frame Numbering .dropframe 🔁
– 30 fps タイムコードを 29.97 fps NTSC 規格に変換
– 毎分の最初の秒のフレーム 0 / 1 をスキップ (10 分の倍数を除く)
High FPS Behaviour .highfpsbehaviour 📈
– 設定 fps が LTC fps の倍数のときのフレーム番号カウント方式
– 設定 fps が LTC fps の倍数のときのみメニューが有効化
High FPS Behaviour 詳細 .highfpsbehaviour_detail 🔢
High FPS Behaviour メニューが取りうる 2 つのモード
| 項目 | 内部名 | 説明 |
|---|---|---|
| Cycle Frames | .cycleframes |
各 FPS サイクル終端まで LTC フレームカウントをループ |
| Duplicate Frames | .duplicateframes |
各 FPS サイクル終端まで個々の LTC フレームカウントを倍数分繰り返し |
外部参照と出力 🔗
Timecode Object / CHOP / DAT .timecodeop 🔗
– LTC 出力値をタイムコード参照で設定
– hour / second / minute / frame チャンネルを持つ CHOP、または最初のセルにタイムコード文字列を持つ DAT、もしくは Timecode Class オブジェクトを参照
Audio Rate .audiorate 🔊
– 出力信号のオーディオサンプリングレート
– 後段の Audio Device Out CHOP 等のレートと整合させる
User Page 🧬
User Data ビット .userdata 🧬
LTC のユーザデータビット領域 (User Bits) に格納する 8 つの値:
- User Data 1:
user1— User Data 1 のビット領域に送る値 - User Data 2:
user2— User Data 2 のビット領域に送る値 - User Data 3:
user3— User Data 3 のビット領域に送る値 - User Data 4:
user4— User Data 4 のビット領域に送る値 - User Data 5:
user5— User Data 5 のビット領域に送る値 - User Data 6:
user6— User Data 6 のビット領域に送る値 - User Data 7:
user7— User Data 7 のビット領域に送る値 - User Data 8:
user8— User Data 8 のビット領域に送る値
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: 外部レコーダーへの LTC 同期信号送出 🎬
LTC Out CHOP (Sequential, 30fps) → Audio Device Out CHOP → 外部レコーダー LTC In
TouchDesigner からマスター LTC を生成し、外部映像レコーダーや DAW のタイムコード入力にオーディオ経由で送る基本構成。Frame Rate を録画機材の設定と一致させ、Audio Rate は後段の Audio Device Out CHOP と揃えます。
- LTC Out CHOP を作成し Play Mode を
Sequentialに設定 - Frame Rate を 30 (または機材に合わせて 24 / 25 / 29.97) に設定
- Audio Device Out CHOP の入力に接続し物理出力チャンネルを割当
- Cue Pulse で 00:00:00:00 に瞬時ジャンプして録画機側で LTC ロックを確認
Example 2: Timecode CHOP 参照によるマスタークロック追従 🕒
Timecode CHOP → LTC Out CHOP (Play Mode = Timecode Object/CHOP/DAT) → Audio Device Out CHOP
別 OP で生成・受信したタイムコードを LTC Out にそのまま流す構成。マルチマシン環境で 1 台のマスタータイムコードを LTC として再エンコードしたい場合に便利です。
hour/minute/second/frameチャンネルを持つ Timecode CHOP を用意- LTC Out CHOP の Play Mode を
Timecode Object/CHOP/DATに切替 - Timecode Object / CHOP / DAT パラメータに参照パスを設定
- 出力を Audio Device Out CHOP 経由で外部機器へ送出
Example 3: Drop Frameで29.97 NTSC同期 📺
LTC Out CHOP (Frame Rate 30, Drop Frame ON) → Audio Device Out CHOP → NTSC 映像機器
NTSC 映像と LTC を整合させたいときの構成。Drop Frame Numbering をオンにすると 29.97 fps NTSC 標準に合わせてフレーム 0 / 1 がスキップされ、長時間録画でも実時間と LTC の乖離を抑えられます。
- Frame Rate を 30 に設定
- Drop Frame Numbering をオンに切替
- 出力を NTSC 機材の LTC 入力に接続
- 10 分以上録画してタイムコードと実時間のズレが解消されているか確認
関連オペレータ 🔗
類似機能OP 🔍
- LTC In CHOP — 外部 LTC 信号を受信して Hour / Minute / Second / Frame に分解
- Timecode CHOP — 汎用タイムコード生成・参照
組み合わせ推奨OP 🔄
- Audio Device Out CHOP — LTC 信号をオーディオ出力デバイスへ物理送出
- Timecode CHOP — Play Mode = Timecode Object/CHOP/DAT で参照するソース
- Constant CHOP — Frame / Second / Minute / Hour 初期値を CHOP 経由で外部制御
- Trigger CHOP — Cue Pulse をパルストリガで叩いてキュー打ち込み
前処理・後処理CHOP 🎯
Info CHOP情報 📊
LTC 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: 外部機器が LTC をロックできない
✅ Solution:
- Frame Rate が受信側機材の設定と一致しているか確認 (24 / 25 / 29.97 / 30 が標準)
- Audio Rate を後段の Audio Device Out CHOP と揃えて整合性を取る
- 30 fps を超える Frame Rate は規格外のため、標準受信機では読めない可能性が高い
❌ Problem: NTSC 映像とタイムコードがずれる
✅ Solution:
Drop Frame Numberingをオンにして 29.97 fps NTSC 規格に変換- Frame Rate を 30 に設定 (Drop Frame は 30 fps ベース)
- 長時間運用でズレが残る場合は Timecode CHOP 経由でマスタークロック参照に切替
❌ Problem: Cue / Cue Pulse が反応しない
✅ Solution:
- Play Mode が
Sequentialになっているか確認 (Timecode 参照モードでは初期値が無視される) - Frame / Second / Minute / Hour に有効な数値が設定されているか確認
Playパラメータがオフのまま停止していないか確認
参考資料 📚
その他 🔗
- TouchDesigner Wiki — CHOP 概要
- TouchDesigner Wiki — Category:CHOPs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

