TouchDesigner 音樂視覺化教學:Audio Reactive 三種聲音驅動視覺|IVD487 W06

想讓畫面跟著音樂跳動?這篇整理 TouchDesigner 做 audio reactive 的完整脈絡:先搞懂聲音怎麼進 TD(Audio File In/Audio Device Out/Audio Movie),再用三種方式把音樂轉成信號——Audio Analysis 抓能量與節拍、Audio Spectrum + CHOP to TOP 做頻譜圖、Analyze 的 rms power 取整體能量。附節點對照表、方法對照表與章節時間戳,上完課回來掃一遍就能接回流程。

Apr 20, 2026
🧰 TouchDesigner 工具庫 | Luxmin Institute on Patreon
我們把接案與展場現場累積下來的 TouchDesigner 元件、專案檔與製作系統,整理發佈在 Patreon,部分工具與 Demo 免費開放下載。
https://www.patreon.com/cw/LuxminInstitute
⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑

TouchDesigner 音樂視覺化教學:Audio Reactive 三種聲音驅動視覺

上一週我們用 LFO (CHOP) 這類節點生成信號,去驅動即時 Motion Graphic。這一週把「驅動來源」換掉:改用聲音當前端訊號,畫面就會跟著音樂呼吸——這就是 audio reactive(音樂視覺化)。
關鍵觀念先講:後半段的邏輯跟上週幾乎一樣,都是「用數值去控制影像」。差別只在於,前面的訊號不再是 LFO,而是從音樂裡分析出來的能量、節拍或頻譜。搞懂「聲音怎麼進來」和「怎麼把音樂轉成信號」這兩件事,這一整類玩法就打開了。這篇是重點整理,上完課回來掃一遍就能把流程接回來。
讀完這篇你會知道:
  • AV 的四種類型,以及 TouchDesigner 擅長的即時 audio reaction
  • 聲音怎麼進 TD、怎麼發聲、怎麼帶著聲音一起匯出
  • Audio Band EQAudio Filter 差在哪
  • 三種把音樂轉成信號的方式:Analysis/Spectrum/rms
  • 頻譜圖上色、拖尾殘影、glitch 位移怎麼做
Video preview

一、AV 的類型光譜:從傳統 VJ 到 Live AV

只要有音樂搭配視覺,廣義上都算 audio visual。用兩個軸把它分清楚:橫軸左邊是人工手動控制、右邊是機器/訊號觸發;縱軸上面是預先製作、下面是即時反饋。
  • 左上|傳統 VJ: 先做好影像素材,現場手動控制播放與節奏,或讓 DJ 把 BPM mapping 進 VJ 軟體對節拍。
  • 右上|Time code 預編: 預編程程度最高,用統一時鐘對齊燈光與影像,分秒不差地觸發,適合大型 LED 演出。
  • 左下|MIDI reaction: 現場即時用 MIDI 訊號同步觸發視覺,每個音符對應一個畫面事件。
  • 右下|Audio reaction/Live AV: 用波形、能量或高中低頻即時觸發視覺。一般說「AV 表演」通常就是指這一類。
TouchDesigner 的優勢正好落在下半部——即時反饋生成式素材。很多 VJ 平常未必拿 TD 當現場播放軟體,但會用它生成素材,或直接做即時的 audio/media reaction。
📺 影片段落:0:435:18

二、聲音的輸入與輸出節點

聲音都在 CHOP(綠色)家族處理,跟影像的 TOP(紫色)分得很開。TD 把「影像就是影像、聲音就是聲音」拆得很細,所以要各自用對節點。先給對照表:
節點
用途
重點提醒
Audio File In (CHOP)
匯入音檔
只匯入、不發聲,要配 Device Out 才聽得到
Audio Device Out (CHOP)
播放聲音
記得開 Active,並選對輸出裝置
Audio Device In (CHOP)
麥克風輸入
幾乎沒設定,選 device 輸入源即可
Audio Movie (CHOP)
取出影片的聲音
Movie File In (TOP) 播不出聲音,要靠它把音軌拉出來
Movie File Out (TOP)
匯出影片
直接匯出沒有聲音,要把音檔拉進它的 audio track
Audio File In (CHOP) 的設定比 Movie File In (TOP) 更單純:選檔、播放速度、要不要 repeat、起訖點裁切、音量。要匯出帶聲音的成品時,記得把 Audio File In (CHOP) 拉進 Movie File Out (TOP) 的 audio track,影像與聲音才會一起輸出。
⚠️ Audio File In 沒聲音是正常的。 它只負責把聲音引入,本身不播放。要聽到聲音,一定要接 Audio Device Out (CHOP) 並打開 Active
📺 影片段落:11:0512:0813:3714:40

三、EQ 與濾波:Audio Band EQ 與 Audio Filter

兩個都是調整聲音的節點,差別在「用途」:
  • Audio Band EQ (CHOP) 像傳統 EQ,但分頻段更細。有 low band、high band 等一整排頻段可分別拉高拉低,一段段調到最後就沒聲音了。
  • Audio Filter (CHOP) 用一條曲線濾掉聲音。有 low-pass(只讓低音通過)、high-pass(只讓高音通過)、band-pass(只讓某一區段通過),還能調要濾掉多少幅度。
想直接看效果,可以在後面接一個頻譜圖:左邊是低音、右邊是高音,用 filter 掃過去就能看到頻譜被切掉。這一招在後面「低頻能量太強」時會回來用(high-pass 削掉最強的低頻)。
📺 影片段落:16:2817:24

四、三種把音樂轉成信號的方式(核心)

這是本週重點。三種方式取到的資料不同、適合的場景也不同,先用一張表看全貌:
方式
節點鏈
取到什麼
適合
Audio Analysis
Audio Analysis (COMP)SelectMathLag
low/mid/high、kick/snare 的能量與節拍
打點觸發、綁 scale/顏色
Audio Spectrum
Audio Spectrum (CHOP)CHOP to TOPFit
低→高頻的 2D 頻譜圖
生成頻譜視覺、glitch 位移
rms 整體能量
Audio SpectrumMath(average)Analyze(rms power)
整段聲音的總能量
驅動流速、整體強弱起伏
下面三節分別實作。

五、方式一:Audio Analysis 音頻分析

Audio Analysis (COMP) 是 TD 官方已經收錄的元件,位置在 Palette > Tools > Audio Analysis,拉出來接上音檔就能用。它會直接幫你分析 low/mid/high 三頻段的能量,以及 kick/snare/rhythm 等節拍資訊——等於把你自己用 Audio Filter (CHOP) 一段段算能量的工作全省掉了。
⚠️ 拉出來預設有些是關的。 要用的頻段(如 low/mid/high)記得在節點上把開關點開,它才會開始分析那些訊號。
接下來把訊號接成參數:
  1. Select (CHOP) 選定要用的 channel(例如只要 kick,或 low/mid/high 三個一起選)。
  2. Math (CHOP) 做數值轉換:把最小值抬起來(例如 0.2/0.3),別讓它從 0 直接跳到 1。
  3. Lag (CHOP) 讓大小變化平滑一點,而不是瞬間切換。
  4. 把最終值綁到影像參數上(例如方形的 scale,或 Bloom (TOP) 的亮度)。
實作示範是做三個會隨低/中/高頻變形的框:用一個 Rectangle (TOP)(調成 16:9),再用三個 Transform (TOP) 各自偏移一點,Composite (TOP)(over)疊起來,最後把三個頻段分別綁到三個 scale。想讓 kick 一下就換色,也可以接 Random (CHOP) 生成隨機數去控制顏色。(訊號綁參數的效能取捨,延伸閱讀:CHOP Export vs Expression 效能比較。)
⚠️ 綁 scale 一定要墊最小值。 scale 掉到 0 圖形會整個消失、聲音一停畫面就空掉。用 Math (CHOP) 把最低值抬到 0.2~0.3,沒訊號時形體還在。
工作流技巧:先接 Null (CHOP) 當最終輸出。 綁定前,先在鏈尾接一個什麼都不做的 Null (CHOP),把它當成綁定的來源。這樣之後想在中間插 Math (CHOP) 調範圍,只要插進去就好,不用把已經綁好的參數全部重綁一次
💡 養成習慣:任何要拿去綁定的訊號鏈,尾巴都先掛一個 Null (CHOP)。它是整條鏈最省事的一顆節點。
📺 影片段落:20:0822:1227:35

六、方式二:Audio Spectrum + CHOP to TOP 頻譜圖

第二種是把頻譜「畫」出來當視覺素材。
  1. 音檔接 Audio Spectrum (CHOP),得到由低頻到高頻的分析波形。
  2. CHOP to TOP (TOP),把波形轉成 2D 圖像:能量強的地方變白、弱的地方維持黑。
  3. 這張圖的解析度很特別(縱向只有 2 pixel),所以再接 Fit (TOP)fill,把它上下拉伸成看得清楚的畫面。
幫頻譜上色(Noise (TOP)): 直接接一顆 Noise (TOP) 疊色,會遇到兩個坑:
  • 顏色出不來 → 因為前一層資料是 mono(沒有 rgba channel)。把 Noise (TOP)data format 改成 legacy(或在 Common 把 pixel format 設成 32-bit rgba),顏色才分配得上去。
  • 整張圖都被上色 → 因為 RGB 分配預設是「input + noise」,而黑色是 0,相加後黑色也帶色。到 Noise (TOP) 第三個 tab 把 rgb 改成「乘」,這樣黑色維持透明、只有亮起來的頻段才顯色。
做拖尾殘影: 頻譜一放開就瞬間消失,加一組 Feedback (TOP)Level (TOP)(Level 選 lighter,透明度約 0.95)留下痕跡。個人習慣還可以加 RGB Key (TOP) 把背景網格去掉。
Glitch 位移玩法: 同一條頻譜圖,改接 Displace (TOP) 去位移一張圖片:
  • 先把 displace 數值全歸零,只綁 displace weight 的 x 值(約 0.3),讓它只做上下錯位。
  • 要像素化的 glitch 感,就把前面 Fit (TOP) 的點數降低(例如 50×50),再把 Displace (TOP)input smooth 改成 nearest pixel,取消點與點之間的平滑漸層。
  • 低頻能量太強、變化太誇張時,前面加一顆 Audio Filter (CHOP)high-pass 稍微削掉最強的低頻。
📺 影片段落:32:3233:0236:4237:3138:3740:24

七、方式三:Analyze rms power + Speed 控流速

第三種取的是「整段聲音的總能量」,跟方式二只差一步:
  1. 音檔接 Audio Spectrum (CHOP)
  2. Math (CHOP),把 combine channels 設成 average,先把左右兩個 channel 平均起來。
  3. Analyze (CHOP),選 rms power,就得到這段時間的總能量。
有了能量 channel,就能拿它控制流速。這裡用一個新節點 Speed (CHOP):它會把前面的數值持續累加,數值是 1 就每秒加 1、是 10 就每秒加 10——概念很像可以控制速度的 absTime。把能量餵進去,就能做到「能量強時流速快、能量弱時流速慢」,接上去驅動上週那顆水流 Noise (TOP) 的隨機變化即可。
💡 速度差不明顯? rms 能量常常只在 0.1~0.2 之間跳,變化太小。在 Analyze (CHOP)Speed (CHOP) 中間插一顆 Math (CHOP),用 range 把幅度放大(例如最小 0.2、最大 5)。想要反向(能量低反而快)就把兩端對調。
同一套能量/節拍還能疊更多視覺:用能量控 Speed (CHOP) 讓顏色變化速率跟著起伏、用 kick 觸發 Cross (TOP)Switch (TOP) 做圖像切換與頓點閃爍。說到底,跟上週 Motion Graphic 一樣,只是把前端的觸發方式從 LFO 換成聲音去驅動。
📺 影片段落:46:1849:01

常見問題 FAQ

Q1:Audio File In 拉出來為什麼沒有聲音?
它只負責把聲音引入,本身不播放。要接 Audio Device Out (CHOP) 並打開 Active,選對輸出裝置,才聽得到。
Q2:影片的聲音播不出來、匯出的影片也沒聲音?Movie File In (TOP) 是 TOP、只管影像,聲音要另外接 Audio Movie (CHOP) 把音軌取出來。匯出時 Movie File Out (TOP) 直接輸出也沒有聲音,要把 Audio File In (CHOP) 拉進它的 audio track 一起匯出。
Q3:綁了 scale 之後,音樂一停圖形就整個消失?
因為 scale 掉到 0。用 Math (CHOP) 把最小值墊到 0.2~0.3,沒訊號時形體還在;再接 Lag (CHOP) 讓變化平滑。
Q4:Noise 疊色,顏色出不來、或整張圖都被上色?
兩個原因:顏色出不來是因為資料是 mono,把 data format 改成 legacy(或設 32-bit rgba);整張被上色是因為 RGB 用「加」,黑色也帶色,改成「」黑色就會維持透明。
Q5:Audio Analysis 接上去卻沒反應?
它預設有些頻段是關閉的。在節點上把要用的 low/mid/high 等開關點開,它才會開始分析。
Q6:用 Speed 控流速,快慢差異看不太出來?
rms 能量變化幅度太小(常在 0.1~0.2)。在 Analyze (CHOP)Speed (CHOP) 之間插一顆 Math (CHOP),用 range 把變化放大再餵進去。

課後練習

  1. 三頻段變形框。 Audio Analysis (COMP)Select (CHOP) 選 low/mid/high → Math (CHOP) 墊底 → Lag (CHOP),綁到 Rectangle (TOP)+三個 Transform (TOP) 的 scale,Composite (TOP)(over)疊起來。記得尾巴先接 Null (CHOP)
  2. 頻譜視覺。 Audio Spectrum (CHOP)CHOP to TOP (TOP)Fit (TOP)(fill),再用 Noise (TOP) 上色(legacy+rgb 改乘),最後加 Feedback (TOP)Level (TOP)(0.95)做拖尾。
  3. Glitch 位移。 頻譜圖接 Displace (TOP),只綁 displace weight x,Fit (TOP) 降到約 50×50、input smooth 改 nearest pixel;低頻太強時前面加 Audio Filter (CHOP) high-pass。
  4. 能量控流速。 Audio Spectrum (CHOP)Math(average)Analyze (CHOP) rms power → Math range 放大 → Speed (CHOP),驅動一段生成式素材的流動速度,調到聲音與畫面反饋最明顯的程度。

影片章節

時間
內容
AV 類型光譜:手動/觸發、預製/即時的四象限
Audio reaction/Live AV 現場案例
Audio File In:匯入音檔,只匯入不發聲
Audio Device Out:播放要開 Active、選裝置
Audio Movie:取出影片的聲音
Movie File Out:把音檔拉進 audio track 帶聲匯出
Audio Band EQ:分頻段調整
Audio Filter:low/high/band pass
Audio Analysis:low/mid/high、kick/snare
Select kick + Math 墊底 + Lag 綁 scale
先接 Null 當輸出的工作流技巧
Audio Spectrum:低到高頻的頻譜波形
CHOP to TOP:波形轉 2D 圖+Fit fill 拉伸
Noise 上色:data format 改 legacy
RGB 改「乘」讓黑色維持透明
Feedback + Level(lighter, 0.95)做拖尾
Glitch:Displace+降點數+nearest pixel
Analyze rms power:取整段總能量
Speed:用能量控制 noise 流速
 
⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑
Luxmin Institute (互動研究院) on Patreon
教學講的是觀念,工具則是我們在真實展場裡跑過、改過、確定能用的東西。TD 元件、專案檔、校正與製作流程都陸續發佈在 Patreon 上,免費層可以先看 Demo 與公開工具,付費層取得完整檔案與更新:
https://www.patreon.com/cw/LuxminInstitute
最新的活動動態與報名資訊:
https://www.threads.com/@luxmin.institute
 
如有相關專案或其他需求,請洽 luxmin.art