PTT推薦

Re: [閒聊] HTPC/CAT建構的自身經驗

看板Headphone標題Re: [閒聊] HTPC/CAT建構的自身經驗作者
alanswill
(Air)
時間推噓34 推:34 噓:0 →:64

延續之前版大的討論,希望能有所幫助。
以下為小弟參照各大論壇和朋友討論後,自己電腦有做調整的事項,不過由於本人英文頗爛
且非電機本科,有些原理都是自己推測的,可能完全錯誤,請當作參考就好

目前電腦系統是win10 21H2

電供:antec hcp850
主板:ASUS Z390 Gaming F
CPU:I7 9700KF
CPU風扇:貓頭鷹NH-U12S
PCIE SSD:WD SN750 500GB
HDD:WD Ultrastar 4TB
顯卡:MSI GTX1660TI ARMOR 6G OC
機殼:BQT pure base 600
機板、CPU、HDD硬碟模組線使用和雲林果子大訂的水藍丁電源線,HDD SATA線也是跟果子訂製的奧2 sata線,電腦電源線暫時用hcp850原廠電源線

以下調整以zhtw版大繁體中文化的Foobar2000 1.6.10白色相簿版,並用Hugo2作為usb
dac

一、 Win10開啟終極電源模式和獨佔音效:CMD開啟後輸入

powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61

到控制台電源選項選擇終極效能計畫,若有USB DAC到裝置管理員尋找對應的USB模組,把允許電腦關閉這個裝置以節省電源的勾選取消掉。並在聲音控制台-音效,把要的音效硬體滑鼠右鍵選擇內容,在進階欄位把獨佔模式的兩個選項都打勾

二、 Foobar設定:
(一)、播放輸出我是選擇預設HUGO2獨佔模式(wasapi),Chord自己寫的asio在電腦調整完後會偏中上盤,wasapi比較均衡些。
(二)、在偏好設定-進階-播放-獨佔輸出設定打勾,我這邊hugo2用默認的push模式會爆音所以勾選使用事件(event),緩衝設值1毫秒。
(三)、在偏好設定-進階-執行續優先等級選擇7(7為最高),勾選使用MMCSS,使用MMCSS模式為Pro Audio(大小寫都要對,空白鍵半形)
(四)、在偏好設定-進階-緩衝-預讀本機檔案(最大16384kb)和全檔案緩衝拉大(等同將檔案丟入記憶體撥放,我設值1048576kb),並且把音樂撥放停止硬碟休眠打勾。
(五)、使用程式Process Lasso Pro(對我有買)啟用Probalance模式並把foobar排除在
probalance外。foobar CPU優先順序設即時;CPU相依性只用CPU1,其餘程式全用0、2-7;I/O優先順序設高;記憶體優先順序設標準;程式電源設定終極效能,並將foobar用系統管理員身分開啟。

如果沒有Process Lasso但要foobar以即時開啟,可參考版上ad47大的方式
https://reurl.cc/rQnRoE

開一新記事本文件,輸入下列"兩行"存檔後並將此檔改成.bat檔,之後都用此檔右鍵以系統管理員開啟

path=%path%;C:\Program Files (x86)\foobar2000
start /d"C:\Program Files (x86)\foobar2000" /realtime foobar2000.exe %1

三、 設定MMCSS(後面說明):
WIN+R輸入regedit,尋找位址
電腦\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Multimedia\SystemProfile\

SystemProfile的NetworkThrottlingIndex不開(16進位ffffffff)
SystemProfile的SystemResponsiveness 預設值16進位14(10進位20),在調整後16進位設值a(10進位為10)

SystemProfile\Tasks\Pro Audio
預設值
Affinity :0
Background Only :False
Clock Rate  :2710(10進位10000)
GPU Priority :8(10進位8)
Priority :1(10進位1)
Scheduling Category  :High
SFIO Priority :Normal
調整後
Affinity :0
Background Only :False
Clock Rate :1(10進位1)
GPU Priority :1a(10進位26)
Priority :2(10進位2)
Scheduling Category :High
SFIO Priority :High

四、 設定IRQ Priority:
開始-系統管理工具-系統資訊-硬體資源-IRQ找所需的IRQ代碼,我IRQ設定只有系統計時器(0)、數值資料處理器(13)和兩個usb3.1可延伸控制器(4294967282、4294967283)

WIN+R輸入regedit,尋找位址
電腦\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl

滑鼠右鍵新增DWORD32位元(10進位)
命名IRQ0Priority,設值1
命名IRQ13Priority,設值99
命名IRQ4294967282Priority,設值1
命名IRQ4294967283Priority,設值1
全部好後重新啟動電腦

五、 在Windows中延長對USB設備的檢測時間
電腦會定時掃描USB 是否有設備連上,預設是每1毫秒掃描一次, 但能調整成每5毫秒掃描一次。WIN+R輸入regedit,尋找位址
電腦
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36fc9e60-c465-11cf-8

子分類每個都滑鼠右鍵新增DWORD32位元命名IdleEnable,設值1
調整完後聲音也是乾淨穩定許多

我有動的大致上是這樣,電腦本身仍然是以多工用途為主,所以並沒有停用太多東西,
BIOS也沒動多少。

/////////////////////////////////////////////////

以下說明基本上都是我參考各大論壇和本版後,與朋友討論後加入自己閉門造車的推斷,請當作參考不要完全相信。:
1. 有關WASAPI
參考微軟官方說明網頁(子分類還有很多):
(1).WASAPI https://reurl.cc/VjqX46
(2).Exclusive-Mode Streams https://reurl.cc/l9Md7v
這篇在解釋push模式和event模式運作原理,以及wasapi若緩衝設置小 於10毫秒,會指派MMCSS的Pro Audio項給執行緒,若大於10毫秒則指派Audio項(所以Foobar 1.6.7版後才會預設wasapi緩衝值為10)
(3).User-Mode Audio Components https://reurl.cc/Opeqj9
這篇在解釋微軟聲音架構是怎麼跑的,同時可參前面本標題討論串其他版大的說明
(4).Low Latency Audio https://reurl.cc/qO380D
以及之前版上louis0407與oswyn大之前在此標題討論串的文章。

2. 有關多媒體類別排程器服務MMCSS
參考微軟官方說明網頁 https://reurl.cc/3jZL6X
以及很重要的,MMCSS於2005年的專利文件 https://reurl.cc/mGN9Rj

老實說我到前為止還沒有完全瞭解運作原理,所以下面可能會有很多錯誤

(1). SystemResponsiveness
這行指令寫在MMCSS的母層,預設值16進位為14(10進位20)在專利中作為示範值。下面用10進位值解釋。
大意上,SystemResponsiveness用於指示應將CPU資源應用到非多媒體執行緒(即不
受 MMCSS 控制的執行緒)的時間百分比。如果設值20,電腦運算中可以給予MMCSS控制的執行緒80%的時間使用權,留給其他執行緒20%的時間使用權,如果10進位設值10,電腦運算中可以給予受MMCSS控制的執行緒90%的時間權,留給其他執行緒10%的時間使用權。未平均整除的值會無條件進位到最接近10的倍數,0值也會被視為10。

(2).子項Pro Audio
I. Affinity:
完全不知道怎麼用所以沒調,不知道是指定某核心運作還是動用幾個核心運作

II. Background Only:
具2005年專利檔是說只有在任務永遠在後台,不在前台運作,才需要設為True

III. Clock Rate:以下討論用10進位
這應該是我最困惑的,調整有感的情況下解釋上卻又好像有衝突。

微軟官網說明中,A hint used by MMCSS to determine the granularity of
processor resource scheduling.Windows Server 2008 and Windows Vista: The
maximum guaranteed clock rate the system uses if a thread joins this task, in100-nanosecond intervals.
系統保證的最大速率,以100奈秒為單位。但究竟運作原理是麼跑完全無法理解。我在和朋友討論後,得出的結論:
「2005年專利檔中提到,圖例FIG.2. 是示例性執行續的優先級隨時間變化的圖表,橫向時間單位是10毫秒,縱向以優先權23和6當範例,在SystemResponsiveness值20的情況下,某執行緒A優先值23在使用8毫秒CPU(CPU80%)後,接著有時間敏銳度較低的執行緒B需要使用CPU資源,則MMCSS會將A優先值23降到6,如果沒有其他執行緒需要資源則會維持在23,並在兩毫秒後(CPU20%)如果優先值有降到6則會調回23,並進行下一次的循環。而示範文clock rate是100000(100奈秒),即10毫秒,所以我和朋友推斷clock rate應該就是
mmcss一次循環的時間單位,最低能以值1(100奈秒)作為一循環」

Win10 clock rate預設值為10000(100奈秒)即1毫秒,我在調整時曾認為與系統計時器最高精度有關,所以使用TimerResolution測我的電腦最高精度能到0.496ms,微軟官方工具ClockRes在我用檔案總管位址alt+d後輸入cmd並用cmd開啟後測得值為0.5ms,所以我將
clock rate值設成4960,聲音變得更為流暢、飽滿、乾淨,但當我持續下修值到1000、
100甚至是1時,仍然能感覺到流暢性大幅提升,所以目前我將值設為1,不過不排除只是我腦放錯覺就是。

IV. GPU Priority:以下用10進位討論
各大論壇基本上都推薦設值31,新天新地部分文章討論則是設低。
微軟官網解釋:The range of values is 0-31. This priority is not yet used;同時下面還有執行緒優先級分類,分別為1-7、8-15低、16-22中、23-26高4大類,但唯獨沒有寫27-31分類在哪。

參考2005年專利檔後,當時圖Fig.1A.示範正常系統的優先度(0-15普通16-31即時),圖
Fig.1B.則是多媒體排成服務優先度(分1-7低低、8-15低、16-23中、24-26高 27-31圖沒分類)。文章中則提到,1B圖中27-31值不被mmcss採用,所以實際mmcss使用的最高值為26,27-31會被排除在mmcss外。微軟官網介紹的後段This priority is not yet used,可能就是指值27-31。

原先我也照版上其他版大的建議設值為31,在看完兩篇文章的解釋後決定設值26,相較起來,31聲音比較煩躁,全部都黏在一起,26聲音比較飽滿、泛音比較完整、聲底更乾淨,設值1聲音最乾淨,但反而會覺得好像掉了些細節一樣少了什麼。也可能我腦放,或許聲音根本沒動到GPU,值都是設爽用的而已。

V. Priority:
微軟官網只有1(低)-8(高)可以調而已,本來我調8,但官網後面有但書「For tasks
with a Scheduling Category of High, this value is always treated as 2.」。後面我便測試2、8,聽起來的確沒差就設成2了。

VI. Scheduling Category:High、Medium、Low三種,總之調High就對了。
VII. SFIO Priority:官網解釋是只有Idle、Low、Normal、High,不過我使用
process lasso時發現他的多媒體排成服務調整還有Critical,實際使用後會爆音就放棄了。不過官網備註This value is not used是指什麼東西我就不清楚了。

大致上,微軟將WASAPI許多地方連在mmcss一起運作了,所以只要使用WASAPI,建議還是調整下
MMCSS。

3. 有關IRQ Pririty
在開始-系統管理工具-系統資訊-硬體資源-IRQ中,與從控制台-裝置管理員中的IRQ,在某個部分會變成系統資訊裡是正數,如我的usb3.1延伸控制器正數是4294967282,負數是-13,負數好像只是另外一種函數寫法而已,查到的資料是說以負數表示沒有實體物理插斷,只透過軟體指令進行插斷的硬體,以和有時提物理插斷的硬體做區隔。

目前還是照著版上的建議,將主時鐘IRQ0值設1,主機板好像本來就沒有高精度計時器
IRQ8所以就沒用了,數值資料處理器IRQ13則參考版上awuwa的經驗,設值10進位為99,整體寧靜度和穩定感大增


上面說明基本上都是我參考各大論壇和本版後,與朋友討論後加入自己閉門造車
的推斷,請當作參考不要完全相信。
-------------------------------------------------------------
寫了整整12小時,崩潰脫力中ORZ,希望各位手下留情鞭小力點

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.1.120 (臺灣)
PTT 網址

evadodoya02/28 19:06這篇好久沒出現了

alanswill02/28 19:11現在改串流或HQPLAYER的人越來越多了,所以討論熱度降

alanswill02/28 19:11低了吧

luwatercolor02/28 19:23建議可以試試Server 2022,或是2016之類的,win 10

luwatercolor02/28 19:23搞一堆優化,還比不上……另外intel 900P直接買了

luwatercolor02/28 19:23

sa95050202/28 19:28聽串流之後 富爸開的機率不到10%了

vae53begadb02/28 19:32推心得

fq3357802/28 19:33

odanaga02/28 19:39推 太可怕了

alanswill02/28 19:40回L大,因為win10我是買彩盒版加上電腦還要和親人共用

alanswill02/28 19:40所以server2022會有點難度....目前檔案放HDD還是相對划

alanswill02/28 19:40算一些,最近剛買先鋒藍光機要開始轉BD

minihyde02/28 19:54win7玩過 裝置管理員停用沒用到的網卡 跟windows功能關

minihyde02/28 19:54閉遠端差異壓縮 效果很明顯

noryb02/28 20:36推!同樣用PC+進行曲模組線,公事忙完後再試試這些設定!謝謝!

frank9004302/28 20:42推!!太強了請受我一拜<(_ _)>

whydan02/28 20:45推啊

luwatercolor02/28 21:03就系統碟用900P,音樂碟可以用氦氣大容量企業碟,

感謝L大推薦~以後有閒錢再來升級

luwatercolor02/28 21:03像是WD的,共用的話,可以考慮做雙重開機之類的

tco0528802/28 21:05推心得,感謝分享!

znew121902/28 21:25不太推WD金標與HGST Ultrastar,氦氣封裝還是偏吵,震

znew121902/28 21:25動較大,比較推EXOS

max31078502/28 21:27推推好文

znew121902/28 21:32X16 12T以上,才有氦氣封裝,TDMR等

cyaninetea02/28 21:34L大請教,Upnp電腦(Audirvana播Qobuz)買900p會有用

cyaninetea02/28 21:34嗎?

znew121902/28 21:41放在主機內最好還是把HDD換SSD

在我這邊HDD目前表現比PCIE SSD稍微好一些,系統碟以後有閒錢會考慮L大推薦的900P

unique051502/28 22:52果然玩電腦播放的都是高手,拜了

max31078502/28 23:23調整完提升非常大,聲音更飽滿寬鬆、靠前,謝謝分享

evadodoya02/28 23:51記得不要只存檔在這裡 別的網站也貼上備份一下

alanswill02/28 23:59eva大,不過我平常其實只在ptt活動耶.....另外文章本

alanswill02/28 23:59身還有部分要參考前面L大和O大的文章,不確定要怎麼修

alanswill02/28 23:59正後發去其他地方

purplesky91103/01 00:01感謝分享

sa95050203/01 00:05想請問 如果不考慮foobar的話 是否只要調後半的設定就好

sa95050203/01 00:05

sa95050203/01 00:05主要是真的很少聽了 以後主力會是u土跟amazon吧

即時播放/Process Lasso的部分要看amazon music和YT music有沒有單獨程式,有的話可 以沿用 能單獨設Wasapi的話正常預設緩衝應該也是10毫秒走pro audio,如果以google chrome等 瀏覽器開啟可能MMCSS就會走子項Audio或是Playback

strans000003/01 00:11Hkey那邊是有使用MMCSS的軟體才會吃到,這篇主要針對

strans000003/01 00:11foobar走wasabi跑Pro Audio的設定,如果沒有就沒效

hdd6031103/01 00:21是說win10和win11在聲音表現有可聞差異嗎?

Myt3303/01 00:53推 沒想到win7時代的各種設定能一路沿用到現在..

微軟在2021年9-12月大幅更新官網介紹,所以舊文的調整方式有部分參數無法沿用

a951l753vin03/01 01:08PUSH 原來原po還有在持續研究

a951l753vin03/01 01:08PC播放的排列組合太多 最好就是一個一個慢慢試 大方

a951l753vin03/01 01:08向是正確的就好

a951l753vin03/01 01:27啊啊 我最近也要來訂製萬隆的PC模組線

boris2005003/01 08:39推推,太強了

evadodoya03/01 09:10也不用發 就至少文章自己要保存起來就好 放在網路空間

evadodoya03/01 09:10裡面也行

我有留一份備份檔在雲端

evadodoya03/01 09:12還有 裝置管理員的“主機板資源”全部關掉

之後來試試看

evadodoya03/01 09:18另外 各自看自己的dac在裝置管理員裡面是歸類於哪邊,

evadodoya03/01 09:18如果有自己獨立出來一個裝置沒有只存在於音樂那區塊,

evadodoya03/01 09:18你dac也沒有要拿來聽系統音效的話,音樂那邊可以停用

hugo2我平常會兼用日常生活拿來打遊戲或是看影片,這部分我再來試試看。

evadodoya03/01 09:20我的dac可以(就不拿來聽電腦音效,中控台也找不到(只走a

evadodoya03/01 09:20sio給播放軟體),像adi2就只會出現在音樂那區塊,關掉

evadodoya03/01 09:20的話播放軟體adi2會找不到,

※ 編輯: alanswill (101.12.17.92 臺灣), 03/01/2022 09:47:32

eva大,剛剛把主機板資源停用後動態直接加大而且聲音更沉穩乾淨@@但又沒感覺系統效能 沒有問題,不知道主機板資源是用來運作什麼的

※ 編輯: alanswill (101.12.17.92 臺灣), 03/01/2022 11:18:11

evadodoya03/01 11:42那個可能比你上述的設定直接簡單又有效 因為你那些我都

evadodoya03/01 11:42玩過(? 不過這個還是看系統跟人而異,所以得自己試最

evadodoya03/01 11:42準,你可以全部都放上來讓大家自己試即可

luwatercolor03/01 17:26振動我是有買淘寶的減震硬碟架,感覺聲音就很低了

luwatercolor03/01 17:26,而且氦氣聲音明顯比非氦氣碟好聲,配上群加Sata

luwatercolor03/01 17:26線更是妙不可言

luwatercolor03/01 17:28另外SSD只有分3D Xpoint和other而已,其他PCIE SSD

luwatercolor03/01 17:28跟900P系列差距非常多

luwatercolor03/01 21:20主機板資源是啥啊?怎找不到@@

evadodoya03/01 21:56https://i.imgur.com/nzWy0t6.jpg 要打開影藏喔

圖 HTPC/CAT建構的自身經驗

evadodoya03/01 21:59其實系統主機板也可以關

evadodoya03/01 22:03我自己還多關了 虛擬硬碟機列舉程式

evadodoya03/01 22:04NDIS虛擬網路介面卡列舉程式 UMBUS ROOT那個

evadodoya03/01 22:04複合式匯流排列舉程式 但這些有可能無感 主機板資源

evadodoya: 應該是最明顯的一個

luwatercolor03/01 22:50找到了,這個比前面那些明顯非常多,在我系統上已

luwatercolor03/01 22:50經是換電源線等級的差異感

znew121903/01 22:59除了氦氣封裝安靜溫度低的優點,還因為都用在大容量,

znew121903/01 22:59單碟密度高,還會導入TDMR,EAMR,三軸驅動臂技術,改

znew121903/01 22:59善讀寫精準度,WD 20T還有OptiNAND,不過目前偏好EXOS

evadodoya03/01 22:59且我用了快十年沒人知道(驚

感謝eva大無私的分享

znew121903/01 23:00https://i.imgur.com/8Xvst3z.jpg

圖 HTPC/CAT建構的自身經驗

lll156k152903/01 23:10推一下,這篇的真精彩,回文也很重要

cyaninetea03/01 23:25主機板資源關掉好有感...解析沉穩,eva大讚讚,不過

cyaninetea03/01 23:25我是聽串流居然也有差...

max31078503/01 23:32謝謝eva 大,關主機板資源有感,聲音

max31078503/01 23:32形體刻畫、解析更好、更好聽

luwatercolor03/01 23:33死 會怕,不敢用

luwatercolor03/01 23:33死雞

evadodoya03/01 23:47你串流還是會進來電腦,只要會路過電腦那都會或多或少

evadodoya03/01 23:47有影響,串流只是把檔案放在網路而已

znew121903/01 23:50最近HC550品質有點不穩定,新品不良的個案不少

cyaninetea03/01 23:57了解,看來網卡.900p之後都要買了?GG

evadodoya03/02 00:20沒預算的話就是先換成m2即可,那就會有差了

sa95050203/02 00:42主機板資源 剛才試了一下 我還是又開回來了

sa95050203/02 00:42在我這的狀況 低頻變少 氛圍感變差

可能每張主機板設計不同所以表現也不同,朋友的主版usb irq代號每個孔都有一個,我 的就是模組化 話說不知道有沒有玩家能幫我驗證一下clock rate和affinity的運作原理@@

※ 編輯: alanswill (101.12.17.92 臺灣), 03/02/2022 08:49:10

evadodoya03/02 09:21阿 你的dac 是c家 那他的dac也是被歸類在聲音處理那區

evadodoya03/02 09:21塊的 你關掉他就什麼都不能用了才對

目前是聲音控制台是留螃蟹卡(chrome切換到螃蟹卡看yt才不會卡不過沒聲音就是)和hu go2其他全關

※ 編輯: alanswill (101.12.17.92 臺灣), 03/02/2022 10:55:04

evadodoya03/02 11:03最直接是聲音的服務停用 但僅限於這台真的是純用asio聽

evadodoya03/02 11:03音樂

Oswyn03/02 13:17Affinity 是綁定 Processor 用的,簡單說是讓程式每次排隊

Oswyn03/02 13:17都排到同個內核,主要是用在 MPI 程式,播音樂應該沒什用

感謝O大解釋

Oswyn03/02 13:20Clock Rate 從 Win7 後此功能已經被刪除,所以設什都沒差

我有看到備註上面寫道Windows Server 2008 and Windows Vista: The maximum guarant eed clock rate the system uses if a thread joins this task, in 100-nanosecond intervals.,Starting with Windowsꀷ and Windows Serverꀲ008嘞2, this guarantee was removed to reduce system power consumption. 跟最下面有關win7性能的解釋有提到win7有採用更新的技術,不過始終無法確定他的guar antee指的是說直接整個刪除不作動,還是只是單純的說不再預設介面使用但保留此項調 整

https://reurl.cc/e675KL

※ 編輯: alanswill (101.12.17.92 臺灣), 03/02/2022 14:36:01