FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Audio: don't drop AppleALC on unknown codecs; pick a layout-id that has working mic by Epic34-cyberdudder · Pull Request #70 · riftaway7-code/hackmate · GitHub

Audio: don't drop AppleALC on unknown codecs; pick a layout-id that has working mic - #70

Closed
Epic34-cyberdudder wants to merge 2 commits into
riftaway7-code:mainfrom
Epic34-cyberdudder:fix/applealc-audio
Closed

Audio: don't drop AppleALC on unknown codecs; pick a layout-id that has working mic#70
Epic34-cyberdudder wants to merge 2 commits into
riftaway7-code:mainfrom
Epic34-cyberdudder:fix/applealc-audio

Conversation

Copy link
Copy Markdown

Two related audio fixes.

1. No audio kext when the exact codec couldn't be identified

_detect_audio_windows falls back to the literal string "Realtek" when it can't read the HDA codec id. "Realtek" matches no entry in the layout table, so in select_kexts:

if alc_supported or not codec:   # False or False
    add("AppleALC")

AppleALC is never added and the EFI ships with no audio kext at all.

Fix: always inject AppleALC on non-legacy builds. It's inert when it can't match a codec (unlike VoodooHDA it never causes a boot failure), so there's no downside. The scan-results warning for an unknown codec is reworded and now also covers the empty-codec case.

2. Wrong layout-id → speakers work, mic doesn't

get_alc_layout() returned ALC_LAYOUTS[codec][0] — those lists are just every numerically-valid layout for the codec, and the first is frequently output-only. There's already a curated config_editor.AUDIO_LAYOUTS ("most laptops / most desktops", vetted for input too) that disagreed with it.

Fix: get_alc_layout() now prefers config_editor.AUDIO_LAYOUTS, falling back to ALC_LAYOUTS then 1. E.g. ALC295 → 28 (was 11), ALC255 → 71 (was 3), ALC1220 → 7 (was 1). Added ALC280/292/293/700/1150 to the editor's suggestion table, and the scan screen now points at Edit Config for changing the layout-id.

Tests

test_config_safety: unknown / generic-"Realtek" codec still ships AppleALC, never VoodooHDA. test_kexts: get_alc_layout returns the curated id.

Epic34-cyberdudder and others added 2 commits August 27, 2026 16:30
hardware.py falls back to the literal "Realtek" on Windows when it can't
read the HDA codec id; that string matched no ALC_LAYOUTS entry, so
select_kexts hit the `alc_supported or not codec` gate as False/False and
never added AppleALC — the EFI shipped with no audio kext.

- kexts.select_kexts: always add AppleALC on non-legacy builds. It is inert
  when it can't match a codec (never a boot failure, unlike VoodooHDA).
- scan-results warning reworded and now also covers the empty-codec case,
  since AppleALC is present in both.
- tests updated: unknown / generic-"Realtek" codec still ships AppleALC,
  never VoodooHDA.

(Also checked amd_patches.plist: it is already byte-equivalent to current
AMD_Vanilla master (eaf52ef, Oct 2025) — not stale. The trailing space in
one patch's Base "_cpuid_set_info " is upstream's and harmless: OpenCore
falls back to a full Find search when Base doesn't resolve. Left as-is to
stay in sync with canonical AMD_Vanilla.)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
(cherry picked from commit c9cdb2b667c38353c1e5eb6cef6080900aae95cf)
kexts.get_alc_layout() returned ALC_LAYOUTS[codec][0]. Those lists are every
numerically-valid layout for the codec; their first element is frequently an
output-only one, which is the classic "speaker works, mic doesn't" symptom.

- get_alc_layout() now prefers config_editor.AUDIO_LAYOUTS — the curated
  "most laptops / most desktops" pick, vetted for working input + output —
  before falling back to ALC_LAYOUTS and then 1.
- config_editor.AUDIO_LAYOUTS: added ALC280/292/293/700/1150 so the editor
  can offer alternatives for those too.
- scan screen Audio line now notes the layout-id is tunable in Edit Config.
- tests: get_alc_layout returns the curated id (ALC295->28, ALC255->71,
  ALC1220->7, ALC257->21).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
(cherry picked from commit 5275a4ec39060eb4d58d968d7fc463908a6ed001)
Epic34-cyberdudder closed this by deleting the head repository Aug 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant


Back | FazBrowse Home | New Git URL