Dante Flow 限制:如何診斷 no more flows 錯誤
閱讀約 7 分鐘 · 更新於 2026年10月5日 · FOH 與監聽工程師、系統技術人員、廣播作業人員、AV 網路工程師、製作經理、場館技術人員、系統整合商與巡演音訊團隊
了解 Dante 的傳送與接收 flow 限制,判讀 fanout 錯誤,並在不造成頻寬問題的前提下選擇 unicast 或 multicast。
TL;DR — Dante 的 flow 是承載一個或多個聲道的封包串流。flow 容量和聲道數是兩回事:裝置可能還有可用聲道,卻已經沒有額外的傳送或接收 flow。先讀取 subscription 的提示文字,判斷限制是在 transmitter 還是 receiver,計算目的地關係,再透過整併路由或刻意建立 multicast 來處理。變更前務必確認裝置專屬限制與網路頻寬,避免影響原本正常運作的系統。
flow 不等於聲道
Dante 的 subscription 是把一個 transmit 聲道連到一個 receive 聲道,但網路傳輸的是封裝在 flows 裡的這些 subscription。一般情況下,一個 unicast audio flow 會從單一 transmitter 傳送最多四個聲道到一台接收裝置。若在同一組發送端與接收端之間新增聲道,可能會沿用同一個 flow;但如果要把同一個聲道送到另一台 receiver,就需要另一個 unicast flow。
裝置的 flow 容量取決於其 Dante 實作方式、硬體與 firmware。不要只根據聲道標籤的數量去推估限制。
| 資源 | 會消耗它的是什麼 | 常見失敗線索 |
|---|---|---|
| Transmit channel | 一個來源訊號 | 聲道無法使用或未命名 |
| Receive channel | 一個目的地輸入 | 沒有可用的目的地槽位 |
| Transmit flow | 從 transmitter 到 receiver 的串流 | No more flows (TX) |
| Receive flow | 從某個 transmitter 傳入的串流 | No Receive flows |
| Link bandwidth | 所有穿越該連結的流量 | 使用率上升、late packets、dropouts |
《Dante subscription errors guide》 會說明在變更設計前,如何讀取 routing matrix 的狀態。
先診斷哪一邊失敗
1. 讀取 subscription 的提示文字
在 Dante Controller 中將滑鼠移到失敗的 subscription 上。記下完整的 transmitter、receiver、聲道與錯誤內容。No more flows (TX) 表示 transmitter 裝置的容量已用盡。No Receive flows 表示 receiver 端訂閱了太多不同的 transmitters 或串流。
不要把每個紅色圖示都當成 flow 錯誤。格式、clock-domain、scheduler、identity 與 discovery 失敗,處理方式都不同。
2. 畫出來源到目的地的關係
列出每一個 transmitter,以及正在接收其聲道的 receivers。從同一個 stagebox 送出四個聲道到同一台 console,通常可以共用一個 unicast flow。若同一個聲道要送到 FOH、監聽、廣播、錄音與大廳處理器,就會形成多個目的地關係,並可能耗盡 transmit flows。
在 receive 端,來自同一個 transmitter 的多個聲道通常較有效率;但若是從許多不同 transmitters 各取少量聲道,則可能消耗較多 receive flows。
3. 確認裝置限制
請使用原廠最新文件與 Dante Controller 的裝置資訊,確認支援的 transmit flows、receive flows,以及每個 flow 可承載的聲道數。限制會因裝置而異。firmware 也可能影響可用能力,因此在規劃變更前,請先記錄已安裝的版本。
4. 移除已失效的路由
在確認屬於誰之後,再刪除過去測試、錄音、備援 console 或前一場演出的 subscription。routing matrix 常會累積已不在正式運作計畫中的目的地。若只是為了清除錯誤就刪掉真正需要的安全、錄音或廣播 feed,這不是修正方法。
選擇最不具破壞性的解法
| 情況 | 實際做法 | 需要驗證什麼 |
|---|---|---|
| 目前 flow 中仍有空間可供同一個 receiver 使用 | 在同一對裝置之間把相關聲道整併 | 路由與格式仍然正確 |
| 一個來源要送給多個 receivers | 可考慮刻意建立 multicast flow | IGMP 設計與每條路徑的頻寬 |
| 一個 receiver 從很多 transmitters 各取少量聲道 | 在系統設計允許時整併來源 | 增益、時鐘、patch 與復原責任 |
| 舊型裝置有較低且固定的限制 | 重新分配路由或改用合適的硬體 | 在完整演出負載下仍有足夠容量 |
| 已失效的 subscription 佔用了 flows | 透過變更控管移除它們 | 不會少掉任何必要 feed |
multicast 可以降低 transmitter 的 fanout,因為多個 receivers 會加入同一個 multicast flow。它不是萬用的容量開關:multicast 可能跨越多條 link,即使沒有 active receivers 也會消耗頻寬,而且需要有意設計 switch 架構。在轉換路由之前,請先閱讀 《unicast versus multicast guide》。
在演出條件下測試容量
建立完整的演出路由,包括錄音、廣播、大廳、通訊、備援與 spare 路徑。確認每一筆 subscription,接著檢查 transmit 與 receive 使用量、flow 狀態、clock 穩定性與 latency 計數器。實際演練預定的 failover 與復原流程。
如果刪除一個 multicast flow,要記得 receivers 可能會回到 unicast。這種轉換可能突然超過 transmitter 的 flow 容量或 link bandwidth。刪除之前,先移除或重新設計相依路由,然後再重新測試。
記錄 routing 預算
請記錄:
- 每台裝置的型號、firmware、聲道容量,以及 Tx/Rx flow 限制;
- source-to-destination 關係及其 unicast 或 multicast 類型;
- multicast 的聲道群組、負責人與 switch 要求;
- 正常與尖峰 link 使用率;
- 為備援與臨時 feed 保留的容量;
- 已核准的變更、驗證、rollback 與升級/通報負責人。
請把這份營運摘要和 digital audio network tech rider 一起保存,不要只放在某一位工程師的 Controller 視圖裡。
Dante flow 限制檢查清單
- 已記錄精確的 subscription 提示文字。
- 已辨識耗盡的是 Tx 還是 Rx。
- 已確認裝置專屬 flow 限制與 firmware。
- 已整理目前的 source-to-destination 關係。
- 已在取得負責人同意後才移除過時路由。
- 任何 multicast 變更都已納入頻寬與 IGMP 檢查。
- 已測試完整演出負載、失效、復原與 rollback。
- 已文件化 routing 容量與責任歸屬。
FAQ
Dante 裡的 flow 是什麼?
flow 是一種網路媒體封包串流,會從 transmitter 承載一個或多個聲道。unicast flow 服務單一接收裝置;multicast flow 則可以服務多個 receivers。
Dante Controller 顯示 no more flows 是什麼意思?
這表示指定的裝置無法再建立或接受另一個所需的 flow。提示文字會區分是 transmitter 容量用盡,還是 receiver 容量用盡。
Dante 一個 flow 可以放幾個聲道?
一般來說,unicast audio flow 通常會預留最多四個聲道的空間,但裝置能力會不同。multicast 的聲道容量也會因裝置而異。請確認原廠當前規格。
Dante 什麼時候該用 multicast?
當相同聲道需要送給多個 receivers,而且 unicast fanout 效率太差時,可以考慮 multicast。請檢查 switch 設定與所有受影響的 link,因為 multicast 可能增加整個網路的流量。
Dante flow 限制錯誤要怎麼修?
先找出耗盡的一側,整理裝置關係,確認實際限制,移除過時的 subscription,然後整併或重新設計路由。只有在理解並測試過頻寬與 switch 行為後,才使用 multicast。
在演出日前先讓容量可視化
當 routing 需求、保留容量、multicast 權責與 rollback 都能讓整個製作團隊看得見時,flow 限制就會變得容易管理。請把這些紀錄放在 Techrider.live 上,並搭配最新的 input list 與網路註記,讓協作者能共同編輯、儲存並檢視歷史,不必再流傳另一份過期檔案。