How to disable NVIDIA Display Port High Definition Audio


Notice: Undefined index: host in C:\home\site\wwwroot\wp-includes\media.php on line 1372

Notice: Undefined index: host in C:\home\site\wwwroot\wp-includes\media.php on line 1372

Notice: Undefined index: host in C:\home\site\wwwroot\wp-includes\media.php on line 1372

Notice: Undefined index: host in C:\home\site\wwwroot\wp-includes\media.php on line 1372

Edit 2018-07-15: Updated Script at the bottom: 

Each time I update my NVIDIA Graphics drivers no matter if it’s via Windows Update or via Geforce Experience or manually (ok, manually I’m able to choose to NOT install the audio driver so a kind of workaround), it’s also reinstalling the NVIDIA Audio Driver so randomly one of my displayport connected monitors will be the new and default audio output rather than my Headphones.

Making it look like this, a long list with monitors (I’ve got 5 connected) and audio playback devices I don’t want to use.

nvidia audio driver showing all monitors as playback devices.

I’m then manually selecting the Headset and making it the default device for Playback and Communication. And most of the times also disabling all the other playback devices by right clicking them. It works but feels a bit annoying.

It’s also possible to disable the NVIDIA High Definition Drivers in Device Manager, which is once again manual work.

And next time the Graphics Driver is updated, the audio driver is reinstalled so the devices that were previously disabled are now enabled again.

Luckily, it’s possible to automate the task with Powershell.

Easy as that, we use Powershell to disable the NVIDIA High Definition Audio driver so the result is like this;

And my headphones are now the default device again.

To take this one step further I’ve also automated the script to be executed automatically at computer startup with the help of a Scheduled Task. So each time the driver is updated and I reboot, the audio settings are back to how I want them to be.

  1. Save the above Powershell script in a file called “C:\temp\disablenvidiaudio.ps1”
  2. Download and unpack this file: Disable Nvidia Audio  (It’s my Exported Scheduled Task settings).
    Important Settings if you want to create the task manually else ignore step 3 and go to step 4.
  3. Optional, manually create the scheduled task.
    1. run as System (an Admin Account will work too but as I wanted it to be easy for anyone to import it, i choose System).
    2. Run whether user is logged on or not
    3. Triggers: At Startup
    4. Action: Start Program
      1. program: cmd
      2. argument: /c powershell.exe -executionpolicy bypass -file C:\temp\disablenvidiaudio.ps1
  4. Open ‘Task Scheduler’ from Windows Start Menu (search for it if needed).
  5. Select menu item “Action” and then “Import Task…”
  6. Select the extracted file from Step 2.
  7. Modify any settings as you see fit.
  8. Click OK
  9. Problem Solved

Edit 2018-07-15

After writing this post I did find a very useful Powershell Module here: https://github.com/frgnca/AudioDeviceCmdlets it gives us some options to work with the Audio Devices, so I’ve modified my disablenvidiaudio.ps1 script to look like this;

 

 

Leave a Reply