Tạo GUI

OpenCore Picker Default

Chuẩn bị

B1: Các bạn tải Open Canopy

Phải đúng với phiên bản OpenCore

B2: Tải file Resource theo nguồn này

Tiến hành

B1: Các bạn set config theo sau:

  • Misc ⇒ Boot ⇒ PickerMode: External

  • Misc ⇒ Boot ⇒ PickerAttributes : 1 (nếu muốn sử dụng chuột thì có thể đổi value thành 17)

  • Misc -> Boot -> PickerVariant : Chọn tùy theo sở thích

    • Auto — Tự động chọn một bộ biểu tượng dựa trên màu DefaultBackground.

    • Acidanthera\Syrah — Bộ biểu tượng bình thường

    • Acidanthera\GoldenGate— Bộ biểu tượng Nouveau

    • Acidanthera\Chardonnay— Bộ biểu tượng vintage

Hoặc các bạn có thể set như sau:

  • Misc -> Boot -> PickerVariant:

    • Default

    • Modern

    • Old

Default (Syrah) Modern (GoldenGate) Old (Chardonnay)

B2: Thêm OpenCanopy vào EFI ⇒ Drivers

Opencore Picker Themes

B1: Các bạn có thể tải các theme mà các bạn thích ở đây mình gợi là nên dùng app tại đây

B2: Bỏ theme vừa tải vào thư mục Resource

Lưu ý chỉ có 1 folder sau đó phải tới các icons

VD khi các bạn tải theme từ app về theme sẽ nằm trong mục oc themes nó sẽ có các mục ⇒ opencore ⇒ icons thì thư mục icons chính là thư mục chứa các tệp ảnh nên khi copy vào resource các bạn chỉ copy thư mục icons.

B3: Set config như trên nhưng phần Misc -> Boot -> PickerVariant thì các bạn thay đổi vaule thành tên của thư mục chứa tệp ảnh

Sau khi đổi xong các bạn sẽ được như hình

Lưu ý

Cách này chỉ áp dụng đối với phiên bản OpenCore từ 0.5.7 trở lên

Nên bạn nào có phiên bản OpenCore dưới 0.5.7 thì nên Update OpenCore theo bài hướng dẫn ở đây

Nếu các bạn đã làm nhưng vẫn không nhận GUI thì các bạn nên xem lại phiên bản OpenCanopy.efi có đúng với phiên bản OpenCore đang sử dụng hay không.

Heavietnam_Themes

Nếu bạn thích có thể tham khảo các themes sau đây là các theme do đội ngũ heavietnam tạo ra.

Clover

B1: Tải theme từ nguồn hoặc bất cứ nguồn nào mà bạn thích.

B2: Bỏ theme vào mục Themes.

B3: Mở config vào mục Gui.

B4: Gõ tên Theme vào mục Theme.

B5: Save lại và Restart.

Custom GUI

MacOS

B1: Chọn 1 bức ảnh tương ứng với một icon hoặc background

Chỉ với định dạng PNG.

Nếu định dạng khác bạn có thể dùng tool tại đây để convert sang PNG xem chi tiết tại đây

B2: Tải app sau về

B3: Mở app lên các bạn sẽ được như hình

B5: Kéo file .png vào.

B6: Bấm save và chọn nơi save.

B8: Giải nén file ra và các bạn copy vào theme đang ùng hiện tại và rename lại thành Background.icns như ảnh.

Nếu như bạn custom một icon thì bạn thay Background.icns bằng đúng tên icon đó trong theme đang sử dụng

B9: Replace file vừa được tạo vào theme đang sử dụng của bạn

B10: Reboot và tận hưởng thôi.

Windows

B1: Download OpenCorepkg tại đây

B2: Giải nén và truy cập vào OpenCore-PKG\Utilities\icnspack

B3: Copy hình ảnh tương ứng với một background hoặc một icon vào folder này

B4: Nhân bản hình ảnh này

Chọn vào image rồi ấn Control + C sau đó Control + V

Nhớ là tên viết liền không dấu

B4: Mở CMD lên và gõ các lệnh sau vào

cd + [kéo folder icnspack vào]

#Lệnh chung
icnspack image.icns <Tên image 1>.png <Tên iamge 2>.png

#Nếu bạn định thay đổi background thì nhập lệnh sau 
icnspack Background.icns <Tên image 1>.png <Tên iamge 2>.png

#Nếu bạn định thay một icon nào đó trong theme đang sử dụng thì chỉ việc thay tên icon đó vào chuỗi ký tự "image.icns"
#Ví dụ ExtHardDrive.icns
icnspack ExtHardDrive.icns <Tên image 1>.png <Tên iamge 2>.png

B5: Thay thế file vừa nhận được vào themes bạn đang sử dụng

Boot-chime

Chuẩn bị

B1: Đảm bảo Onboard audio output của bạn hoạt động

Vì USB DACs sẽ không hoạt động.

Còn GPU output thì phụ thuộc vào vận may của bạn

B2: Thêm driver AudioDxe

Có sẵn trong file Opencore PKG --> X64 --> EFI --> OC --> Drivers

Tải tại đây

B3: Đảm bảo rằng bạn đã có Folder Resources ở trong EFI

Folder này nằm ở phần Opencore Picker Default

Nếu bạn sử dụng theme thì hãy chắc rằng theme của bạn có file OCEFIAudio_VoiceOver_Boot.mp3

B4: Hãy convert EFI của bạn sang bản debug

Xem chi tiết tại đây

À khi đọc đến đây đừng vội đóng tab. Vì bạn hoàn toàn có thể trở lại bản RELEASE sau khi hoàn tất

Việc trở về bản RELEASE tương tự với debug

Tiến hành

B1: Mở Config.plist bằng propertree

Setting up NVRAM

  • NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82

    • SystemAudioVolume | Data | 0x46

      • Nó là mức âm lược của boot-chime và trình đọc màn hình ở picker

      • Giải thích một chút mức âm lược mặc định là 0x46 khi convert nó sang decimal thì nó sẽ là 70

        • Và nếu bạn set nó vướt quá 100 ở dạng decimal thì nó sẽ mute ví dụ như 0x80 thì bạn sẽ mute nó

    • StartupMute | Data | 0x00

      • Đây là tuỳ chọn giúp tắt và bật tiếng khi bạn khởi động

      • Nhưng hãy nhớ răng 0x00 không có nghĩa là mute mà nó lại có nghĩa là bật tiếng

        • Bạn có thể hiểu nó như sau StartupMute tuỳ chọn này để mute tiếng khi khởi động và khi bạn set vaule của nó là 0x00 thì tức là disable cái StartupMute suy ra bạn sẽ có tiếng khi khởi động

        • Từ điều này ta hoàn toàn có thể suy ra với bất kì giá trị nào của StartupMute thì âm thanh khi khởi động đều bị tắt

Setting up UEFI -> Audio

  • AudioCodec | Number | vaule

    • Thay đổi vaule thành giá trị của IOHDACodecAddress

      • Lấy giá trị này như sau

        • Truy cập vào HDEF -> AppleHDAController -> IOHDACodecDevice --> IOHDACodecAddress

  • AudioDevice | String | Vaule

    • Thay đổi vaule thành audio device path của bạn

      • Vậy làm sao để lấy được path này. Hãy làm như sau

        • Bạn có thể dùng hackintool

          • Truy cập vào tab PCIe và quan sát mục Class tìm kiếm mục có tên Audio

          • Chuột phải vào dòng đó và chuột phải chọn Copy Device Path

          • Và đó chỉnh là Vaule cần tìm

        • Hoặc bạn có thể dùng gfxutil

          • Mở Terminal và nhập lên sau

          • /path/to/gfxutil -f HDEF

    • Thường thì Vaule của nó sẽ là PciRoot(0x0)/Pci(0x1f,0x3)

  • AudioOutMask | Number | Vaule

    • Công dụng của nó là xác định thiết bị phát ra âm thanh

    • Khi bạn đặt Vaule-1 thì tất cả các thiết bị âm thanh đều sẽ được sử dụng

    • Các output chanel sẽ được sử dụng ở dạng bit

      • Ví dụ như bit 0 thì sẽ có vaule là 1

      • Bit 1 sẽ có vaule là 2

      • Chú ý không phải là công thêm mà sẽ có công thức ở bên dưới

    • Và đến đây chắc bạn cũng đã biết rằng vaule1 không có nghĩa đó là main speaker mà đó chính là thiết bị audio output đầu tiên trong danh sách các audio output

    • Và đây chính là phần quan trọng nhất của mục này. Dưới đây là công thức tìm ra được vaule mà bạn mong muốn

      • Ta có công thức tìm vaule2^n với n là thứ tự output của bạn ở trong danh sách audio output

      • Nếu bạn định hỏi tôi rằng main speaker của bạn ở trong danh sách xếp vị trí thứ mấy thì tôi không biết. Cách duy nhất để xác định đó là thử thủ công từng cái một cho đến khi hết danh sách

        • Thử từ 2^0 -> 2^(n-1)

    • Nãy giờ tôi nhắc đến danh sách audio output khá nhiều nhưng nó ở đâu và bạn có bao nhiêu audio output

      • Đáng buồn thay danh sách audio output do hệ thống tư detect và bạn không thể xem nó

      • Nhưng bạn có thể biết mình có bao nhiêu audio output bằng cách check OpenCore Debug Log

      • 06:065 00:004 OCAU: Matching PciRoot(0x0)/Pci(0x1F,0x3)/VenMsg(A9003FEB-D806-41DB-A491-5405FEEF46C3,00000000)...
        06:070 00:005 OCAU: 1/2 PciRoot(0x0)/Pci(0x1F,0x3)/VenMsg(A9003FEB-D806-41DB-A491-5405FEEF46C3,00000000) (5 outputs) - Success

      • Như ở đây ta dễ dàng thấy có 5 output và như vậy bạn sẽ cần check từ 1->5

        • Áp dụng vào công thức 2^n ta sẽ có

          • 2^0=1

          • 2^1=2

          • 2^2=4

          • 2^3=8

          • 2^4=16

  • AudioSupport | Boolean | True

    • Kết nối với backend driver để hỗ trợ âm thanh

    • Thông qua giao thức dựng sẵn các thiết bị âm thanh đã được chỉ định ở AudioOutMask của Codec đã được chỉ định ở AudioCodec nằm trên Audio Controller đã được xác định ở AudioDevice

  • DisconnectHDA | Boolean | False

    • Không kết nối bộ điều kiển HDA trước khi load trình điều khiển.

    • Có thể yêu cầu dành cho máy Mac, máy ảo VMware

  • MaximumGain | Number | -15

    • Mức gain tối đa được sử dụng, xác định bằng đơn vị dB

  • MinimumAssistGain | Number | -30

    • Mức gain tối thiểu được sử dụng, xác định bằng đơn vị dB. Trình đọc màn hình OpenCore Picker sẽ ưu tiên dùng giá trị này nếu giá trị SystemAudioVolumeDB có trong NVRAM thấp hơn

  • MinimumAudibleGain | Number | -55

    • Mức gain tối thiểu dành cho mọi âm thanh được phát ra, xác định bằng đơn vị dB

  • PlayChime | String | Enabled

    • Giống với chức năng của StartupMute

    • Ở tuỳ chỉnh này sẽ có các vaule như sau

      • AutoEnable chime khi StartupMuteNVRAM không có giá trị nào hoặc được đặt thành 00

      • EnabledEnable chime

      • DisabledDisable chime

  • ResetTrafficClass | Boolean | False

    • Đặt HDA Traffic Class Select Register thành TC0. Nên sử dụng thuộc tính alctcsel để thay thế

  • SetupDelay | Number | 0

    • Mặc định thì vaule của nó là 0

    • Một số codec cần thêm thời gian để setup bạn nên đạt nó thành 500 milliseconds

      • Chỉ khi bạn gặp issue

Sau khi hoàn thành bạn sẽ nhận được như sau

Bạn có thể sẽ cần chỉnh sửa sampling rate của file OCEFIAudio_VoiceOver_Boot.mp3 theo sampling rate mắc định của codec thủ công.

Ví dụ với Realtek ALC295 cần chuyển sampling rate từ 44,1kHz lên 48kHz.

Nếu bạn là người khiếm thị

Thì OpenCore vẫn có support cho bạn

  • Misc -> Boot -> PickerAudioAssist -> True để enable picker audio

  • UEFI -> ProtocolOverrides -> AppleAudio -> True để enable FileVault voice over

Source tham khảo: https://dortania.github.io/OpenCore-Post-Install/cosmetic/gui.html | https://lzhoang2601.github.io/post-install/cosmetic/#boot-chime

Last updated