"reload" mac audio drivers without rebooting

155,790

Solution 1

EDIT: most likely only works for osx before 10.13

This is what you need,

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

But if you want to kill your coreaudio as well,

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

use with caution.
The grep target is written this way specifically to exclude grepping the grep process itself in the ps out.

Solution 2

Try typing this into Terminal:

sudo killall coreaudiod

This will kill the coreaudio process and restart it.

Solution 3

The "proper" way to restart coreaudiod is this: sudo launchctl kickstart -kp system/com.apple.audio.coreaudiod

Solution 4

Same solution but with different variation

sudo kill -9 `ps ax|grep 'coreaudio[a-z]' | awk '{print $1}'`
Share:
155,790
RyanM
Author by

RyanM

Updated on September 18, 2022

Comments

  • RyanM
    RyanM over 1 year

    I have an external audio interface (M-audio fast track c400). In order to get my macbook to recognize it (display in audio/midi setup), I have to reboot, which is a hassle. I have had other m-audio interfaces that were automatically detected when connected, and I'm pretty sure this one should be the same. Most posts around the internet suggest updating the OS or the software/firmware for the device. I have done all of those with no luck. I am currently running OS X 10.8.5.

    Is there a way to force OS X to reload the device? Preferably some command line voodoo that I could fire off quickly when needed or wrap up in a nice little shell script.

    Edit: Progress..

    The problem appears to be fixed now... I'm not sure how the following solved the problem. If you know, please comment!

    Inspired by @sbugert's answer, I started looking into other system daemon's that might do the trick if restarted. As a shot in the dark I killed coreservicesd. This caused the OS to become visibly unstable and I was eventually logged out automatically. To my surprise, when I logged back in, my audio interface was recognized..

    Based on that, I hypothesized that killing coreservicesd and logging out/in may be a possible (ugly) workaround. So I unplugged the interface and plugged it back in, and as expected, it was not recognized. So I killed coreservicesd and attempted to log out, however I could not get the system to log out due to the instability caused by killing coreservicesd. I eventually was forced to do a "hard" shutdown (i.e. holding the power button until it turns off). After booting up the macbook again, the interface is now recognized automatically every time I plug it in. I suspect that this "hard" reset may have solved the issue without all the shenanigans with the coreservices daemon, but I have no way to test that.

    If anyone can shed light on this, please do!

    Edit: It stopped working again so I don't know what's up.

  • RyanM
    RyanM over 10 years
    This is exactly what I was hoping for! ...but it doesn't seem to work. Upon executing the command I see all the internal audio devices disappear and reappear in Audio/MIDI setup, but the external interface does not appear with them. I also tried killall -KILL and killall -ABRT which have the same result. Perhaps something similar but lower-level needs to be done, like restarting/reloading all usb devices?
  • wizonesolutions
    wizonesolutions about 10 years
    The driver loading/unloading is the only thing that worked to make the Mac detect my headphones. THANK YOU!
  • vaughan
    vaughan over 9 years
    The kext changes caused my laptop to reset - I don't recommend it. The fix for me was to go to Settings > Sound and check the Output is set correctly.
  • Ali
    Ali over 9 years
    @vaughan what is your OSX version? any special hardware? like fancy microphone or speakers or audio devices with specially drivers?
  • dland
    dland over 9 years
    Don't use kill -9 just for the sake of it. A bare kill is perfectly sufficient to halt the daemon in normal circumstances. Indiscriminate use of -9 can lead to situations where a daemon shuts down so brutally that you can no longer restart it.
  • Aaron
    Aaron over 9 years
    This temporarily brings back my sound. In my case, I have had audio issues ever since using a Plantronics USB headset that was provided to test Cisco Jabber. Reloading the AppleHDA kext provides temporary sound but video still lags and stutters.
  • Ali
    Ali over 9 years
    @Aron you much have some software (driver) installed that (on boot?) replaces or changes things back. Ideally they also provided you with an uninstaller that removes that faulty software/driver.
  • VladFr
    VladFr over 9 years
    Works. I had to kill coreaudio first, probably because a track was playing - should've stopped it first. MacBook Pro 13, late 2013, 10.10.1
  • dev
    dev over 8 years
    @Ali why 'coreaudio[d]' and not just 'coreaudiod'?
  • Ali
    Ali over 8 years
    @dev I remember (at least at the time, I guess it was snow leopard?) there were also other processes running, that will get stuck and their name started with coreaudio but at least on El Capitan it looks they may not be present.
  • dev
    dev over 8 years
    @Ali but I mean from a regexp point of view, isn't coreaudio[d] exactly the same as coreaudiod? (ie a bracket expression with only one character is equivalent to that single character)
  • Ali
    Ali over 8 years
    @dev you are correct. It must have had a * at the end or something. Don't really remember. Maybe got deleted in editing or something. Good catch.
  • wisbucky
    wisbucky about 8 years
    This fixed my no sound effects problem.
  • Elon Zito
    Elon Zito about 8 years
    wow my issue was the internal speakers would stop working intermittently until i rebooted. thanks! this did the trick!
  • William Entriken
    William Entriken almost 8 years
    Using builtin speaker and this fixed when VLC caused all output to become silent. But also it caused volume control not to work.
  • xaxxon
    xaxxon almost 8 years
    Just restarting core audio solved my problem... whatever my problem was. My system just hung for 10s or so and then recovered except for sound. OS X: 10.11.5 -- but volume control doesn't work. Reloading kext's fixed it all the way.
  • DeboraThaise
    DeboraThaise over 7 years
    Did not restart for me. Sound is just off/disabled now.
  • Sergei Krivonos
    Sergei Krivonos over 7 years
    (kernel) Can't unload kext com.apple.driver.AppleHDA; classes have instances: (kernel) Kext com.apple.driver.AppleHDA class AppleHDATDMBusManager has 1 instance. (kernel) Kext com.apple.driver.AppleHDA class AppleHDATDMBusManagerCS4208 has 2 instances. Failed to unload com.apple.driver.AppleHDA - (libkern/kext) kext is in use or retained (cannot unload).
  • ayrad
    ayrad over 7 years
    Did not restart for me as well. Any specific command to start it ?
  • Hannes Karppila
    Hannes Karppila over 7 years
    @sequoiamcdowell This should work: apple.stackexchange.com/questions/187983/…
  • swifty
    swifty over 7 years
    That is great, thanks. It happens most times I do not disconnect my bluetooth headphone properly, so I have bound those commands to an alias of restartAudio in my .zsh_profile !
  • Scott Ahten
    Scott Ahten over 7 years
    Some applications do not handle the audio daemon going away very well. For example, iTunes may just show a grayed out volume control until you restart it.
  • Aidin
    Aidin about 6 years
    Thanks @ali it finally saved me a daily restart I had for the past 3 months of my life!
  • Patrick M
    Patrick M almost 6 years
    I get the same error messages as @Sergei. After doing so, my sound is completely disabled. The icon is grayed out, the function keys don't work. I have to reboot to bring everything back.
  • nzajt
    nzajt over 5 years
    this is the correct answer for 10.13, my issue seems to be caused by Spotify.
  • Cornelius Roemer
    Cornelius Roemer over 4 years
    why is this answer so low - it works for me? Spotify may also be the culprit for me.
  • Karlo
    Karlo over 3 years
    Follow-up question if it does not work on High Sierra here.
  • bappak
    bappak over 3 years
    This worked like a charm for me on macOS Mojave (10.14.6 (18G6032)).
  • Sridhar Sarnobat
    Sridhar Sarnobat almost 3 years
    This is the only thing that worked for me on Catalina.
  • Patrick Mutuku
    Patrick Mutuku over 2 years
    Big Sur as well
  • Vik
    Vik about 2 years
    Monterey too. Nothin else worked.