«Recharger» les pilotes audio mac sans redémarrer

78

J'ai une interface audio externe (c-piste rapide M-audio). Pour que mon macbook le reconnaisse (affichage dans la configuration audio / midi), je dois redémarrer, ce qui est fastidieux. J'ai eu d'autres interfaces m-audio qui ont été automatiquement détectées lors de la connexion, et je suis à peu près sûr que celle-ci devrait être la même. La plupart des publications sur Internet suggèrent de mettre à jour le système d'exploitation ou les logiciels / micrologiciels de l'appareil. J'ai fait tous ceux sans chance. J'utilise actuellement OS X 10.8.5.

Existe-t-il un moyen de forcer OS X à recharger le périphérique? De préférence, une ligne de commande vaudou que je pourrais lancer rapidement en cas de besoin ou résumer dans un joli petit script shell.

Edit: Progress ..

Le problème semble être résolu maintenant ... Je ne suis pas sûr de savoir comment le problème suivant a été résolu. Si vous le savez, s'il vous plaît commentez!

Inspiré par la réponse de @ sbugert, j'ai commencé à chercher d'autres démons système qui pourraient faire l'affaire si ils étaient redémarrés. Comme un coup dans le noir j'ai tué coreservicesd. Cela a rendu le système d'exploitation visiblement instable et j'ai finalement été déconnecté automatiquement. À ma grande surprise, lorsque je me suis connecté à nouveau, mon interface audio a été reconnue.

Sur cette base, j’ai émis l’hypothèse que tuer coreservicesdet se déconnecter / se connecter pourrait constituer une solution de contournement (laide). J'ai donc débranché l'interface, puis rebranchée et, comme prévu, elle n'a pas été reconnue. J'ai donc tué coreservicesd et essayé de me déconnecter, mais je ne pouvais pas obtenir la déconnexion du système en raison de l'instabilité provoquée par la mort de coreservicesd. J'ai finalement été obligé de faire un arrêt «dur» (c.-à-d. En maintenant le bouton d'alimentation jusqu'à ce qu'il s'éteigne). Après avoir redémarré le macbook, l'interface est maintenant automatiquement reconnue à chaque fois que je le branche. Je suppose que cette réinitialisation "matérielle" a peut-être résolu le problème sans résoudre tous les problèmes avec le démon coreservices, mais je n'ai aucun moyen de le tester. .

Si quelqu'un peut nous éclairer, faites-le!

Edit: Il a cessé de fonctionner à nouveau, donc je ne sais pas ce qui se passe.

RyanM
la source

Réponses:

92

EDIT: ne fonctionne probablement que pour osx avant le 10.13

C'est ce dont vous avez besoin

sudo kextunload /System/Library/Extensions/AppleHDA.kext
sudo kextload /System/Library/Extensions/AppleHDA.kext

Mais si vous voulez tuer votre coreaudio aussi,

 ps aux | grep 'coreaudio[d]' | awk '{print $2}' | xargs sudo kill

utiliser avec précaution.
La grepcible est écrite de cette manière spécifiquement pour exclure le grepprocessus lui-même dans la pssortie.

Ali
la source
6
Le chargement / déchargement du pilote est la seule chose qui a permis au Mac de détecter mes écouteurs. MERCI!
wizonesolutions
Les modifications apportées à kext ont entraîné la réinitialisation de mon ordinateur portable. Je ne le recommande pas. Le correctif pour moi était d'aller voir Settings > Soundet de vérifier que la sortie est correctement définie.
vaughan
1
Travaux. Je devais d'abord tuer coreaudio, probablement parce qu'une piste était en cours de lecture - aurait dû l'arrêter en premier. MacBook Pro 13, fin 2013, le 10.10.1
Vladfr
10
(noyau) Impossible de décharger kext com.apple.driver.AppleHDA; les classes ont des instances: (noyau) Kext com.apple.driver.AppleHDA, classe AppleHDATDMBusManager a 1 instance. (noyau) Kext com.apple.driver.AppleHDA, classe AppleHDATDMBusManagerCS4208 a 2 instances. Échec du déchargement de com.apple.driver.AppleHDA - (libkern / kext) kext est en cours d'utilisation ou conservé (impossible de décharger).
Sergei
3
Je reçois les mêmes messages d'erreur que @Sergei. Après cela, mon son est complètement désactivé. L'icône est grisée, les touches de fonction ne fonctionnent pas. Je dois redémarrer pour tout ramener.
Patrick M
68

Essayez de taper ceci dans Terminal:

sudo killall coreaudiod

Cela va tuer le processus coreaudio et le redémarrer.

sbugert
la source
1
Cela a résolu mon problème de non effets sonores.
Wisbucky
2
wow mon problème était les haut-parleurs internes cesseraient de fonctionner par intermittence jusqu'à ce que je redémarre. Merci! cela a fait le tour!
Elon Zito
2
N'a pas redémarré pour moi. Le son est juste désactivé / désactivé maintenant.
séquoia mcdowell
2
N'a pas redémarré pour moi aussi. Une commande spécifique pour le démarrer?
Ayrad
2
@sequoiamcdowell Cela devrait fonctionner: apple.stackexchange.com/questions/187983/…
Hannes Karppila
0

Même solution mais avec des variations différentes

sudo kill -9 `ps ax|grep 'coreaudio[a-z]' | awk '{print $1}'`
utilisateur1573604
la source
4
Ne l'utilisez pas kill -9uniquement pour le plaisir. Un bare killest parfaitement suffisant pour arrêter le démon dans des circonstances normales. L'utilisation sans discernement de -9peut conduire à des situations dans lesquelles un démon s'arrête si brutalement que vous ne pouvez plus le redémarrer.
Dland
-1

J'ai découvert ici que si je sélectionnais un autre périphérique avant de déconnecter l'interface (la Fast Track C400 également), je pouvais le reconnecter ultérieurement sans problème. Mais si j'utilise la procédure rapide, puis la déconnecte, il ne pourra pas se reconnecter avant de le redémarrer.

Davi Raubach
la source