Jump to content
212 posts in this topic

Recommended Posts

2 hours ago, miliuco said:

Version 4.3.8: add HDAUniversal audio support.

Any feedback is very welcome.

 

https://github.com/perez987/About-This-Hack/releases/tag/4.3.8

@miliuco I tested the new release and it worked for me. The audio tab shows up displaying the expected  information, except for the layout ID which is defined as 69 in my config.plist but displayed as layout id 11. Need to investigate that further.

Edited by jlrycm
  • Like 2

@miliucofor easy thing i created one full database audio codec audio-codecs-Release.zip

Make the app always check against that database and filter the way you want. I create this for tool GlassFetch. A good idea is create one for lan too and check these databases everytime. Linux is always a good resource to consult. 

TGKlPa8.png

 

  • Like 1

@MaLd0n

Thanks. I'll review the database.

 

I've found where is the manufacturer in the output of the command

ioreg -p IOService -r -w 0 -l -n HDAUniversalDevice

It's the property

"HDAUniversalEffectiveCodecID" = 283906592
283906592 is a decimal number for the hexadecimal 0x10EC1220, where 10EC corresponds to Realtek, as defined in the HCAudio.swift file of the project. So, I can extract the codec manufacturer from there.

 

@jlrycm

Please tell me the values you have in these 4 places in IOReg:

  • /AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/HDEF@1F,3/HDAUniversalDevice
    • IOAudioDeviceCanBeDefaults
    • HDAUniversalEffectiveLayoutID
  • IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/HDEF@1F,3
    • layout-id
    • alc-layout-id

To see if all keys have the same value or, if they are different, the keys that have your right layout-id.

 

Edited by miliuco
Typo
  • Like 2
2 hours ago, miliuco said:

@MaLd0n

Spoiler

 

Thanks. I'll review the database.

 

I've found where is the manufacturer in the output of the command

ioreg -p IOService -r -w 0 -l -n HDAUniversalDevice

It's the property

"HDAUniversalEffectiveCodecID" = 283906592
283906592 is a decimal number for the hexadecimal 0x10EC1220, where 10EC corresponds to Realtek, as defined in the HCAudio.swift file of the project. So, I can extract the codec manufacturer from there.

 

@jlrycm

Please tell me the values you have in these 4 places in IOReg:

  • /AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/HDEF@1F,3/HDAUniversalDevice
    • IOAudioDeviceCanBeDefaults
    • HDAUniversalEffectiveLayoutID
  • IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/HDEF@1F,3
    • layout-id
    • alc-layout-id

To see if all keys have the same value or, if they are different, the keys that have your right layout-id.

 

@miliuco please see in the screenshots the requested information  

Spoiler

Screenshot 2026-06-30 at 1.22.03 PM.png

 

Spoiler

Screenshot 2026-06-30 at 1.25.48 PM.png

 

Edited by jlrycm

@jlrycm

Thanks. How do you inject the layout-id? alcid=69 in boot args or layout-id=45 in DeviceProperties?
Your codec admits layouts 11, 12, 13, 21, 22, 23, 31, 66, 69, 77, 98 and 99, so 69 is okay.


In the pics that you uploaded, I see the possible issue. You have this key:
HDAUniversalEffectiveLayoutID = 0x45
0x45 hexadecimal is 69 in decimal, it's as it should, but it must be converted from hex to decimal.
The app was looking for the layout-id in the places where AppleALC usually looks for them: layout-id and alc-layout-id. But HDAUniversalEffectiveLayoutID is the key included in the HDAUniversal block, so I'll change the layout-id source to this. And I'll add the conversion. 
I'll send it to you when done, to test it.

10 minutes ago, miliuco said:

Thanks. How do you inject the layout-id? alcid=69 in boot args or layout-id=45 in DeviceProperties?
Your codec admits layouts 11, 12, 13, 21, 22, 23, 31, 66, 69, 77, 98 and 99, so 69 is okay.

@miliuco I was injecting the layout id in Device Properties in hexadecimal format.

Spoiler

image.thumb.png.bc19d01159ed2aea1b580e4ebba543b0.png

 

Edited by jlrycm
  • Like 1
×
×
  • Create New...