Enable audio input in VirtualBox VM

Audio input not working in VirtualBox guest OS? Cannot record sound inside virtual machine, or cannot use my microphone? Following are some of the quick solutions that may fix the audio input issue in virtual machines created by VirtualBox.

Activate Audio Input in VirtualBox

When you encounter audio recording issues in the guest OS, the first thing you can check is the audio input option of VirtualBox. It is disabled by default. We have to manually turn it on before we can use the Microphone from the host.

If you use VirtualBox VM on a Mac, run the virtual machine software, select the VM or guest OS from the VM VirtualBox Manager, click Settings, switch to the Audio tab, you will see the settings as shown in below screenshot.

virtualbox for Mac audio settings

The Audio section here determines whether the VM will detect a connected sound card, and if the audio output should be played on the host system.

  • Enable Audio: The Enable Audio box should be checked in the first place otherwise all following settings won’t be available.
  • Host Audio Driver: The audio driver that Oracle VM VirtualBox uses on the host.
  • Audio Controller: You can choose between the emulation of an Intel AC’97 controller, an Intel HD Audio controller, or a SoundBlaster 16 card.
  • Enable Audio Output: Enables audio output only for the VM.
  • Enable Audio Input: Enables audio input only for the VM.

Make sure to select the Enable Audio Input option and click OK to save the change.

Authorise the access of microphone from Host

VirtualBox needs access to the Host’s sound system so that users can either enable or disable sound input and output for each virtual machine at will.

When you activate the Audio Input option in VirtualBox, you will get a prompt in the host machine saying VirtualBox is trying to access your microphone. You will have the option to allow or deny the access of your microphone in the Host OS. Grant VirtualBox the right to use your microphone.

You can control which apps that can access your microphone or  get VirtualBox to stop using microphones any time you like from the system settings on Mac or PC following below steps.

  • To control access to your microphone on Mac: choose Apple menu > System Preferences, click Security & Privacy, choose the Privacy tab, select Microphone, check the box next to the app to allow it to access your microphone or deselect the checkbox to turn off access for that app.
  • To control access to your microphone on Windows PC: Click the Start button and select Settings from the menu. Select Privacy & security from the left pane. In the right pane select Microphone. Once Microphone access is enabled, you can choose which apps can access your microphone there.

Install VirtualBox extension pack on the host

VirtualBox comes with an extension pack with many useful extra features. You can download and install the extension pack on the host to extend its capabilities, such as Oracle Cloud Infrastructure integration, USB 2.0 and USB 3.0 Host Controller, Host Webcam, VirtualBox RDP, PXE ROM, Disk Encryption, NVMe.

If you use an external USB microphone, you should install this VirtualBox extension pack on the host, PC or Mac.

Upgrade VirtualBox

If you are using an old and unsupported VirtualBox release, try upgrade to the latest version. Some reported or known issues or bugs may be fixed in the most recent version.

Upgrade host OS

If you run VirtualBox on an old and unsupported host OS, you may also consider upgrading the host OS.

Optimise resource allocation to the VM

Effective resource allocation will ensure all VMs complete jobs successfully and without draining excessive resources. We should try to maintain a healthy balance of virtual machine resources and resources between the host and VMs.

For example, do not assign too much RAM to the guest OS which will stretch the resources of the host PC. No modern OS runs well on one core. If you currently use only one virtual CPU, you may simply not have enough CPU to capture audio smoothly. Try increase the number of virtual CPU to 2 or more if the host system supports.