Audio File Out CHOP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

※当サイトにはプロモーションリンクが含まれます。

Audio File Out CHOP のオーディオ書き出し機能を示す図

記事更新の通知はXでアナウンス٩(๑❛ᴗ❛๑)
@maru6o6をフォロー

概要 📖 – オーディオチャンネルのファイル書き出し

Audio File Out CHOPは、入力されたオーディオチャンネルを WAV / OGG / MP3 / AIFF ファイルとしてディスクに書き出す CHOPです。Record トグルでセッション中の任意のタイミングで録音開始・停止を切り替え、ライブパフォーマンスやインスタレーションの音声記録に利用します。

主な用途 🎯

  • オーディオ入出力チャンネルのファイル書き出し(WAV / OGG / MP3 / AIFF)
  • ライブパフォーマンスやインスタレーションの音声記録(Record トグルで開始・停止)
  • マイク・ライン入力の長時間レコーディング(Audio Device In CHOP の出力をディスクに保存)
  • 合成オーディオやプロシージャル音響の書き出し(Audio Oscillator など内部生成音源のキャプチャ)
  • ファイル名の自動連番化によるテイク管理(Unique Suffix / N で衝突回避)

データフロー 🔄

入力: オーディオチャンネル CHOP

File Type / Codec / Bit Rate 設定

File パス + Unique Suffix / N

Record トグル ON

ディスクに音声ファイル書き出し

Tips

初心者の方は、以下日本語書籍も手元にあると安心です。

まる。
まる。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!


パラメータ解説 ⚙️

Audio File Out Page 📋

File Type .filetype 🗂️

出力ファイルのコンテナ形式を選択するメニュー

項目 内部名 説明
WAV .wav .wav 形式。Codec パラメータでオーディオコーデックを選択可能
OGG .ogg .ogg 形式。コーデックは Vorbis、ギャップレス再生に対応
MP3 .mp3 .mp3 形式。コーデックは MP3、ギャップレス再生は不可(Vorbis/.ogg が代替推奨)
AIFF .aiff .aiff 形式。コーデックは Uncompressed 16-bit (PCM)

Unique Suffix .uniquesuff 🔢

オンにすると me.fileSuffix がユニークなサフィックスを返すため、File パラメータと組合せてファイル名衝突を自動回避できる

項目 内部名 説明
Unique Suffix .uniquesuff オン: me.fileSuffix が一意なサフィックスになり、File パラメータで参照することで上書きを防止。オフ: me.fileSuffix は N パラメータの値をそのまま返す。

N .n #️⃣

項目 内部名 説明
N .n Unique Suffix オフ時、me.fileSuffix がこの値をそのまま返す。手動で連番管理したい場合に使用。

File .file 📁

出力する音声ファイルのパスとファイル名を指定する。拡張子は File Type と一致させる必要がある

項目 内部名 説明
File .file 保存先のフルパス。me.fileSuffix を埋め込むことでテイクごとの自動連番化が可能(例: take_`me.fileSuffix`.wav)。

Codec .codec 🎚️

WAV または AIFF 出力時の圧縮コーデックを選択するメニュー(AIFF の Big Endian オプションは AIFF 業界標準)

項目 内部名 説明
Uncompressed 16-bit (PCM) .pcm16 非圧縮 16-bit パルス符号変調オーディオ
Uncompressed 24-bit (PCM) .pcm24 非圧縮 24-bit パルス符号変調オーディオ
Uncompressed 32-bit (PCM) .pcm32 非圧縮 32-bit パルス符号変調オーディオ

Bit Rate .bitrate 📈

MP3 出力時のビットレートを選択するメニュー

項目 内部名 説明
96 kb/s .b96 低ビットレート(音声・podcast 向け)
128 kb/s .b128 標準的な MP3 ビットレート
192 kb/s .b192 中音質、楽曲用途に多用
256 kb/s .b256 高音質、配信向け
320 kb/s .b320 MP3 規格最高ビットレート

Record .record ⏺️

オンにすると音声ファイルを開いて録音を開始、オフにするとファイルをクローズして読み書きロックを解放する

項目 内部名 説明
Record .record オン: 音声ファイルを開き録音開始。オフ: ファイルをクローズし read/write lock を解放(他アプリから安全に読み込める状態にする)。

Pause .pause ⏸️

音声ファイルへの録音を一時停止する

項目 内部名 説明
Pause .pause オン: 録音を一時停止(ファイルは開いたまま)。オフ: 録音を再開。

Header Source DAT .headerdat 🏷️

出力ファイルに書き込むヘッダーメタデータを保持する Table DAT のパス。1 列目にキー、2 列目に値を書く

項目 内部名 説明
Header Source DAT .headerdat Table DAT のパスを指定。1 列目=キー、2 列目=値の key-value ペア形式でヘッダーに書き込まれる。サポートされるメタデータの詳細は公式 File Metadata ページを参照。

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: ライブパフォーマンスのマイク入力を録音 🎤

Audio Device In CHOP → Audio File Out CHOP (WAV / PCM 24-bit) → ディスク
  1. Audio Device In CHOP でマイク入力チャンネルを取得
  2. Audio File Out CHOP の File Type を WAV、Codec を Uncompressed 24-bit (PCM) に設定
  3. File パラメータに保存先パスを指定(take_`me.fileSuffix`.wav で自動連番化)
  4. Record トグルをオンにして録音開始、オフでファイルクローズ

Example 2: プロシージャル合成音をディスクに書き出し 🎼

Audio Oscillator CHOP → Math CHOP (ゲイン調整) → Audio File Out CHOP (OGG)
  1. Audio Oscillator CHOP で正弦波などの合成音を生成
  2. Math CHOP の Multiply で出力レベルを調整
  3. Audio File Out CHOP の File Type を OGG に設定(Vorbis 圧縮、ギャップレス再生対応)
  4. Record をオンにしてセッション中の合成音をすべてキャプチャ

Example 3: Header Source DAT でメタデータ付き録音 🏷️

Audio Device In CHOP → Audio File Out CHOP (Header Source DAT 連携)
  1. Table DAT を作成し、1 列目に artist / title / album 等のキー、2 列目に値を入力
  2. Audio File Out CHOP の Header Source DAT パラメータでその DAT を指定
  3. Record オンで録音開始時にヘッダーメタデータがファイルに書き込まれる
  4. 後段のオーディオプレイヤーやライブラリでメタデータが認識される

関連オペレータ 🔗

類似機能OP 🔍

  • Audio Movie CHOP — Movie File In TOP の音声トラックを CHOP として取り出す(ファイル書き出しではなく読み込み側)
  • Audio Stream Out CHOP — ファイルではなくネットワークへ音声をストリーミング送信

組み合わせ推奨OP 🔄

  • Audio Device In CHOP — マイクやライン入力を取得して Audio File Out へ流す上流ソース
  • Audio Oscillator CHOP — 合成音の生成元、書き出し前段に配置
  • Math CHOP — 出力レベル調整・ノーマライズ用の前段処理
  • Filter CHOP — 書き出し前のノイズスムージング
  • Audio Filter CHOP — 周波数領域フィルタを掛けてから書き出す

前処理・後処理CHOP 🎯


Info CHOP情報 📊

Audio File Out CHOPは Info CHOP による詳細情報取得に対応しています。

CHOP固有情報 🎚️

  • start: CHOPインターバルの開始(サンプル単位)
  • length: CHOPのサンプル数
  • sample_rate: フレーム毎秒のサンプルレート
  • num_channels: CHOPのチャンネル数
  • time_slice: タイムスライス有効時は1、無効時は0
  • export_sernum: Export接続の更新回数

汎用オペレータ情報 🔄

  • total_cooks: プロセス開始からのクック回数
  • cook_time: 最後のクック時間(ミリ秒)
  • cook_frame: 最後にクックされたフレーム番号
  • warnings: 警告数
  • errors: エラー数

トラブルシューティング ⚠️

よくある問題と解決策 🔧

❌ Problem: Record をオンにしてもファイルが生成されない
✅ Solution:

  • File パラメータの保存先ディレクトリが存在し、書き込み権限があるか確認
  • 拡張子(.wav / .ogg / .mp3 / .aiff)が File Type と一致しているか確認
  • 別アプリで同じファイルを開いていないか確認(read/write lock 競合)

❌ Problem: 録音した音声がノイズだらけ・歪む
✅ Solution:

  • 前段に Math CHOP を入れて Multiply でレベルを下げ、クリッピング(±1 超え)を回避
  • Sample Rate Match の設定で複数入力 CHOP のサンプルレートを揃える
  • Codec を Uncompressed 24-bit (PCM) 等の高ビット深度に切り替えて量子化ノイズを低減

❌ Problem: ファイル名が上書きされてしまう
✅ Solution:

  • Unique Suffix をオンにし、File パラメータに `me.fileSuffix` を埋め込む
  • Unique Suffix オフ運用なら N パラメータを手動でインクリメントして連番管理
  • 保存先パスにタイムスタンプ(tdu.legalName(absTime.seconds) 等)を組合せる

❌ Problem: Record をオフにしてもファイルが解放されない
✅ Solution:

  • Pause がオンになっていないか確認(Pause オン中は録音停止だがロックは継続する場合あり)
  • 別の Audio File Out CHOP が同じパスを参照していないか確認
  • TouchDesigner プロジェクトを保存・再起動して読み書きロックを強制解放

参考資料 📚

その他 🔗

公式リソース 📖

この記事はLLMと共に内容を執筆、更新しています。
最新バージョンとの項目差異など、情報の不一致を見つけた心優しい方はXもしくはInsta、メールなどよりサイト管理者までご連絡ください😎


まる。

お仕事のご依頼はDM又はメールにて。
━━━━━━━━━━━━━━━━━
Python/Touchdesigner/M5Stackをこよなく愛すフルスタックエンジニア。
専門は生理心理学、趣味はヨガやサウナ、EMS電気風呂などヘルスケア全般。
脳波や筋電、心拍を中心とした生体情報のセンシング&インタラクティブアートづくりがライフワーク。

普段はワントゥーテンという会社で空間演出エンジニアをしています。
リファラル採用お繋ぎできますので、我こそはという尖った方は経歴と希望職種添えてDMください(エンジニア以外、営業職等もOK)。
ご飯行きましょう。

↓日常垢
Instagram:@malmal0v0

まる。をフォローする
その他の記事はこちら
Math Combine POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED Select TOP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Window COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Widget COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

タイトルとURLをコピーしました