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

"ricaricare" i driver audio del mac senza riavviare

Ho un'interfaccia audio esterna (M-audio fast track c400). Per far sì che il mio macbook la riconosca (visualizzazione nella configurazione audio/midi), devo riavviare, il che è una seccatura. Ho avuto altre interfacce m-audio che sono state rilevate automaticamente quando sono state collegate, e sono abbastanza sicuro che questo dovrebbe essere lo stesso. La maggior parte dei post su internet suggerisce di aggiornare il sistema operativo o il software/firmware del dispositivo. Ho fatto tutte queste cose senza fortuna. Attualmente sto eseguendo OS X 10.8.5.

C'è un modo per forzare OS X a ricaricare il dispositivo? Preferibilmente un qualche voodoo della linea di comando che potrei lanciare rapidamente quando necessario o avvolgere in un piccolo script di shell.

Modifica: Progresso…

Il problema sembra essere risolto ora… Non sono sicuro di come quanto segue abbia risolto il problema. Se lo sai, per favore commenta!

Ispirato dalla risposta di @sbugert, ho iniziato a cercare altri demoni di sistema che potrebbero fare il trucco se riavviati. Come uno sparo nel buio ho ucciso coreservicesd. Questo ha fatto sì che il sistema operativo diventasse visibilmente instabile e alla fine sono stato disconnesso automaticamente. Con mia sorpresa, quando mi sono connesso di nuovo, la mia interfaccia audio è stata riconosciuta.

Sulla base di questo, ho ipotizzato che uccidere coreservicesd e fare il log out/in possa essere un possibile (brutto) workaround. Così ho scollegato l'interfaccia e l'ho ricollegata e, come previsto, non è stata riconosciuta. Allora ho ucciso coreservicesd e ho tentato di fare il log out, ma non potevo far uscire il sistema a causa dell'instabilità causata dall'uccisione di coreservicesd. Alla fine sono stato costretto a fare uno spegnimento “duro” (cioè tenendo premuto il pulsante di accensione finché non si spegne). Dopo aver riavviato il macbook, l'interfaccia viene ora riconosciuta automaticamente ogni volta che la collego. Ho il sospetto che questo reset “duro” possa aver risolto il problema senza tutti i trucchi con il demone coreservices, ma non ho modo di verificarlo.

Se qualcuno può far luce su questo, per favore lo faccia!

Edit: Ha smesso di funzionare di nuovo quindi non so cosa sia successo.

Risposte (4)

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

EDIT: molto probabilmente funziona solo per osx prima del 10.13

Questo è quello che ti serve,

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

ma se vuoi uccidere anche il coreaudio,

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

usa con cautela.
L'obiettivo grep è scritto in questo modo specificamente per escludere il grepping del processo grep stesso nell'uscita ps.

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

Prova a digitare questo nel terminale:

sudo killall coreaudiod

Questo ucciderà il processo coreaudio e lo riavvierà.

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

Stessa soluzione ma con variazione diversa

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

Qui ho scoperto che se seleziono un altro dispositivo prima di scollegare l'interfaccia (anche il Fast Track C400), posso ricollegarlo in seguito senza problemi. Ma se sto usando il fast track e poi lo scollego, non può connettersi di nuovo fino al riavvio.

Domande correlate

6
12
10
5
8