Jump to content

VoodooHDA - problemas comuns


  • Please log in to reply
No replies to this topic

#1
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,858 posts
  • Gender:Male
  • Location:Brazil
Download:
http://code.google.c.../downloads/list

Tópico oficial:
http://www.projectos...p?showtopic=355

Como editar o arquivo Info.plist:
http://olarila.com/f...ic.php?f=3&t=69


Problema: kernel panic.
Solução 1: remova a AppleHDA e reinicie o sistema antes de instalar a VoodooHDA.
Solução 2: edite o arquivo Info.plist e substitua a chave IOPCIClassMatch por IOPCIPrimaryMatch e o seu valor pelo ID da sua placa.
Antes
ClassMatch</key>
<string>0x04030000&amp;0xffff0000</string> _linenums:0'><key>IOPCIClassMatch</key><string>0x04030000&amp;0xffff0000</string>
Depois
PrimaryMatch</key>
<string>0x3b568086</string> _linenums:0'><key>IOPCIPrimaryMatch</key><string>0x3b568086</string>
0xDeviceIDVendorID

Como descobrir o device e vendor ID
http://olarila.com/f...ic.php?f=6&t=25


Problema: a kext não funciona (geralmente quando o PC tem mais do que uma placa de som, ou áudio HDMI na placa de vídeo).
Solução: use a solução 2 para o problema de kernel panic. Se quiser usar as duas placas, crie uma entrada para cada uma em IOKitPersonalities.


Problema: som com chiado.
Solução 1: altere o formato da saída em Aplicativos - Utilitários - Configuração de Áudio e MIDI
Posted Image
Solução 2: ative a opção "Use SSE2" nas preferências da VoodooHDA
Posted Image
Também pode ser feito pela chave Vectorize no Info.plist
true/> _linenums:0'><key>Vectorize</key><true/>


Problema: controle de volume não funciona.
Solução: ative a chave VoodooHDAEnableVolumeChangeFix no Info.plist
true/> _linenums:0'><key>VoodooHDAEnableVolumeChangeFix</key><true/>


Problema: volume muito baixo.
Solução: ative a chave VoodooHDAEnableHalfVolumeFix no Info.plist
true/> _linenums:0'><key>VoodooHDAEnableHalfVolumeFix</key><true/>


Problema: microfonia (audio feedback ou Larsen effect), som do microfone sai nos falantes, em laptops causa um uivo agudo.
Solução: zere a chave iGain e ajuste as chaves iMix e Mic caso o microfone não funcione
0</string> _linenums:0'><key>iGain</key><string>0</string>
Também pode ser feito no painel de preferências da kext. Em alguns casos pode ser necessário zerar a chave Monitor ao invés da iGain.


Problema: atraso (delay) no som. Ao ajustar o volume, por exemplo, demora de 1 a 2 segundos para ouvir o som de teste.
Solução 1: remova os arquivos com.apple.audio.DeviceSettings.plist e com.apple.audio.SystemSettings.plist de /Library/Preferences/Audio e reinicie.
Solução 2: use o SoundFlower.


Problema: entradas ou saídas não aparecem.
Solução 1: procure uma kext já modificada para o seu codec.
Para VT1708S
http://www.insanelym...howtopic=231508
Para AD1988B
http://www.insanelym...howtopic=267898
Solução 2: ajuste a chave NodesToPatch baseado na saída do getDump (download no tópico oficial).
Exemplo
<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>
O Config (PinDefault) corresponde aos dois últimos caracteres de cada verb, na ordem inversa
01014410 = 21471c10 21471d44 21471e01 21471f01
|||||||+- Sequence
||||||+-- Default Association
|||||+--- Misc
||||+---- Color
|||+----- Connection Type
||+------ Default Device
|+------- Location
+-------- Port Connectivity _linenums:0'>0x01014410 = 21471c10 21471d44 21471e01 21471f01 |||||||+- Sequence ||||||+-- Default Association |||||+--- Misc ||||+---- Color |||+----- Connection Type ||+------ Default Device |+------- Location +-------- Port Connectivity

Exemplo mais detalhado
http://olarila.com/f...c.php?f=6&t=509

Informações sobre os codec verbs
Fonte: http://www.projectos...p?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

Posted Image





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy