Fix DRM support

Testing Hardware Acceleration and Decoding

B1: Download hackintool tại đây

B2: Ở tab đầu tiên chú ý vào mục VDA Decoder nếu hiển thị Fully Supported thì chúc mừng bạn. Bạn có thể đi tới bước tiếp theo

Nếu hiện ra faild thì bạn sẽ cần check lại những phần sau

  • Chắc rằng GPU của bạn nằm trong viện support

  • Đảm bảo SmBios của các bạn phù hợp với phần cứng

    • Không sử dụng Smbios mac mini trên desktop vì nó sử dụng phần cứng mobile

  • Chắc rằng IGPU của bạn được enable và được patch đúng cách

    • Tham khảo chi tiết tại đây

    • Chỉ khi thiết bị của bạn không dùng DGPU

  • Cần tránh các patch rename không cần thiết

    • change GFX0 to IGPU

    • change PEG0 to GFX0

    • change HECI to IMEI

  • Đảm bảo rằng Lilu và WhateverGreen được load

    • Chắc rằng bạn không sử dụng các kext patch đồ hoạ cũ

      • IntelGraphicsFixup.kext

      • NvidiaGraphicsFixup.kext

      • Shiki.kext

    • Xem chi tiết cách kiểm tra bên dưới

    • Để fix thì bạn có 2 phương pháp

      • Kiểm tra xem kext đã nằm trong thư mục load kext chưa

        • EFI --> OC --> Kext hoặc EFI --> Clover --> Kext --> Other

      • Update LiLu và WhateverGreen lên version mới nhất

Kiểm tra Kext load

Để kiểm tra xem LiLu và WhateverGreen có được load hay không hãy làm như sau

B1: Mở Terminal và gõ

kextstat | grep -E "Lilu|WhateverGreen"

B2: Nếu nó báo không tìm thấy thì kext chưa được load và ngược lại

Testting DRM

Trước tiên chúng ta sẽ cần tìm hiểu các loại DRM

  • FairPlay 1.x: DRM được dựa trên software. Hữu dụng cho các Mac Legacy

    • Cách dễ nhất đễ test nó là dùng xem một phim trên itunes tải tại đây

    • Video sẽ phát trên mọi cấu hình nếu WhateverGreen được cài đặt

      • Tuy nhiên nếu hệ thống chỉ có igpu thì video sẽ chỉ phát trong khoảng 3-5s đầu và báo lỗi HDCP không được hỗ trợ

  • FairPlay 2.x/3.x: DRM dựa trên hardware. Có trong Netflix và Amazon Prime

    • Sẽ có một vài cách để các bạn có thể kiểm tra nó

      • Phát một video trên Netflix hoặc Amazon Prime

      • phát trên Amazon Prime đoạn trailer: Spider-Man: Far From Home

        • Bản thân của đoạn trailer trên không sử dụng DRM. Nhưng Amazon Prime vẫn sẽ kiểm tra nó trước khi phát

    • Yêu cầu DGPU AMD từ Polaris và mới hơn

  • FairPlay 4.x: DRM hỗn hợp có trên AppleTV+

    • B1: Mở app TV

      • Chọn theo đường dẫn TV+ -> Free Apple TV+ Premieres

    • B2: Nhấp vào bất kì phim nào đều có thể kiểm tra được

      • Cần có account Icloud

    • Yêu cầu AMD GPU từ Polaris trở lên

Nếu mọi thứ đều hoạt động trong các bài test trên thì bạn không cần làm gì nữa

Fixing DRM

Catalina trở xuống

B1: Thêm boot-arg shikigva=x vào EFI --> Config.plist --> NVRAM --> Boot-arg

B2: Thay đổi giá trị của shikigva theo bảng dưới đây

Giải thích các kí hiệu
  • SW - Giải mã unencrypted thông quan phần mềm, hoạt động với mọi model

  • HW - Giải mã unencrypted thông quan phần cứng, hoạt động với mọi GPU tương thích

  • SW1 - software FairPlay 1.0 decoder (CoreFP)

  • SW2 - software FairPlay 1.0 decoder (CoreFP), yêu cầu HDCP

  • SW3 - software FairPlay 4.0 decoder (CoreLSKD), yêu cầu HDCP và không IGPU

  • HW1 - hardware FairPlay 1.0 decoder (CoreFP), yêu cầu có AMD GPU tương thích

  • HW2 - hardware FairPlay 1.0 decoder (CoreFP), yêu cầu HDCP và AMD GPU tương thích

  • HW3 - hardware FairPlay 2.0/3.0 decoder (CoreLSKDMSE), yêu cầu HDCP và AMD GPU tương thích

  • HW4 - hardware FairPlay 4.0 decoder (CoreLSKD), yêu cầu HDCP và AMD GPU tương thích

  • IM/MM - iMac/Macmini models dùng với IGPU, IGPU phải đảm bảo đã được patch

  • IMP/MP - iMacPro/MacPro models đảm bảo rằng model của bạn không có IGPU.

Nếu như bạn có nhiều GPU thì bạn add flag như thế sẽ áp dụng cho tất cả GPU vậy để chỉ áp dụng cho 1 GPU duy nhất bạn sẽ tiến hành add vào device properties dòng sau

Add device properties
  • B1: Xác định Device Path bằng tool gfxutil hoặc bằng hackintool

    • Nếu bạn dùng gfxutil thì sử dụng câu lệnh này path/to/gfxutil -f GFX0

      • GFX0: Là DGPU

      • IGPU: Là IGPU

  • B2: add theo đường dẫn sau EFI --> Config.plist --> Device Properties --> Add --> Device path vừa lấy được --> shikigva --> Vaule

Như vậy lại xong rồi

BigSur trở lên

B1: Thêm boot-arg unfairgva=x vào EFI --> Config.plist --> NVRAM --> Boot-arg

B2: Thay đổi giá trị của unfairgvatheo bảng dưới đây

Ngoài ra ta cũng sẽ có các mode khác bằng các công các giá trị của các mode lại với nhau xem ở phần dưới

Các giá trị khác
  • unfairgva=3 Kích hoạt DRM với những CPUID cũ + Bỏ qua yêu cầu HDCP

    • Nó là unfairgva=1 + unfairgva=2

  • unfairgva=5 Enable DRM Trên CPU cũ + Sử dụng board ID của iMacPro1,1 để kích hoạt DRM. Tương tự cách hoạt động của shikigva, hoạt động AppleTV/iTunes DRM

    • Nó chính là unfairgva=1 + unfairgva=4

  • unfairgva=6 Bỏ qua yêu cầu HDCP + Sử dụng board ID của iMacPro1,1 để kích hoạt DRM. Tương tự cách hoạt động của shikigva, hoạt động AppleTV/iTunes DRM

    • Nó chính là unfairgva=2 + unfairgva=4

  • unfairgva=7 Enable DRM Trên CPU cũ + Bỏ qua yêu cầu HDCP + Sử dụng board ID của iMacPro1,1 để kích hoạt DRM. Tương tự cách hoạt động của shikigva, hoạt động AppleTV/iTunes DRM

    • Nó chính là unfairgva=1 + unfairgva=2 + unfairgva=4

Nếu như bạn có nhiều GPU thì bạn add flag như thế sẽ áp dụng cho tất cả GPU vậy để chỉ áp dụng cho 1 GPU duy nhất bạn sẽ tiến hành add vào device properties dòng sau

Add device properties
  • B1: Xác định Device Path bằng tool gfxutil hoặc bằng hackintool

    • Nếu bạn dùng gfxutil thì sử dụng câu lệnh này path/to/gfxutil -f GFX0

      • GFX0: Là DGPU

      • IGPU: Là IGPU

  • B2: add theo đường dẫn sau EFI --> Config.plist --> Device Properties --> Add --> Device path vừa lấy được --> unfairgva --> Vaule

Source tham khảo: https://dortania.github.io/OpenCore-Post-Install/universal/drm.html | https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.Chart.md | https://lzhoang2601.github.io/post-install/fixing-drm

Last updated