2013-09-19 06:59:16 +0000 2013-09-19 06:59:16 +0000
83
83

"Herlaad" mac audio drivers zonder opnieuw op te starten

Ik heb een externe audio-interface (M-audio fast track c400). Om mijn macbook het te laten herkennen (weergave in audio/midi setup), moet ik opnieuw opstarten, wat een gedoe is. Ik heb andere m-audio interfaces gehad die automatisch werden gedetecteerd als ze werden aangesloten, en ik ben er vrij zeker van dat dit met deze ook zo zou moeten zijn. De meeste berichten op het internet suggereren het updaten van het OS of de software/firmware voor het apparaat. Ik heb dat allemaal gedaan, maar zonder succes. Ik draai momenteel OS X 10.8.5.

Is er een manier om OS X te dwingen het apparaat opnieuw te laden? Bij voorkeur een command line voodoo die ik snel kan uitvoeren als het nodig is of in een leuk shell scriptje kan verpakken.

Edit: Progress…

Het probleem lijkt nu opgelost te zijn… Ik weet niet zeker hoe het volgende het probleem heeft opgelost. Als u het weet, geef dan commentaar!

Geïnspireerd door @sbugert’s antwoord, ben ik gaan kijken naar andere systeem daemon’s die de truc zouden kunnen doen als ze opnieuw opgestart worden. Als een schot in het duister doodde ik coreservicesd. Dit zorgde ervoor dat het OS zichtbaar onstabiel werd en ik werd uiteindelijk automatisch uitgelogd. Tot mijn verbazing, toen ik weer inlogde, werd mijn audio interface herkend…

Gebaseerd op dat, veronderstelde ik dat het doden van coreservicesd en uit/inloggen een mogelijke (lelijke) workaround zou kunnen zijn. Dus ontkoppelde ik de interface en plugde hem terug in, en zoals verwacht, werd hij niet herkend. Dus doodde ik coreservicesd en probeerde uit te loggen, maar ik kon het systeem niet laten uitloggen door de instabiliteit veroorzaakt door het doden van coreservicesd. Ik was uiteindelijk gedwongen om een “harde” shutdown te doen (d.w.z. de power knop ingedrukt houden tot hij uitgaat). Na het opnieuw opstarten van de macbook, wordt de interface nu automatisch herkend elke keer als ik hem inplug. Ik vermoed dat deze “harde” reset het probleem heeft opgelost zonder al de shenanigans met de coreservices daemon, maar ik heb geen manier om dat te testen.

Als iemand hier licht op kan werpen, graag!

Edit: Het is weer gestopt met werken, dus ik weet niet wat er aan de hand is.

Antwoorden (4)

101
101
101
2014-04-17 15:33:52 +0000

EDIT: werkt waarschijnlijk alleen voor osx voor 10.13

Dit is wat je nodig hebt,

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

Maar als je ook je coreaudio wilt doden,

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

gebruik het met voorzichtigheid.
De grep target is speciaal zo geschreven om uit te sluiten dat het grep proces zelf in de ps out wordt gescand.

77
77
77
2013-09-19 13:31:42 +0000

Probeer dit eens in te typen in Terminal:

sudo killall coreaudiod

Dit zal het coreaudio proces stoppen en opnieuw opstarten.

0
0
0
2014-01-07 03:10:12 +0000

Zelfde oplossing maar met andere variatie

sudo kill -9 `ps ax|grep 'coreaudio[a-z]' | awk '{print $1}'`
-1
-1
-1
2019-06-28 23:23:16 +0000

Hier heb ik ontdekt dat als ik een ander apparaat selecteer voordat ik de interface loskoppel (ook Fast Track C400), ik het later zonder probleem weer kan aansluiten. Maar als ik de Fast Track gebruik en hem dan loskoppel, kan hij pas weer verbinding maken als ik hem opnieuw opstart.