Jump to content
oldnapalm

VoodooHDA - common problems

178 posts in this topic

Recommended Posts

Download:

http://code.google.com/p/voodoohda/downloads/list

 

Official thread:

http://www.projectosx.com/forum/index.php?showtopic=355

 

 

Problem: kernel panic.

Solution 1: remove AppleHDA and restart the system before installing VoodooHDA.

Solution 2: edit Info.plist, replace the key IOPCIClassMatch by IOPCIPrimaryMatch and put the PCI ID of your audio card in string.

Before

<key>IOPCI[color="#FF0000"]Class[/color]Match</key>
<string>0x04030000&0xffff0000</string>

After

<key>IOPCI[color="#FF0000"]Primary[/color]Match</key>
<string>0x[color="#0000FF"]3b56[/color][color="#008000"]8086[/color]</string>

0xDeviceIDVendorID

 

How to find device and vendor ID

http://www.insanelymac.com/forum/index.php?showtopic=219584

 

 

Problem: kext doesn't work (usually when there's more than one audio card or the video card has HDMI audio).

Solution: use solution 2 for kernel panic problem above. If you want to use both cards, create one entry for each card in IOKitPersonalities.

 

 

Problem: sound crackles.

Solution 1: change output format in Applications - Utilities - Audio MIDI Setup

audioemidi.png

Solution 2: check "Use SSE2" in VoodooHDA prefPane

voodoohdapp.png

You can also enable Vectorize in Info.plist

<key>Vectorize</key>
<[color="#FF0000"]true[/color]/>

 

 

Problem: volume control (slider) doesn't work.

Solution: enable VoodooHDAEnableVolumeChangeFix in Info.plist

<key>VoodooHDAEnableVolumeChangeFix</key>
<[color="#FF0000"]true[/color]/>

 

 

Problem: volume too low.

Solution: enable VoodooHDAEnableHalfVolumeFix in Info.plist

<key>VoodooHDAEnableHalfVolumeFix</key>
<[color="#FF0000"]true[/color]/>

 

 

Problem: audio feedback (Larsen effect), sound loop between input (microphone) and output (speakers).

Solution: mute iGain and increase iMix or Mic if microphone doesn't work

<key>iGain</key>
<string>[color="#FF0000"]0[/color]</string>

It can also be done in the prefPane. In some cases you may need to mute Monitor instead of iGain.

 

 

Problem: audio delay. If you change volume, for example, it takes 1 or 2 seconds to play the test sound.

Solution 1: delete com.apple.audio.DeviceSettings.plist and com.apple.audio.SystemSettings.plist from /Library/Preferences/Audio and reboot.

Solution 2: use SoundFlower.

 

 

Problem: inputs or outputs don't show in sound preferences.

Solution 1: look for a kext patched for your codec.

For VT1708S

http://www.insanelymac.com/forum/index.php?showtopic=231508

For AD1988B

http://www.insanelymac.com/forum/index.php?showtopic=267898

Solution 2: add NodesToPatch basead on getDump output (download in official thread).

Example

<key>NodesToPatch</key>
<array>
<dict>
	<key>Codec</key>
	<integer>2</integer>
	<key>Config</key>
	<string>0x90a70120</string>
	<key>Node</key>
	<integer>12</integer>
</dict>
</array>

Config (PinDefault) is made up of the last 2 digits of each codec verb, but in the opposite order

0x[color="#FF0000"]01[/color][color="#008000"]01[/color][color="#0000FF"]44[/color][color="#8000FF"]10[/color] = 21471c[color="#8000FF"]10[/color] 21471d[color="#0000FF"]44[/color] 21471e[color="#008000"]01[/color] 21471f[color="#FF0000"]01[/color]
 |||||||+- [color="#8000FF"]Sequence[/color]
 ||||||+-- [color="#8000FF"]Default Association[/color]
 |||||+--- [color="#0000FF"]Misc[/color]
 ||||+---- [color="#0000FF"]Color[/color]
 |||+----- [color="#008000"]Connection Type[/color]
 ||+------ [color="#008000"]Default Device[/color]
 |+------- [color="#FF0000"]Location[/color]
 +-------- [color="#FF0000"]Port Connectivity[/color]

 

More detailed example

http://olarila.com/forum/viewtopic.php?f=18&t=604

 

Info about codec verbs

Source: http://www.projectosx.com/forum/index.php?showtopic=465

 

For each input/output there is a sequence of 4 verbs.

   Jack   Color  Description				  Node	 PinDefault			 Original Verbs
--------------------------------------------------------------------------------------------------------
1/8   Green  Line Out at Ext Rear		20 0x14   0x01014410   21471c10 21471d44 21471e01 21471f01

Its about NodeID(NID) 0x14 in hex, 20 in decimal.

 

The default verbs for it: 21471c10 21471d44 21471e01 21471f01

 

CAd (Codec Adress) NID (NodeID) Verb Command Verb Data

 

71cXY X=Default Association Y=Sequence

 

Default Association and Sequence are used together by software to group Pin Complexes (and therefore jacks) together into functional blocks to support multichannel operation. Software may assume that all jacks with the same association number are intended to be grouped together, for instance to provide six channel analog output. The Default Association can also be used by software to prioritize resource allocation in constrained situations. Lower Default Association values would be higher in priority for resources such as processing nodes or Input and Output Converters. Note that this is the default association only, and software can override this value if required, in particular if the user provides additional information about the particular system configuration. A value of 0000b is reserved and should not be used. Software may interpret this value to indicate that the Pin Configuration data has not been properly initialized. A value of 1111b is a special value indicating that the Association has the lowest priority. Multiple different Pin Complexes may share this value, and each is intended to be exposed as independent devices.

 

Sequence indicates the order of the jacks in the association group. The lowest numbered jack in the association group should be assigned the lowest numbered channels in the stream, etc. The numbers need not be sequential within the group, only the order matters. Sequence numbers within a set of Default Associations must be unique.

 

*My notes for this, if you look on the vanilla codec verb(no matter what codec) you will see that Sequence is always 0.

Why that, and why for us on our codec verbs is different? Simple b/c Apple dosen't have multichannel analog out! so you must change it to 0.

 

*About Default Association, Keep the default one, in order, and on those that are the same replace them with new one that dosen't exist already in the dump... the values you can use are: 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d and f.(see what does verbit if you still don't understand)

 

71dXY X=Color Y=Misc

 

Color indicates the color of the physical jack for use by software.

Unknown 0 
Black 1 
Grey 2
Blue 3 
Green 4
Red 5
Orange 6
Yellow 7
Purple 8
Pink 9
Reserved A-D
White E
Other F

 

Misc is a bit field used to indicate other information about the jack. Currently, only bit 0 is defined. If bit 0 is set, it indicates that the jack has no presence detect capability, so even if a Pin Complex indicates that the codec hardware supports the presence detect functionality on the jack, the external circuitry is not capable of supporting the functionality.

Reserved 3

Reserved 2

Reserved 1

Jack Detect Override 0

 

*Use 0 for Jack Detect - External Device(e.g. Headphones Mic etc)

Use 1 for Jack Detect Disabled - Internal Device(e.g. Internal speakers, Internal mic)

 

71eXY X=Default Device Y=Connection Type

 

Default Device indicates the intended use of the jack or device. This can indicate either the label on the jack or the device that is hardwired to the port, as with integrated speakers and the like.

Line Out 0
Speaker  1
HP Out 2
CD 3
SPDIF Out 4
Digital Other Out 5
Modem Line Side 6
Modem Handset Side 7
Line In 8
AUX 9
Mic In A
Telephony B
SPDIF In C
Digital Other In D
Reserved E
Other F

 

Connection Type indicates the type of physical connection, such as a 1/8-inch stereo jack or an optical digital connector, etc. Software can use this information to provide helpful user interface descriptions to the user or to modify reported codec capabilities based on the capabilities of the physical transport external to the codec.

Unknown 0 
1/8" stereo/mono 1
1/4" stereo/mono 2
ATAPI internal 3
RCA 4
Optical 5
Other Digital 6
Other Analog 7
Multichannel Analog (DIN) 8
XLR/Professional 9
RJ-11 (Modem) A
Combination B 
Other F

 

71fXY X=Port Connectivity Y=Location

 

Port Connectivity indicates the external connectivity of the Pin Complex. Software can use this value to know what Pin Complexes are connected to jacks, internal devices, or not connected at all.

00b - The Port Complex is connected to a jack (1/8", ATAPI, etc.).

01b - No physical connection for Port.

10b - A fixed function device (integrated speaker, integrated mic, etc.) is attached.

11b - Both a jack and an internal device are attached. The Information provided in all other fields refers to the integrated device. The PD pin will reflect the status of the jack; the user will need to be queried to figure out what it is.

 

Location indicates the physical location of the jack or device to which the pin complex is connected. This allows software to indicate, for instance, that the device is the “Front Panel Headphone Jack” as opposed to rear panel connections.

 

*Details:

Convert the 2 digit hex number to binary.

Pad the front with zero's to make it 8 dgits.

 

Example:

0x02 = binary 10 = 00000010 8 digit binary

Reading the bits from left to right:

Port Connectivity bits 7:6 
-----------------------------------------------------------
00 - Port is connected to a Jack
01 - No External Port -or- No physical connection for Port  
10 - Fixed Function/Built In Device (integrated speaker, mic, etc)
11 - Jack and Internal device are attached 

Location Part 1 - bits 5:4
-----------------------------------------------------------
00 - External on primary chassis
01 - Internal
10 - Separate chassis
11 - Other

Location Part 2 - bits 3:0
-----------------------------------------------------------
The meaning depends on Location Part 1 

00 0000	N/A
00 0001   Rear
00 0010   Front
00 0011   Left
00 0100   Right
00 0101   Top
00 0110   Bottom
00 0111   Special (Rear panel)
00 1000   Special (Drive bay)

01 0000   N/A
01 0111   Special (Riser)
01 1000   HDMI
01 1001   ATAPI

10 0000	N/A
10 0001   Rear
10 0010   Front
10 0011   Left
10 0100   Right
10 0101   Top
10 0110   Bottom

11 0000   N/A
11 0110   ?
11 0111   Inside Mobile Lid (example: mic)
11 1000   Outside Mobile Lid

		Bits
Hex	 76 54 3210
-------------------
71f01 = 00 00 0001 - Port has a jack - It is External - Rear Location
71f02 = 00 00 0010 - Port has a jack - It is External - Front Panel Location 
71f59 = 01 01 1001 - No External Port - ATAPI 
71f18 = 00 01 1000 - Port has a jack - External - HDMI
71f90 = 10 01 0000 - Built In Device - Internal - N/A 
	|  |  ||||
	|  |  |--------- Location part 2
	|  |------------ Location part 1  
	|--------------- Port Connectivity

 

calculatorx.png

Share this post


Link to post
Share on other sites
Advertisement

Thanks so much for this! I'll try some of these.

 

BTW, some of the lingo probably passed over my head, but do you know how to get surround sound working?

Share this post


Link to post
Share on other sites

Usually (at least in the codecs I tested) all line-out have the same default association, only the sequence changes. You have to set a different default association for each line-out and set sequence as zero.

 

Once you have 3 or 4 line-out working, create an aggregate device, configure the speakers and select it in sound output.

 

Check this example

http://www.insanelymac.com/forum/index.php?showtopic=267898

 

*About Default Association, Keep the default one, in order, and on those that are the same replace them with new one that dosen't exist already in the dump... the values you can use are: 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d and f.(see what does verbit if you still don't understand)

Share this post


Link to post
Share on other sites

Thanks Crosx86 :D

Thanks to this guide the audio works, but not perfectly. I hear a little background noise (like crackling noises).

I got my codec_dump codec_dump.txt

and that's what I get with verbit:

 

Verbs from Linux Codec Dump File: codec#0

Codec: Realtek ALC887   Address: 0   DevID: 283904135 (0x10ec0887)

  Jack   Color  Description				  Node	 PinDefault			 Original Verbs
--------------------------------------------------------------------------------------------------------
1/8   Black  Speaker at Ext Rear		 17 0x11   0x411111f0   01171cf0 01171d11 01171e11 01171f41
1/8   Black  Speaker at Ext Rear		 18 0x12   0x411111f0   01271cf0 01271d11 01271e11 01271f41
1/8   Green  Line Out at Ext Rear		20 0x14   0x01014010   01471c10 01471d40 01471e01 01471f01
1/8   Black  Speaker at Ext Rear		 21 0x15   0x411111f0   01571cf0 01571d11 01571e11 01571f41
1/8   Black  Speaker at Ext Rear		 22 0x16   0x411111f0   01671cf0 01671d11 01671e11 01671f41
1/8   Black  Speaker at Ext Rear		 23 0x17   0x411111f0   01771cf0 01771d11 01771e11 01771f41
Mic at Ext Rear	0x18 0x18						27367488 01871c40 01871d98	 01871ea1 01871f01  
Mic at Ext Front	0x19 0x19						44145744 01971c50 01971d9c	 01971ea1 01971f02  
1/8	Blue  Line In at Ext Rear		 26 0x1a   0x0181304f   01a71c4f 01a71d30 01a71e81 01a71f01
HP Out at Ext Front	0x1b 0x1b						35736608 01b71c20 01b71d4c	 01b71e21 01b71f02  
1/8   Black  Speaker at Ext Rear		 28 0x1c   0x411111f0   01c71cf0 01c71d11 01c71e11 01c71f41
RCA UNKNOWN  Line Out at Ext N/A		 29 0x1d   0x4004c601   01d71c01 01d71dc6 01d71e04 01d71f40
Optical  Orange  SPDIF Out at Ext Rear	   30 0x1e   0x01456130   01e71c30 01e71d61 01e71e45 01e71f01
1/8   Black  Speaker at Ext Rear		 31 0x1f   0x411111f0   01f71cf0 01f71d11 01f71e11 01f71f41
--------------------------------------------------------------------------------------------------------


  Jack   Color  Description				  Node	 PinDefault			 Modified Verbs
--------------------------------------------------------------------------------------------------------
1/8   Green  Line Out at Ext Rear		20 0x14   0x01014010   01471c10 01471d40 01471e01 01471f01
Mic at Ext Rear	0x18 0x18						27367488 01871c40 01871d90	 01871ea1 01871f01  
Mic at Ext Front	0x19 0x19						44145744 01971c50 01971d90	 01971ea1 01971f01  
1/8	Blue  Line In at Ext Rear		 26 0x1a   0x0181304f   01a71c60 01a71d30 01a71e81 01a71f01
HP Out at Ext Front	0x1b 0x1b						35736608 01b71c20 01b71d40	 01b71e21 01b71f01  
RCA UNKNOWN  Line Out at Ext N/A		 29 0x1d   0x4004c601   01d71c70 01d71dc0 01d71e04 01d71f40
Optical  Orange  SPDIF Out at Ext Rear	   30 0x1e   0x01456130   01e71c30 01e71d60 01e71e45 01e71f01
--------------------------------------------------------------------------------------------------------

 

I've tried replacing the default nodes with mine

 

From:

<key>NodesToPatch</key>
		<array>
			<dict>
				<key>Codec</key>
				<integer>2</integer>
				<key>Config</key>
				<string>0x90a70120</string>
				<key>Node</key>
				<integer>12</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>2</integer>
				<key>Config</key>
				<string>0x02a1102f</string>
				<key>Node</key>
				<integer>14</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>2</integer>
				<key>Config</key>
				<string>0x90a6e140</string>
				<key>Node</key>
				<integer>19</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>2</integer>
				<key>Config</key>
				<string>0x02011030</string>
				<key>Node</key>
				<integer>15</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>2</integer>
				<key>Config</key>
				<string>0x02211050</string>
				<key>DAC</key>
				<string>3</string>
				<key>Node</key>
				<integer>10</integer>
			</dict>
		</array>

 

To:

<key>NodesToPatch</key>
<array>
<dict>
<key>Node</key>
<integer>20</integer>
<key>Config</key>
<string>0x01014010</string>
</dict>
<dict>
<key>Node</key>
<integer>26</integer>
<key>Config</key>
<string>0x01813060</string>
</dict>
<dict>
<key>Node</key>
<integer>29</integer>
<key>Config</key>
<string>0x4004c070</string>
</dict>
<dict>
<key>Node</key>
<integer>30</integer>
<key>Config</key>
<string>0x01456030</string>
</dict>
<dict>
</array>

 

Magically the audio doesn't work anymore. :(

 

Help :)

Share this post


Link to post
Share on other sites

@buoo

 

the problem in this edition of the nodes, I think.simple patch your dsdt and install the voodooHDA 2.7.2.pkg and edit the info.plist of the kext:

<key>IOMatchCategory</key>
		<string>VoodooHDADevice</string>
		<key>IOPCIPrimaryMatch</key>
		<string>0x27d88086</string>
		<key>IOProviderClass</key>
		<string>IOPCIDevice</string>

 

 

you're right the sound still works perfectly, more now.works best.with codec dump I did not succeed, controls lit up, but without sound.

Share this post


Link to post
Share on other sites
You have to specify the Codec key in each node patch.

 

Where did you get the "default" NodesToPatch?

 

Post your VoodooHDA getDump.

 

About the crackling sound, see here

http://www.insanelymac.com/forum/index.php?showtopic=267905

 

 

Thanks guys :)

 

I'm using voodoohda 2.7.2, I only added my PCI ID.

 

<key>IOPCIPrimaryMatch</key>
<string>0x27d88086</string>

 

With "default" I mean the nodes that I found in the unpatched 2.7.2's plist.

 

Oldnapalm, Should be these the right nodes to use?

 

20 0x01014010

26 0x0181304f

29 0x4004c601

30 0x01456130

 

This is the getdump

getdump.rtf

Share this post


Link to post
Share on other sites

Unpatched plist should have no nodes to patch

<key>NodesToPatch</key>
<array/>

 

I think you just need

<dict>
<key>Codec</key>
<integer>0</integer>
<key>Config</key>
<string>0x01813060</string>
<key>Node</key>
<integer>26</integer>
</dict>

 

You can try this to get headphones auto-detect

<dict>
<key>Codec</key>
<integer>0</integer>
<key>Config</key>
<string>0x02214c1f</string>
<key>Node</key>
<integer>27</integer>
</dict>

Share this post


Link to post
Share on other sites

The audio works, but there are 2 problems:

 

the audio delay

the voodooprefpan reset at the reboot

 

Mission Complete! :(

 

The audio works very god LoL using VoodooHDA2.2 + my PCI ID

 

<key>IOPCIPrimaryMatch</key>
<string>0x27d88086</string>

Share this post


Link to post
Share on other sites

Hi man, I don't understand the portuguese but I want to try it xD

 

1 minute...

 

Wow! This is the first VoodooHDA 2.7.2 that doesn't give me noice.

But It gives me too much audio delay and the mic doesn't work.

 

 

Crosx86, do you know how to eliminate the audio delay?

Share this post


Link to post
Share on other sites

@buoo

 

Hey buoo,for me works perfect...you can check in prefpane:

post-711330-1319396502_thumb.png

 

Your get dump is the same as mine?

put your device id and your vendor ID in the plist kext if it is already there, delete all nodes and run vooodoo get dump and compare.

Share this post


Link to post
Share on other sites

Our chips are different :\

 

I'was looking your codec_dump, however ...do you know how to eliminate the audio delay?

 

Thanks ;)

 

 

Edit: It is the same 0x27d88086

 

but the nodes are differents

 

 

Could you take a look here?

 

codec.txt.zip

getdump.zip

 

..If you could help me, this audio chip is killing me.

Share this post


Link to post
Share on other sites

EDIT: the get dump with this voodoo with nodes, remove all repair permissions reboot and run get dump

 

put your device id and your vendor ID in the plist kext if it is already there, delete all nodes and run vooodoo get dump and compare.

this part of your dump:

 

Probing codec #0...
HDA Codec #0: Realtek ALC887
HDA Codec ID: 0x10ec0887
   Vendor: 0x10ec
   Device: 0x0887
 Revision: 0x02
 Stepping: 0x02
PCI Subvendor: 0x83bc1043
startNode=1 endNode=2
Found audio FG nid=1 startNode=2 endNode=39 total=37

AND

nid 17 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 18 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 20 0x01014010 as  1 seq  0	  Line-out  Jack jack  1 loc  1 color   Green misc 0
nid 21 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 22 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 23 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 24 0x01a19830 as  3 seq  0	Microphone  Jack jack  1 loc  1 color	Pink misc 8
nid 25 0x02a19840 as  4 seq  0	Microphone  Jack jack  1 loc  2 color	Pink misc 8
nid 26 0x01013050 as  5 seq  0	  Line-out  Jack jack  1 loc  1 color	Blue misc 0
nid 27 0x02214020 as  2 seq  0	Headphones  Jack jack  1 loc  2 color   Green misc 0
nid 28 0x593301f0 as 15 seq  0			CD  None jack  3 loc 25 color Unknown misc 1 [DISABLED]
nid 29 0x4004c601 as  0 seq  1	  Line-out  None jack  4 loc  0 color   Res.C misc 6 [DISABLED]
nid 30 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 31 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]

 

post it.

Share this post


Link to post
Share on other sites

Ok!

I've deleted all nodes from your VoodooHDA

<key>MixerValues</key>
		<dict>
			<key>Mic</key>
			<string>0</string>
			<key>PCM</key>
			<string>100</string>
			<key>iGain</key>
			<string>100</string>
			<key>iMix</key>
			<string>30</string>
		</dict>
		<key>NodesToPatch</key>
		</array>
		<key>Noise</key>
		<integer>2</integer>
		<key>Vectorize</key>
		<true/>

 

Now this is the new getdump:

 

Probing codec #0...
HDA Codec #0: Realtek ALC887
HDA Codec ID: 0x10ec0887
   Vendor: 0x10ec
   Device: 0x0887
 Revision: 0x02
 Stepping: 0x02
PCI Subvendor: 0x84271043
startNode=1 endNode=2
Found audio FG nid=1 startNode=2 endNode=39 total=37

Processing audio FG cad=0 nid=1...
Powering up...
Parsing audio FG...
GPIO: 0xc0000002 NumGPIO=2 NumGPO=0 NumGPI=0 GPIWake=1 GPIUnsol=1
nid 17 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 18 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 20 0x01014010 as  1 seq  0	  Line-out  Jack jack  1 loc  1 color   Green misc 0
nid 21 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 22 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 23 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 24 0x01a19840 as  4 seq  0	Microphone  Jack jack  1 loc  1 color	Pink misc 8
nid 25 0x02a19c50 as  5 seq  0	Microphone  Jack jack  1 loc  2 color	Pink misc 12
nid 26 0x0181304f as  4 seq 15	   Line-in  Jack jack  1 loc  1 color	Blue misc 0
nid 27 0x02214c20 as  2 seq  0	Headphones  Jack jack  1 loc  2 color   Green misc 12
nid 28 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1
nid 29 0x4004c601 as  0 seq  1	  Line-out  None jack  4 loc  0 color   Res.C misc 6
nid 30 0x01456130 as  3 seq  0	 SPDIF-out  Jack jack  5 loc  1 color  Orange misc 1
nid 31 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1


Patched pins configuration:
nid 17 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 18 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 20 0x01014010 as  1 seq  0	  Line-out  Jack jack  1 loc  1 color   Green misc 0
nid 21 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 22 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 23 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 24 0x01a19840 as  4 seq  0	Microphone  Jack jack  1 loc  1 color	Pink misc 8
nid 25 0x02a19c50 as  5 seq  0	Microphone  Jack jack  1 loc  2 color	Pink misc 12
nid 26 0x0181304f as  4 seq 15	   Line-in  Jack jack  1 loc  1 color	Blue misc 0
nid 27 0x02214c20 as  2 seq  0	Headphones  Jack jack  1 loc  2 color   Green misc 12
nid 28 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
nid 29 0x4004c601 as  0 seq  1	  Line-out  None jack  4 loc  0 color   Res.C misc 6 [DISABLED]
nid 30 0x01456130 as  3 seq  0	 SPDIF-out  Jack jack  5 loc  1 color  Orange misc 1
nid 31 0x411111f0 as 15 seq  0	   Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]

 

Is this the right configuration? The mic doesn't work and I got audio delay (2 seconds)

 

<key>NodesToPatch</key>
		<array>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01014010</string>
				<key>Node</key>
				<integer>20</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01a19840</string>
				<key>Node</key>
				<integer>24</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02a19c50</string>
				<key>Node</key>
				<integer>25</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01813040</string>
				<key>Node</key>
				<integer>26</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02214c20</string>
				<key>Node</key>
				<integer>27</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01456130</string>
				<key>Node</key>
				<integer>30</integer>
			</dict>
		</array>

Share this post


Link to post
Share on other sites

Just install SoundFlower and the delay should be gone.

 

http://code.google.com/p/soundflower/downloads/list

 

You just need to add in NodesToPatch the nodes you want to patch, the ones that are fine with the default Config you don't need to add.

 

You just need

nid 26 0x01813060

 

If you want to turn pink and blue rear into line-out (for 5.1 audio)

nid 24 0x01019840
nid 26 0x01013060

Share this post


Link to post
Share on other sites

@buuo

 

Hey buuo,the error in node 26,you repeat the end of the strings.

 

your nodes to patch:

 

<key>NodesToPatch</key>
		<array>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01014010</string>
				<key>Node</key>
				<integer>20</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01a19840</string>
				<key>Node</key>
				<integer>24</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02a19c50</string>
				<key>Node</key>
				<integer>25</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01813040</string>-here the error
				<key>Node</key>
				<integer>26</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02214c20</string>
				<key>Node</key>
				<integer>27</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01456130</string>
				<key>Node</key>
				<integer>30</integer>
			</dict>
		</array>

 

The correct patching:

 

<key>NodesToPatch</key>
		<array>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01014010</string>
				<key>Node</key>
				<integer>20</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01a19840</string>
				<key>Node</key>
				<integer>24</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02a19c50</string>
				<key>Node</key>
				<integer>25</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01813060</string>
				<key>Node</key>
				<integer>26</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x02214c20</string>
				<key>Node</key>
				<integer>27</integer>
			</dict>
			<dict>
				<key>Codec</key>
				<integer>0</integer>
				<key>Config</key>
				<string>0x01456130</string>
				<key>Node</key>
				<integer>30</integer>
			</dict>
		</array>

 

You need put it line-out,use this string:0x01013060 in node 26

Share this post


Link to post
Share on other sites

Please see my post above

You just need to add in NodesToPatch the nodes you want to patch, the ones that are fine with the default Config you don't need to add.

 

The error is using default association 4 for node 26, it's already used in node 24.

Share this post


Link to post
Share on other sites
The mic works but I hear it in the speakers
Problem: audio feedback (Larsen effect), sound loop between input (microphone) and output (speakers).

Solution: mute iGain and increase iMix or Mic if microphone doesn't work

<key>iGain</key>
<string>[color="#FF0000"]0[/color]</string>

It can also be done in the prefPane. In some cases you may need to mute Monitor instead of iGain.

 

I'm not able to decrease the volume(of the mic)

Try to do it in VoodooHDA prefPane, once you find a good value you can set in Info.plist (MixerValues), but the value set in prefPane will be restored after reboot if you use voodoohdahelper (installed by the pkg).

Share this post


Link to post
Share on other sites

I found another solution to the delay problem (worked for me): delete com.apple.audio.DeviceSettings.plist and com.apple.audio.SystemSettings.plist from /Library/Preferences/Audio and reboot.

Share this post


Link to post
Share on other sites

Can you help me to enable HDMI audio with my graphics card? I have my speakers working fine, but I can't figure out my audio. This is my codec dump, which I think is what is needed.

Share this post


Link to post
Share on other sites

This is IDT codec dump. To use HDMI audio set the device and vendor ID in Info.plist, create one entry for each card in IOKitPersonalities.

 

See trick from official topic

4. If you have two sound cards, for example other one is HDMI output on Video card then made info.plist

	<key>IOKitPersonalities</key>
<dict>
	<key>SoundCard</key>
	<dict>
		<key>CFBundleIdentifier</key>
		<string>org.voodoo.driver.VoodooHDA</string>
		<key>IOClass</key>
		<string>VoodooHDADevice</string>
		<key>IOMatchCategory</key>
		<string>VoodooHDADevice</string>
[color="#ff0000"][b]			<key>IOPCIPrimaryMatch</key>
		<string>0x284b8086</string>   -- place here deviceID of your sound card (Chipset HDA device, not a codecID!)
[/b][/color]			<key>IOProviderClass</key>
		<string>IOPCIDevice</string>
		<key>IOUserClientClass</key>
		<string>VoodooHDAUserClient</string>
		<key>NodesToPatch</key>
		<array/>
		<key>VoodooHDAVerboseLevel</key>
		<integer>1</integer>
	</dict>
	<key>HDMI</key>
	<dict>
		<key>CFBundleIdentifier</key>
		<string>org.voodoo.driver.VoodooHDA</string>
		<key>IOClass</key>
		<string>VoodooHDADevice</string>
		<key>IOMatchCategory</key>
		<string>VoodooHDADevice</string>
[color="#ff0000"][b]			<key>IOPCIPrimaryMatch</key>
		<string>0x033f1002</string>   -- place here deviceID of your HDMI device on video card
[/b][/color]			<key>IOProviderClass</key>
		<string>IOPCIDevice</string>
		<key>IOUserClientClass</key>
		<string>VoodooHDAUserClient</string>
		<key>NodesToPatch</key>
		<array/>
		<key>VoodooHDAVerboseLevel</key>
		<integer>1</integer>
	</dict>
</dict>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×