AppleALC
by AcidantheraNative macOS HD audio for unsupported codecs - Lilu plugin for audio support
AppleALC
This kext requires Lilu to be installed and loaded first.
AppleALC is a Lilu plugin that enables native macOS HD audio for unsupported audio codecs. It provides a clean, non-invasive way to get audio working on Hackintosh systems without modifying system files.
Overview
AppleALC injects audio layout IDs and patches AppleHDA to support various audio codecs that arenโt natively supported by macOS. Itโs the recommended solution for audio on modern Hackintosh builds.
Features
- Native Audio Support: Enables native macOS audio without VoodooHDA
- Wide Codec Support: Supports hundreds of audio codecs
- Layout Injection: Injects appropriate layout IDs for your codec
- Non-Invasive: Doesnโt modify system files
- Easy Configuration: Simple boot argument or device property setup
Installation
Prerequisites
- Lilu 1.6.0 or later (must be loaded before AppleALC)
- OpenCore bootloader (0.7.0 or later)
- macOS 10.11 or later
Steps
- Download the latest release from GitHub
- Extract the downloaded ZIP file
- Copy
AppleALC.kextto your EFI partition:EFI/OC/Kexts/ - Add the kext to your
config.plistunderKernel > Add - Ensure Lilu is loaded before AppleALC
- Add the appropriate layout ID (see Configuration section)
- Reboot your system
config.plist Entry
<dict>
<key>BundlePath</key>
<string>AppleALC.kext</string>
<key>Comment</key>
<string>Audio support</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleALC</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
Configuration
Finding Your Layout ID
- Identify your audio codec using a tool like CPU-Z or by checking your motherboard specs
- Check the supported codecs list
- Note the available layout IDs for your codec
- Try each layout ID until you find one that works
Method 1: Boot Argument (Recommended)
Add the following boot argument to your config.plist:
alcid=X
Replace X with your layout ID (e.g., alcid=1, alcid=7, alcid=11, etc.)
Method 2: Device Properties
Add this to your config.plist under DeviceProperties > Add:
<key>PciRoot(0x0)/Pci(0x1F,0x3)</key>
<dict>
<key>layout-id</key>
<data>AwAAAA==</data>
</dict>
Replace AwAAAA== with the base64-encoded layout ID:
- Layout 1:
AQAAAA== - Layout 7:
BwAAAA== - Layout 11:
CwAAAA==
Common Layout IDs
Here are some common layout IDs for popular codecs:
Realtek ALC887
- Layout 1, 2, 3, 4, 5, 7
Realtek ALC892
- Layout 1, 2, 3, 4, 5, 7, 11, 13, 28, 92, 93, 98, 99, 100
Realtek ALC1150
- Layout 1, 2, 3, 4, 5, 7, 11
Realtek ALC1220
- Layout 1, 2, 5, 7, 11, 13, 15, 16, 21, 27, 28, 29, 34
Conexant CX20751/2
- Layout 3, 13, 21, 23
Troubleshooting
No audio output
- Verify Lilu is loaded before AppleALC
- Check that your codec is supported
- Try different layout IDs
- Ensure AppleHDA is not disabled
- Check that audio is not muted in System Preferences
Audio works but microphone doesnโt
- Try a different layout ID
- Check microphone permissions in System Preferences
- Verify input device is selected in Sound preferences
- Some layouts only support certain input configurations
Distorted or crackling audio
- Try a different layout ID
- Check for kext conflicts
- Ensure your audio device is properly configured in UEFI
- Try disabling audio enhancements
AppleALC not loading
- Verify the kext is in
EFI/OC/Kexts/ - Check that itโs added to
config.plist - Ensure Lilu is loaded first
- Check for typos in boot arguments or device properties
FAQ
How do I find my audio codec?
Use a tool like CPU-Z on Windows, or check your motherboardโs specifications. You can also use Hackintool in macOS.
Can I use AppleALC with VoodooHDA?
No, you should use either AppleALC or VoodooHDA, not both. AppleALC is preferred for better quality and native support.
What if my codec isnโt supported?
Check the supported codecs list. If your codec isnโt listed, you can request support on the GitHub repository or use VoodooHDA as a fallback.
Do I need to patch AppleHDA?
No, AppleALC handles all the patching automatically. You donโt need to manually patch any system files.
Related Kexts
- Lilu - Required dependency
- WhateverGreen - GPU support
- VirtualSMC - SMC emulation