📕
Basic Guide
HomeIstall GuideAdvance GuideGPU BuyerWIFI BuyeriOS
  • Install
  • Universal
    • Boot không cần USB
    • SIP và Gatekeeper
    • Patch âm thanh với AppleALC
    • Fix power management
    • Fix iServices
    • Fix sleep
      • GPRW/UPRW/LANC
      • Fix keyboard wake
      • Fix darkwake
      • Hotpatch PTS Wake TTS
    • Update macOS và Bootloader
  • Cosmetics
    • Fixing Resolution and Verbose
    • Tạo GUI
    • Scan policy
  • GPU
    • Patch IGPU
    • Disable dGPU Laptop
    • Disable dGPU Desktop
    • Fix DRM support
  • Gerneral
    • Fix Backlight
    • Control Brightness cho External Display
    • Enable Trim For SSD
    • Fake iGPU/ CPU Name
    • Patch SATA Controller
    • Control Led RGB
    • Time Machine
    • Emulated NVRAM
    • Cách inject toàn bộ thông tin phần cứng
  • USB FIX
    • Map USB
  • NetWork
    • Fix Ethernet
    • Fix WiFi và Bluetooth
  • Multiboot
    • Resize và Create Partition EFI
    • Cách thêm Boot vào BIOS
    • Hướng dẫn Dual Boot
  • Cách fake UUID windows
  • Advanced Guide
Powered by GitBook
On this page
  • Patch âm thanh
  • Patch Hpet, IRQ
  • Sử dụng sound card PCIe
  • Xử lý lỗi
  • No Mic on AMD
  • Kernel Panic on power state changes in 10.15
  • AppleALC working inconsistently
  • AppleALC không work khi boot từ Windows
  1. Universal

Patch âm thanh với AppleALC

PreviousSIP và GatekeeperNextFix power management

Last updated 9 months ago

Patch âm thanh

B1: Tải xuống kext AppleALC từ nguồn

B2: Down hackintool từ nguồn

B3: Mở Hackintool, vào tab Sound vào mục ALC Layout ID chọn layout phù hợp và thay vào config mục NVRAM ==> boot arg ==>alcid=xx

Của mình sẽ là alcid=3

Bạn cũng có thể add layout-id vào device properties

Dùng Device Properties

B1: Mở config.plist bằng Propertree

B2: Tìm đến mục Root --> DeviceProperties --> PciRoot(0x0)/Pci(0x1f,0x3)

B3: Add layout-id phía dưới mục trên

B4: Chỉnh type cho layout-id Apple ALC cho phép bạn chỉnh type là Hex hoặc Decimal đều được

  • Nếu bạn chọn Hex thì chỉnh type là Data

  • Nếu bạn chọn Decimal thì chỉnh type là Number

B5: Diền layout-id đã xác định trong hackintool vào đây

  • Nếu như ở trên bạn set type của layout-id là Data thì bạn sẽ cần phải covert decimal thành hex

    • Bạn có thể dùng công cụ để convert Hex sang Decimal

    • Chỉnh sửa layout ID thành một cặp 2 chữ số

      • VD: D -> 0D, C -> 0C, FF -> FF

    • Sau đó thêm 000000 vào cuối cặp 2 chữ số để được layout-id hoàn chỉnh

      • Ví dụ:

        • layout-id | Data | <0B000000>

        • layout-id | Number | <11>

  • Nếu như ở trên bạn set type của layout-id là Number thì bạn chỉ việc điền layout-id vào thôi mà không cần chuyển đổi

B6: Xoá boot-arg alcid=xx để Properties này hoạt động

B4: Snapshot config và restart máy

Lưu ý:

  • Nếu bạn đã làm và máy vẫn không nhận mic hoặc ko nhận speaker thì bạn thay tất cả layout-id khác

  • Thử từng layout-id cho tới khi nhận đầy đủ

  • Nếu phần hackintool mục sound của bạn không hiện gì cả thì các bạn sẽ tiến hành patch hpet như hướng dẫn ở dưới

  • Hoặc bạn cũng có thể patch Apple-ALC trực tiếp trên windows

Chú ý:

  • Nếu như đã patch hpet vẫn không hiện thì các bạn cứ patch bình thường không ảnh hưởng lỗi thường gặp ở gen 10 các bạn vào Linux để xác định codec

    • Chỉ gen 9 + mới bị

  • Một số bạn dùng efi prebuilt cũng có thể gặp lỗi này

  • Bạn có thể kiểm tra xem kext AppleALC có được load hay không thông qua Hackintool -> Extension

  • Bạn cũng có thể kiểm tra xem layout-id đã được apply hay chưa bằng cách xem Hackintool --> Sound --> Layout-ID

    • Hoặc là check Ioreg

Xác định codec ở linux

B1: vào terminal gõ lệnh sau cat /proc/asound/card0/codec#0 > ~/Desktop/codec_dump_0.txt

Patch Hpet, IRQ

Lỗi này thường xảy ra đối với các máy Intel gen 5th trở xuống

B2: Gõ D và kéo file DSDT của bạn vào tiếp nhấn enter

B3: Chọn mục patch hpet chọn sau đó chọn c và enter

Hoặc chọn phù hợp nhất cho máy của các bạn

B4: Lấy file SSDT-Hpet.aml vừa dum copy nó vào folder ACPI trong EFI

B5: Mở file patches_OC.plist vừa dump và copy mục patch qua mục patch của file config

Nếu chưa chỉnh gì mục patch của file config thì bạn có thể thay thế nó bằng mục patch của file patches_OC.plist

B6: Snapshot và restart

Chú ý cho Clover:

  • Bạn sẽ copySSDT vào mục EFI --> Clover --> ACPI --> patched

  • Copy file patches_clover.plist vào config thay vì là file patches_OC.plist

Sử dụng sound card PCIe

B1: Check path PCIe của sound card

Hoặc dùng hackintool như hướng dẫn phía dưới

Dùng hackintool tab PCIe

B1: Mở hackintool tab PCIe

B2: Tìm đến mục tên sound card của bạn trong cột Device Name

B3: Copy Device Path của sound card

B2: Mở Config.plist bằng propertree

B3: Add dòng device-path bạn tìm được ở bước 1 ở dưới DeviceProperties -> ADD

Key
Type
Ghi chú

Device-path của các bạn

Dictionary

Thay New String thành PCI Path. Nhấp hai lần vào Type để chọn định dạng khác

B4: Chọn vào device-path vừa add nhấn tổ hớp phím command + và add dòng sau vào

Key
Type
Value

external-audio

Data

01

Xử lý lỗi

No Mic on AMD

Đây là lỗi quá quen thuộc trên AMD và bạn không thể fix một các đơn giản được

Chúng tôi đề xuất hai cách fix:

Kernel Panic on power state changes in 10.15

Các xử lý:

Enable PowerTimeoutKernelPanic trong config.plist:

  • Kernel -> Quirks -> PowerTimeoutKernelPanic -> True

AppleALC working inconsistently

Đôi khi phần cứng âm thanh của bạn chưa khởi động khi AppleHDAController được load điều này dẫn đến việc không có âm thanh

Để nhận biết thì khi bạn khởi động sẽ có xác xuất nào đó âm thanh của bạn sẽ hoạt động

Để giải quyết vấn đề này tôi để xuất 2 phương pháp

  • Add boot-arg: alcdelay=1000

  • Hoặc dùng DeviceProperties

    • alc-delay | Number | 1000

      • Add properties này ở dưới device-path audio trong config.plist

  • Bạn có thể tăng giảm độ trễ nhưng chú ý độ trễ không vượt quá 3000

AppleALC không work khi boot từ Windows

Dấu hiệu:

Khi bạn boot tư windows sang macos nếu apple ALC không hoạt động

Đối với trường hợp này chúng tôi đề xuất 2 phương pháp:

  • Add boot-arg: alctcsel=1

  • Hoặc dùng DeviceProperties

    • alctcsel | Data | 01000000

      • Add properties này ở dưới device-path audio trong config.plist

Tìm Layout-ID phù hợp với codec thông qua trang

B2: tìm alcid**

Đối với một số bạn thử fix AppleHDA không được và AppleALC bị lỗi thì các bạn có thể tham khảo cách cài cũng như tinh chỉnh VoodooHDA theo hướng dẫn

B1: Dump DSDT xem hướng dẫn ở mục

Có thể dùng kéo và terminal

Hoặc bạn có thể dùng device manager theo hướng dẫn

Source tham khảo:

sau
tại đây
gfxutil
https://dortania.github.io/OpenCore-Post-Install/universal/audio.html#applealc-not-working-correctly-with-multiple-sound-cards
sau
sau
sau
tại đây
khi gặp lỗi sẽ bị như ảnh
tại đây
Patch DSDT phần 1
Patch VoodooHDA
Patch AppleHDA