看板 Audiophile 關於我們 聯絡資訊
年底了, 整理一下今年我用過覺得最有感的東西, 順便騙一下文章數 先說結論: 我設定好後第一次播放 真的有被驚訝到, 第一個感覺是這聲音也太純粹了 完全沒有雜質的感覺, 所有細節很清晰又很自然地擺在那裡 我個人是直接回不去了... 以下長文介紹: Diretta 是一個音響用通訊協定, 類似 Roon RAAT, HQPlayer NAA 其實他已經出來好幾年了, 之前我也有試用過 老實說當時覺得有點自己的特色, 但沒有跟其他競爭者拉出明顯差距 直到2025年十月底, 作者在騎車爬山中靈光一閃 https://www.facebook.com/share/p/1CuehzmWDc/ 想到了繞過 TCP/IP 直接在 Ethernet 層傳音訊封包的方法 沒想到測試起來音質提升非常多 在 audiophilestyle 跟 forum-hifi.fr 上引起了(相比以前多)很多的討論 尤其是其中有人提出的三層架構方案, 我測試起來真的非常有感 https://audiophilestyle.com/forums/topic/71280-diy-a-three-tier-roon-endpoint-with-diretta-on-raspberry-pi/ 因此就想要來介紹推廣一下 1. Diretta 核心架構 Host & Target Target 是真實連接 DAC 的裝置 (USB, I2S 等等) Host 通過網路連接到 Target, 可以跑在 Linux 跟 Win 上 利用作者開發的 Linux kernel module 或是 Windows ASIO driver 讓 DAC "看起來" 像是直接連接在 Host 上面 2. DDS (Diretta Direct Stream) Host 跟 Target 間的溝通不像其他協定一樣跑在 TCP/IP 上 而是使用一個新的 Ethernet Type 封包直接由 Host 的 MAC address 傳到 Target 的 MAC address 簡單講就是減少封包複雜度 跑在 TCP/IP 上會有三個 header 要解開 (Ethernet, IP, TCP) 而跑在 DDS 上只會有一層 (Ethernet) 降低作業系統要花在解開封包的 cpu 跟時間 3. Jumbo Frame Ethernet 預設封包大小上限 (MTU) 是 1500 (再加上 Ethernet頭尾) 如果網路卡支援, 依照網卡能力可以提高到 9000 或 16000 (甚至更高) 簡單講就是減少封包數量 以前要 6 個或 10 個封包現在只要 1 個 因此也可以減少作業系統跟網卡的 cpu 跟時間 4. NAT 網路隔離 在家裡內網, 再切一個內網專門給 Diratta 使用 例如家裡是 192.168.1.x, 在裡面額外增加 172.20.0.x (上面文章內的範例) 家裡音響器材接上網路後, 一般家裡網路會有很多廣播封包 就算不關音響器材的事, 音響器材還是得解開封包來看一下 檢查是不是真的不關他的事 當然還有其他好處就是了 簡單講就是讓網路環境盡量單純 這上面我認為影響力是 NAT >= DDS > Jumbo Frame 知道優點了, 接下來要介紹上面 audiophilestyle 文章所說的架構 一般常見家裡的音響架構可能是下面兩種 a. Roon Server --> Roon Ready / Bridge 設備 -- DAC b. Roon Server --> HQPlayer --> NAA -- DAC DAC 跟串流機可能是一體機也沒關係, 只要能當作純 DAC 就好 設定好後會改成下面的架構 a'. Roon Server --> Diretta Host (上面跑 Roon Bridge) ==> Diretta Target -- DAC b'. Roon Server --> HQPlayer --> Diretta Host (上面跑 NAA) ==> Diretta Target -- DAC 注意 --> 是原本家裡的內網 而 ==> 是新增的子內網 若家裡是跑其他協定, 只要 Host 上能跑, 理論上就能夠接 (例如文末補充的 UPnP) 作者做了一份指南 https://github.com/dsnyder0pc/rpi-for-roon/blob/main/Diretta.md 也有影片 https://www.youtube.com/playlist?list=PLMl09rJ6zKCk13V-IH_kRKW7FP8Q0_Fw0 作者已經做成只要 ssh 進機器內貼上指令就可以完成了 但是老實說對 Linux 完全零接觸的人應該還是有相當的難度 作者使用了兩個樹莓派來作為 Host 跟 Target 由於 Host 需要雙網路卡, 因此額外還需要一個 USB 網路卡接在 Host 上 Host 的另一個網卡跟 Target 的網卡直接對接 Jumbo Frame 作者目前列在附錄選用 18. Appendix 9: Optional: Jumbo Frames Optimization 除了需要 Linux 知識外, 這裡面另外一個難點是 Diretta Target 首先 Target 是需要買授權或是買機器的, 試用版可以無限制播放 16/44100 格式 高解析格式可以播放幾分鐘然後就要重啟 目前 Diretta Target 主要有幾種取得方式 1. Audio-Linux 或是 GentooPlayer 2. 官網自己販售的機器 https://www.diretta.link/shop/ 3. 官網合作的廠商 https://www.diretta.link/ 由於 DDS 實在太新了, 我不確定有多少合作廠商有跟進 因此目前我比較推薦第一種方式 Audio-Linux 沒有試用, 但是有買斷方案 GentooPlayer 有試用, 但是沒有買斷方案, 一台硬體要買一次 Audio-Linux 主要需要 ssh 進去設定, 有文字版選單介面, 也有 Web 介面但較陽春 GentooPlayer 則主打 Web 介面 各有優缺點, 上面指南是使用 Audio-Linux 我自己對 x86 較熟悉 因此我是使用 x86 版本 Audio-Linux 機器使用兩台 intel n100 迷你電腦 usb 網卡使用兩個 ugreen usb 3.0 to 2.5g 網卡 可以穩定跑在 jumbo frame 16000 播放 dsd 1024 跟 pcm 1536k 升頻非必要, 只是流量較大可以當作穩定度測試 不升頻僅使用 TPDF 將 bits 轉為 holo DAC 線性上限 20 bits 也很好聽 有能力有興趣的真的推薦嘗試 機器+網卡+各種授權 總花費大概 一萬多台幣 如果你本來就有 holo red Target 也可以 sd 卡裝 Audio-Linux 等跑在 holo red 上面 等於軟體硬體都有強化 若未來有合作廠商確定機器能支援 DDS 則可以省下 Target 設定的部分 但是 Host 上面要額外跑 DHCP server 讓合作廠商機器能正常拿到 IP 大概就這樣, 結果寫到 2026 了... 附上可以參考的連結, 由於 DDS 是 25 年十月底的事情 因此爬文有些可以只爬之後的就好 三層架構 https://audiophilestyle.com/forums/topic/71280-diy-a-three-tier-roon-endpoint-with-diretta-on-raspberry-pi/ 三層架構 github 指南 https://github.com/dsnyder0pc/rpi-for-roon/blob/main/Diretta.md 三層架構 影片 https://www.youtube.com/playlist?list=PLMl09rJ6zKCk13V-IH_kRKW7FP8Q0_Fw0 Audio-Linux 相關討論 https://audiophilestyle.com/forums/topic/55247-audiolinux-server-configurations-software-hardware-and-listening-impressions/page/118/ GentooPlayer 相關討論 https://audiophilestyle.com/forums/topic/55235-gentooplayer/page/361/ 法文論壇 Diretta 討論 (Chrome自動翻譯大致能看懂) https://forum-hifi.fr/thread-32971-page-140.html DDS spec https://help.diretta.link/support/solutions/articles/73000661171-dds-diretta-direct-stream 最後再補充一個十二月新冒出來的 Diretta Renderer UPnP 不需要 Roon, HQPlayer 也可以用這個接上 Diretta https://audiophilestyle.com/forums/topic/71552-direttarendererupnp/ Diretta Renderer UPnP github https://github.com/cometdom/DirettaRendererUPnP 以上, 拋磚引玉一下 如果有人有興趣歡迎一起討論 (不過我想應該很少吧... -- Roon 或是 HQPlayer 架構其實也可以套用 NAT 架構隔離, 效果多少我就沒試過了 -- ※ 文章網址: https://www.ptt.cc/bbs/Audiophile/M.1767201217.A.F96.html ※ 編輯: Amoury (140.113.17.10 臺灣), 01/01/2026 01:44:54
l98: 所以你有vlan 互通嗎? 01/01 05:21
我沒有設 bridge 所以也沒有設 vlan 因為我的目標是 Diretta 內網沒有播放時要接近零封包 Diretta Host Target 間在發一些控制指令時會使用 IPv6 目前可以做到非播放期間 tcpdump 出來只有最基本的 IPv6 NDP 跟 ARP who-has 封包在傳
l98: N100不是一堆2.5Gbe 的機型?應該可以省掉USB 網卡? 01/01 05:24
這個有點說來話長 我兩台 n100 是不同時間買的, 一台舊的本來就有 i226v 網卡 最近新買的那台, 因為 AI 關係, ram ssd 都大爆漲... 本來只是想說測試看看就貪小便宜選了一家小廠 結果收到之後內建網卡不是我下訂的 i226v, 非常無言 本想退貨, 但是沒想到 usb 網卡測起來效果良好 我不想再等了就退一些錢了事 二來是問 AI 得到 i226v 似乎只有 MTU 9000 較穩定 而 usb RealTek 8156 在論壇上有明確看到 16000 可穩定 我本來想收到之後 usb 跟 i226v 都測試, 選一個較好的 但是發生了上面的事情, 再加上 usb 測出來也真的穩定 就變成現在這樣了 另外補充一下機器選購跟設定 預算夠的話, 不管 x86 或是樹莓派都建議選 8g ram 以上 全部設定好後 Audio-Linux 跟 GentooPlayer 都有提供 OS 放進 ram 裡的功能 也建議選無風扇機殼 沒有 disk IO 跟風扇震動都是好事 那篇指南的附錄 6 15. Appendix 6: Advanced Realtime Performance Tuning 也建議要做 Host 我是設定 一個核心給 NAA 一個核心給 Diretta Host 一個核心給 xhci_hcd USB 控制器 其他全部給核心0 Target 我是設定 兩個核心給 Diretta Target 一個核心給 xhci_hcd USB 控制器 其他全部給核心0 跟指南不太一樣, 因為指南是內建網卡對接 而我是 usb 網卡對接 如果跟我一樣選擇 x86 機器 大部分設定都可以照做 只有 systemd-networkd 網路設定要注意一下 [Match] 部分 樹梅派上 內建網卡是 end0 usb 網卡是 en[pu]* x86上 內建網卡通常是 enp[1-9]* usb 網卡是 enp0* 如果不確定的話用 ip a 指令確認一下 ※ 編輯: Amoury (140.113.17.10 臺灣), 01/01/2026 08:05:03
mytedliy: 太強大了,推! 01/01 08:18
l98: rpi4 和 N100 都很熱情, rpi5 不知道有沒有好一點 01/01 08:26
l98: 所以 IPv6 也是跑 NAT? 01/01 08:28
Amoury: cpu使用率不會多高, 我都壓在 base freq, cpu只有個位數% 01/01 08:31
Amoury: 無風扇溫度也只有 40 出頭 01/01 08:31
Amoury: IPv6 無特別設定, 預設跑起來的 Link-local 就夠了 01/01 08:35
examsystem: 推介紹 01/01 11:25
martinlin77: 推 01/01 11:46
Kaneki: 新年第一推就給這篇了 01/01 11:53
MoneyBlue: 推! 01/01 12:10