Installation and usage
Clone this wiki locally
How to use AppleALC
The only task you need to accomplish if your codec is supported is to load the kernel extension and see if it works. You can use your bootloader for that but remember to load AppleALC earlier than AppleHDA (see sudo kextstat
output for more detail).
Note that Lilu must also be present for AppleALC to work.
Follow an easy-to-use guide to add your codec support if it is not here yet. Please share your successful results afterwards.
Note: It is necessary to set value layout-id
in Devices-Properties
or boot arguments.
HDEF device locations PciRoot
, gfxutil may be used: gfxutil -f HDEF
Do not use renaming HDAS to HDEF, B0D3 to HDAU, etc.
Properties hda-gfx
for digital audio of video cards are injected automatically.
Disable Clover's:
FixHDA
, AddHDMI
and UseIntelHDMI
, set Devices
→ Audio
→ Inject
= NO
(Necessarily type string
!)
How to control AppleALC
AppleALC accepts different boot arguments to control its behaviour:
-
alcid=layout
— to set valuelayout-id
; -
-alcoff
— to disable itself; -
-alcdbg
— to print the debugging information (if the extension was compiled in debug mode); -
-alcbeta
- to enable AppleALC on unsupported systems (usually unreleased or old ones); -
alcverbs=1
— to enablealc-verb
support (alsoalc-verbs
device property); -
-x
or-s
will also disable AppleALC. - All the Lilu boot arguments affect AppleALC.
How to extract the debug log
The easiest way to dump the debug log is to boot with -alcdbg -liludbg liludump=60
. This causes Lilu and AppleALC logs to be dumped to /var/log/Lilu_VERSION_KERN_MAJOR.KERN_MINOR.txt
60 seconds after kernel start. (The number of seconds specified should be longer than the actual macOS boot time.)
The following older methods exist for extracting the logs using -alcdbg -liludbg
without liludump
, though these may miss messages or may fail completely:
10.12 and newer:
log show --predicate 'process == "kernel" AND (eventMessage CONTAINS "AppleALC" OR eventMessage CONTAINS "Lilu")' --style syslog --source
10.11 and older:
cat /var/log/system.log | egrep '(AppleALC|Lilu)'