[瀬戸のテーマ] 如何把 WM6 手機的 A2DP 發揮得淋漓盡致
[Updated:7-Nov-2008]
小弟早前了解一些 WM 在 A2DP 的運作原理,所以方案多了兩個,在這裡先來了解一下,非常簡單的。
在處理數據上,有分硬解及軟解。
硬解就是有獨立硬件去處理數據,在處理上不會佔用 CPU 資源。
軟解就是全用 CPU 的運算能力來處理數據。
硬解就是有獨立硬件去處理數據,在處理上不會佔用 CPU 資源。
軟解就是全用 CPU 的運算能力來處理數據。
WM 在 A2DP 的音訊數據處理上,是預設為軟解的,運作方式如下:
- 播放軟件對音訊數據作出處理(如效果、轉換 Bitrate等) ← CPU 資源
- WM 把音訊數據轉換為 Registry 中所設定的 Bit Rate ← CPU 資源
- 把轉換完成的數據傳到 Buffer 區 ← CPU 資源
- 由藍牙模組把 Buffer 區內的數據傳到藍牙裝置 ← 藍牙模組資源
這樣處理有一個好處,因為音訊來源並不一定一樣,Bit Rate、Sample Rate 也不同,而藍牙裝置本身的處理能力亦不高,所以把音訊數據先轉換好,再交給藍牙模組處理是最好的做法。
可惜的是,在處理上非常耗用 CPU 資源,播放軟件、A2DP、再加上本身 WM 的運作,對 PPC 上的 CPU 是非常吃力,所以在一些 WM 手機上會出現 Sound Drop 等情況,系統也被拖得死死的。
而每個藍牙裝置的處理能力亦有不同,如設定不當,可能會出現音質變差的情況,如小弟的 Sony DRC-BT15,因 WM 預設的 Bit Rate 太低,令音質出現沙沙不清的問題。
可惜的是,在處理上非常耗用 CPU 資源,播放軟件、A2DP、再加上本身 WM 的運作,對 PPC 上的 CPU 是非常吃力,所以在一些 WM 手機上會出現 Sound Drop 等情況,系統也被拖得死死的。
而每個藍牙裝置的處理能力亦有不同,如設定不當,可能會出現音質變差的情況,如小弟的 Sony DRC-BT15,因 WM 預設的 Bit Rate 太低,令音質出現沙沙不清的問題。
在這裡,為了令 WM6 手機的 A2DP 發揮得淋漓盡致,總共有三個方案。
這些提案是以小弟用的 HTC Diamond 配上 Sony DRC-BT15 來作最佳調整的,但閣下可對自己的配件來調整出最佳數值。至於用甚麼來修改 Registry,到各大 Forum 就可以找到。
這些提案是以小弟用的 HTC Diamond 配上 Sony DRC-BT15 來作最佳調整的,但閣下可對自己的配件來調整出最佳數值。至於用甚麼來修改 Registry,到各大 Forum 就可以找到。
方案一
如果手機 CPU 的處理能力不錯的話,可以把各類設定提高。
在聽歌時出現沙沙聲或 Sound Drop(音訊間斷)的情況發生時,這是因為 WM6 預設的藍牙 A2DP 傳輸 BitRate 設定太高或太低,以及一些系統的保守設定的關係,只要修改一下 Registry 後重啟,應該可以解決,甚至還可以提高音質,提升享受質素。
HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\BitPool
HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\MaxSupportedBitPool
將上面兩個數值改為: 76 (Very High)
70
65 (High)
48 (Recommend)
30-35 (Usually Default)
每部 WM6 手機的效能有異,若改太高的話,只會出現 Sound Drop 的問題。
一般而言,改成 40-55 之間就可以。
MaxSupportedBitPool 數值可以改大一些,BitPool 加上 5 就可以。HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\UseJointStereo
數值:0 → True Stereo (Recommend)
1 → Joint Stereo每部 WM6 手機預設值不同,一般也是 1 的。
部份 WM6 手機改了後,會有嚴重的雜音出現。
HKLM\Software\Microsoft\Bluetooth\AudioGateway\Capability
將這個數值改為大於 MaxSupportedBitPool 值
只要加上 5 就可以(如 MaxSupportedBitPool 為 50 的話,改為 55 就可以)。
預設值每部 WM6 手機不同,根據 BitPool 設定為準(Diamond 預設為 101)。
一般而言,憑這個數值的預設值,可推定出該手機的最高 BitPool,但不能一概而論。另外,WM6 預設的 A2DP 傳輸 Sample Rate 是 44.1KHz,如想改變的話,可以這樣做:
HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\ 內新增 DWORD "SampleRate" 數值:44100 → 44.1KHz (Default)
48000 → 48.0KHz (Recommend)
88200 → 88.2KHz
96000 → 96.0KHz
若要改的話,48000 就已經足夠,再高是沒有意義的,因為一般籃牙接收器沒有這個處理能力,耳機也沒有這個推動能力,音訊檔一般也只有 44.1/48.0KHz,而且改得太大的話,傳輸容量大增,只會拖慢整個系統,甚至令 Sound Drop 更嚴重。 以下是參考數字:
BitPool = 33, SampleRate = 44.1KHz, BitRate = 217kb/s
BitPool = 33, SampleRate = 48.0KHz, BitRate = 237kb/s
BitPool = 53, SampleRate = 44.1KHz, BitRate = 328kb/s
BitPool = 53, SampleRate = 48.0KHz, BitRate = 352kb/s如果 Sound Drop 情況嚴重,可嘗試把 A2DP 及聲音裝置的執行設為最高優先: HKLM\Drivers\BuiltIn\BtA2dpSnd\ 內新增 DWORD "Priority256"
數值改為 254
HKLM\Drivers\BuiltIn\WaveDev\Priority256
把數值 149(Default) 改為 255
這個動作並不一定有作用,因為每部 WM6 手機的效能有異,軟硬件損耗亦不同。
以下是小弟的修改項目,經過兩個多小時的測試驗證的最高 A2DP 設定。
由於加強了 A2DP 的傳輸,令系統負擔重了,所以也改了一些系統設定。
改良後,出來的音質稍為提高了,中高頻更實在之餘,期待的低頻更有力,人聲更清。
系統穩定性不變,但因傳輸容量大大地提高,所以有小許的被拖慢。 其餘的全是 WM 或軟硬體死症(如:連接問題、系統繁忙時出現的 Sound Drop 等)。 |
方案二
直接跳過 WM 處理音訊的步驟。
直接把以下 DWORD 刪除: HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\BitPool
HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\MaxSupportedBitPool加上 Sample Rate 的設定: HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\ 內新增 DWORD "SampleRate"
數值:44100 → 44.1KHz (Default)
48000 → 48.0KHz (Recommend)
88200 → 88.2KHz
96000 → 96.0KHz
若要改的話,48000 就已經足夠,再高是沒有意義的,因為一般籃牙接收器沒有這個處理能力,耳機也沒有這個推動能力,音訊檔一般也只有 44.1/48.0KHz,而且改得太大的話,傳輸容量大增,只會拖慢整個系統,甚至令 Sound Drop 更嚴重。HKLM\Software\Microsoft\Bluetooth\A2DP\Settings\UseJointStereo
數值:0 → True Stereo
1 → Joint Stereo
每部 WM6 手機預設值不同,一般也是 1 的。
在這個方案二,對這個設定就要看你的音源及裝置來決定。
部份 WM6 手機改了後,會有嚴重的雜音出現。
如果 Sound Drop 情況嚴重,可嘗試把 A2DP 及聲音裝置的執行設為最高優先: HKLM\Drivers\BuiltIn\BtA2dpSnd\ 內新增 DWORD "Priority256"
數值改為 254
HKLM\Drivers\BuiltIn\WaveDev\Priority256
把數值 149(Default) 改為 255
這個動作並不一定有作用,因為每部 WM6 手機的效能有異,軟硬件損耗亦不同。
在系統運行上,這樣是最順暢的,因為 CPU 資源多了出來,對低階 WM 機來說是一個福音。
不過,若果音源跟裝置的質素相差太多的話(一邊太低而另一邊太高),就會適得其反。
總之,這個方案二,對音源的質量及統一性是必要的,以 UseJointStereo 為例,可能一首歌很好,另一首感覺怪怪。
不過,若果音源跟裝置的質素相差太多的話(一邊太低而另一邊太高),就會適得其反。
總之,這個方案二,對音源的質量及統一性是必要的,以 UseJointStereo 為例,可能一首歌很好,另一首感覺怪怪。
以下是小弟的音源質量。
|
方案三
這是一個懶人做法,安裝一個 Diamond Tweak 的軟件就可以。
不過,看這個名字就知道,這是一個專為 HTC Diamond 而設的,其實也只是一個修改 Registry 代理程式,不過對其他 WM 手機會否有不良影響就不得而知了。
不過,看這個名字就知道,這是一個專為 HTC Diamond 而設的,其實也只是一個修改 Registry 代理程式,不過對其他 WM 手機會否有不良影響就不得而知了。
除了音訊相關的修改,也有其他針對 Diamond 及 WM 系統的相關 Tweak 設定,有興趣可以下載來用。
留言