黑蘋果

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

雖然 macOS 10.13.4 是首個支援外接顯卡的版本,官方列出的顯卡清單有 AMD Radeon RX 470,RX 480,RX 570,RX 580和Radeon Pro WX 7100,這也表示只要購買官方支援的 eGPU 顯卡,那就是可在黑蘋果系統上正式嘗試別,不過雖然是能夠讓系統正常識別顯卡驅動,但要讓 macOS 上使用FCPX和轉檔來實現eGPU加速和HEVC(H.265編碼),則是還要另外進行調整才能夠顯示卡能完全發揮功力,本篇教學就要來教大家如何在黑蘋果系統上解放顯卡原有的效能。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

瘋先生使用黑蘋果的目的就是要為了能夠使用 FCPX 來剪輯,才會特別挑選 ATI 系列顯卡 SAPPHIRE NITRO+ Radeon™ RX 580 8G,不過在 macOS 10.13.4 系統安裝好後,雖然系統本身是可以正常識別顯卡 RX 580 8G 型號,不過實際上會發現 FCPX 再輸出時,相當緩慢或是不夠快,甚至會直接造成分享失敗情況,在多方面尋找答案和測試後發現,發現了底下這原因

SMBIOS 設定 iMacPro1,1 雖然會直接開啟GPU硬解,MacX Video Converter Pro和IINA上都可顯示GPU加速,少數情況下會導致 FCPX 軟體當機。如果不用 FCPX ,一般用於上網、文書、看影片等非影像轉檔工作,基本上都是沒問題,可直接設定 iMacPro 直接實現享有硬解。目前已經不會出現當機狀況,僅剩下 Safari 播放 Netflix 會當機,主要是 WhateverGreen 問題,改由 Chrome 解決或透過另一篇解決

 

解決 FCPX 轉檔錯誤與硬解

為了能夠解決 FCPX 分享失敗和轉檔當機問題,先是找到了國外一篇能修復 macOS High Sierra 下執行FCPX(解決顯示卡硬體加速和HEVC支援)文章,不過全部設定好後發現GPU硬解也會直接造成失效,雖然導出5K母版都沒問題,但很少人會使用導出母版,大多都是直接轉出 1080p或4K居多。繼續歷經幾個小時刪除測試中發現,刪除了某個kext後,才又再次將GPU開啟,不過依舊是會導致 FCPX 當機,所以這方法是不可行。

歷經了三天測試和不斷嘗試各種方法調整下,最後找到了另一種解法,成功完美開啟 Radeon RX 580 顯卡的eGPU硬體加速和HEVC解碼,透過MacX Video Converter Pro確認GPU已經開啟,IINA播放 H265影片也可支援硬解,甚至連同 FCPX 也不在當機,轉檔輸出速度也有不少的提升,可確定Radeon RX 580 顯卡驅動和硬解已經真正發揮效用,下面來分享本次教學修正調整方法

  • 硬體支援:RX 580 所有廠牌顯示卡,連同RX 570、RX 480、RX 470 應該也沒問題
  • 測試系統:macOS 10.13.4、macOS 10.13.5、macOS 10.14.x、macOS 10.15

 

核顯對於 FCPX 作用

順便讓大家了解 CPU 核顯也能夠幫助 FCPX 替 H264和 H265 (HEVC)解碼運算,連同也可以提升時間軸預覽畫面順暢度。

想驅動核顯需要底下幾個方法

  • 確認 CPU 是否有核顯
  • BIOS設定內開啟核顯共享,內存要設定為128M
  • 設備要注入ig-platform-id(如果是UHD630可使用980003機型19,1)
  • 顯卡設定勾選ATI(5700/xt不用勾 OC也會忽略)
  • 必須使用 WhateverGreen v1.3.7魔改版(後面文章會提供)

如何確認是否核顯有正常啟動,在 FCPX 輸出時,Frequency 內的 AVG 可達到 1.2Ghz 就代表核顯已經正常運作。不過我在 macOS 15.4 測試中發現,Clover 沒將 Intel 8700K 核顯開啟,只有注入 ig-platform-id 值同樣是可以啟動核顯。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

另外還在官網上發現,這次蘋果替 Apple T2安全晶片功能提升,除了可以當成安全保護功能外,也能夠幫忙 HEVC 影片轉碼運算,才會讓 iMac Pro 和 iMac mini 就算沒有核顯,但是還是可以轉由 T2 晶片來加速解碼,但是黑蘋果就沒有這顆晶片,所以必須靠 CPU 核顯來解決。

 

開啟硬解教學選單

 

macOS 10.15 版本開啟硬解方法

已經升級 macOS 10.15已經有好幾個月時間,自從升級 macOS 10.15 後一直嘗試要讓 CPU 核顯和Radeon RX 580 GPU 同時啟動,最後失敗收場,主要比較難地方還是在於會造成 FCPX 開啟出現錯誤訊息(無解),最後發現白蘋果真機也都是採用顯卡再跑,導致花了不少時間測試,最後關閉 CPU 核顯注入才正常。

直接分享 Geekbench 5 跑分,目前在 RX 580 顯卡優化下已經趨近於真實白蘋果電腦數據,主要是我在顯卡內加入不少識別碼(ROM、VBIOS、EFI),讓 macOS 系統會判讀為真的蘋果原廠顯卡,為了防止有人拿去販售這部分就暫時保密。(點我看詳細跑分內容[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

不過一些基本設定還是會教大家,同樣先打開 Clover Configurator ,透過底下操作

步驟 1

  • Boot :在 Boot Arguments 內加入「ecardprops=clover」
  • Graphics:在 FB Name 內輸入「Orinoco」(顯示卡識別),ig-platform-id內輸入「0x3E9B0007」(Intel 8700K CPU核顯識別),並且將 Inject ATI和RadeonDlnit 勾選,如果不用 FCPX 可以將 Inject Intel 打開,就能讓 CPU核顯和GPU同時啟動。
  • SMBIOS:改為自己的 iMac 型號,可以去查看看真實白蘋果 CPU ,對應一下,像是當前我所用的 Intel 8700K 處理器,就曾在 iMac 18,3 使用過,所以我選擇這款型號肯定會是最完美。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

步驟 2

最後將 WhateverGreen v1.3.9 魔改版(需配合Lilu v1.4.4)放入「EFI/CLOVER/kexts/Other/」資料夾內即可,最後重開機就能完美啟動 Radeon RX 580 顯卡硬解。

以上設定完成後,就可透過VideoProc 測試,基本除了 RX580 可正常外,也可正常開啟核顯,並且能硬解 4K 編碼。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

macOS 10.14.5 版本開啟硬解方法

macOS 10.14.5 beta 帶給黑蘋果一大希望,蘋果加入 AMDRadeonX4000 訊息,代表可以支援 H264 和 HEVC 編碼和硬解,前幾個測試版本會不穩定,後續正式版本估計不需要依賴 dummy144.kext 就可在 macOS 10.14.5 上實現完美硬解。

瘋先生在測試 macOS 10.14.5 Beta2 版本(18F108f)後,已經確認不需要依賴 dummy144.kext 即可開啟 Radeon RX 580 硬解,執行底下軟體測試結果

  • Final Cut Pro X 正常硬解和輸出無綠色塊
  • Netflix 正常可播放輸出 DRM
  • MacX Video Converter Pro 顯示硬解
  • NII 支援影片硬解

Geekbench 跑分明顯優於 macOS 10.13.4 採用手動修改方式。(點我看詳細跑分內容

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

步驟 1

搶先升級 macOS 10.14.x beta 技巧:點我了解

透過 Clover Configurator 將 EFI 分區開啟,並且載入當前所用的 config.plist 檔案。 將 SMBIOS 改為 iMacPro1,1 ,不是手動輸入,要點擊右側從選單中選擇 iMacPro,這是啟動硬解關鍵機型。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

步驟 2

點選左側「Boot」選單,並且在 Arguments 方塊內點擊右下角「+」加入底下兩個項目,最後儲存,並重開機一次即可啟用。

  • -disablegfxfirmware
  • shikigva=1
  • dart=0
  • shiki-id=Mac-7BA5B2D9E42DDD94

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

步驟 3

點選左側「Graphics」選單,如果跟我的型號是相同 CPU “intel i7-8700k” ,可以在 ig-platform-id 內選擇「0x3E920003」,這是用來開啟 Intel HD Graphics 630 內顯,並且將 Inject Intel 和 inject ATI 都勾選起來。

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

步驟 4

將 kext 資料夾內的 dummy144.kext 移除,並且重開機一次即可。

 

 


 

macOS 10.14~10.14.4 版本開啟硬解方法

macOS 10.14.x 無需設定任何調整,內建原生驅動就可支援,需另外放入底下三個kext至 kext 資料夾內才能真正啟用硬解,正在測試調整到最完美狀態,後續會公布。

另外透過Clover Configurator 左側選單選擇「Boot」 ,並且在 Arguments 方塊內點擊右下角「+」加入底下兩個項目,最後儲存,並重開機一次即可啟用。

  • shikigva=32
  • shiki-id=Mac-7BA5B2D9E42DDD94

不過目前發現 macOS 10.14.5 之前,都需要依賴 dummy144.kext 才能啟用 RX 580 硬解,甚至會導致 FCPX 在剪接過程並無問題,也可以支援硬體加入,只有在輸出會出現綠色方塊,測試出來是與 dummy144.kext 有很大關係,被迫要關閉後只靠 CPU 來轉檔案輸出。如同時要讓 Netflix 可以正常播放 DRM,skikigva 就沒辦法設定 32 ,只能用 1 才可以。所以我目前卡在 FCPX 和 Netflix 沒辦法同時完美,必須要放棄其中一個設定。

 


 

macOS 10.13.x 版本開啟硬解方法

步驟 1

SMBIOS 不需要改成 iMacPro ,可以直接選擇 iMac18,3機型,建議選2017年以後,畢竟2017年前還沒有支援硬解。

步驟 2

透過 Clover Configurator 將 EFI 分區開啟,並且載入當前所用的 config.plist 檔案。

步驟 3

點選左側「Acpi」選項,在DSDT內點擊右下角「+」,新增

  • Comment:change GFX0 to IGPU
  • Find*[HEX]:47465830
  • Replace[HEX]:49475055

Generate Options 底下將「Generate PStates」和「Generate CStates」勾選起來。

步驟 4

點選左側「Devices」選項,增加 Add Properties (點選表格下方”+”新增)

  • Device : IntelGFX
  • Key : AAPL,GfxYTile
  • Value : 0AAAAA00
  • Type : DATA

步驟 5

點選左側「Graphics」選項,勾選「Inject Intel」和替ig-platform-id內輸入「0x59120003」

步驟 6

點選左側「Boot」選項,勾選「-disablegfxfirmware」,最後按下「存檔」,就可關閉 Clover Configurator

步驟 7

下載底下三個檔案至 kext 資料夾內

步驟 8

重開機,並先進入 BIOS 內調整,這功能沒調整就無法真正實現硬體加速和解碼,要讓 Final Cut Pro 真正可啟用 IGPU,可以根據底下設定

技嘉 Gigabyte 用戶設定方法

  • Chipset →Integrated Graphics : Enabled
  • Chipset → DVMTPre-Allocated :128M

使用A卡或N卡

  • Peripherals →Initial Display Output : PCIe 1 Slot
  • 僅使用核顯
  • Peripherals →Initial Display Output : IGFX

華碩 ASUS 用戶設定方法

  • Advanced \System Agent(SA) Configuration → IGPU Multi-Monitor : Enabled
  • Advanced \System Agent(SA) Configuration → DVMT pre-Allocated : 128M

使用A卡或者N卡

  • Advanced \System Agent(SA) Configuration → Primary Display : PCIE
  • 僅使用核顯
  • Advanced \System Agent(SA) Configuration → Primary Display : CPU Graphics

微星 MSI 用戶設定方法

  • Advanced \Integrated Graphics Configuration → IGD Multi-Monitor : [Enabled]
  • Advanced \Integrated Graphics Configuration → DVMT Pre-Allocated : [128M]

使用A卡或者N卡

  • Advanced \Integrated Graphics Configuration → Initiate Graphic Adapter : [PEG]
  • 僅使用核顯
  • Advanced \ Integrated GraphicsConfiguration → InitiateGraphic Adapter : [IGD]

華擎ASRock 用戶設定方法

  • Advanced \Chipset Configuration → IGPU Multi-Monitor : Enabled
  • Advanced \Chipset Configuration → Share Memory : 128MB

使用A卡或者N卡

  • Advanced \Chipset Configuration → Primary Graphics Adapter : PCI Express
  • 僅使用核顯
  • Advanced \Chipset Configuration → Primary Graphics Adapter : Onboard

 


 

開啟硬解後跑分測試結果

  • FCPX 輸出硬解完全正常
  • MacX Video Converter Pro :顯示已經啟動GPU加速

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

  • IINA:顯示加速硬體解碼

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

Geekbench GPU 獲得 142421,真iMac 2017年 Rx 580款僅獲得 103603

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

CINEBENCH CPU 分數 1408 cb

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

CINEBENCH OpenGL 分數 141.09 fps

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

Unigine Heaven Benchmark Basic

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

Unigine Heaven Benchmark Extreme

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

 

參考資料

蘋果官方支援eGPU清單頁面

HOW TO FIX VIDEO RENDERING ISSUES IN FCPX HIGH SIERRA (HARDWARE ENCODING & HEVC SUPPORT)

[黑蘋果]替RX 580顯卡開啟eGPU加速和HEVC硬體解碼,支援FCPX

▼ 如果覺得本篇教學不錯,歡迎加入瘋先生粉絲團追最新教學技巧 ▼

發表評論