VirtualBox

Ticket #17308 (closed defect: fixed)

Opened 2 years ago

Last modified 21 months ago

DirectSound audio driver fails to initialize (Windows XP Pro x64 Host)

Reported by: TeconMoon Owned by: pentagonik
Component: audio Version: VirtualBox 5.2.0
Keywords: Cc:
Guest type: Windows Host type: Windows

Description

Hi there, first off I realize I am filing a ticket for a host type that is technically unsupported (Windows XP Pro x64 Edition, equivalent to Windows Server 2003) so if this isn't something worth your time to troubleshoot feel free to close it straight-away.

I've installed VirtualBox 5.2.2 on my machine running the 64-bit version of Windows XP, and I've had no trouble setting up a Windows 10 Virtual Machine at all except for getting the sound to initialize.

When I start any VM at all (even an empty one with no hard drive) I instantly receive an error that "Host audio backend initialization has failed". See attached screenshots and logs. The logs don't seem to tell me much that's useful except for that it failed to attach to the driver (line 607).

Windows DirectSound is the only host audio driver available to me besides null, and changing the Audio Controller didn't change the situation at all.

Anyways, if this is something you are willing to assist me in troubleshooting that would be great! This machine is mostly a test build that I've been messing with to see what I can do, which is why I'm marking the priority as trivial.

Please let me know if there's any other information I can provide.

Attachments

AudioError.PNG Download (11.2 KB) - added by TeconMoon 2 years ago.
Screenshot of initialization error
VBox.log Download (106.6 KB) - added by TeconMoon 2 years ago.
VirtualBox Log File from VM named "Windows 10 Pro"
VBoxHardening.log Download (449.4 KB) - added by TeconMoon 2 years ago.
VirtualBox Hardening Log

Change History

Changed 2 years ago by TeconMoon

Screenshot of initialization error

Changed 2 years ago by TeconMoon

VirtualBox Log File from VM named "Windows 10 Pro"

Changed 2 years ago by TeconMoon

VirtualBox Hardening Log

comment:1 Changed 2 years ago by TeconMoon

Quick update: I uninstalled 5.2.2 completely and installed 5.1.30, and DirectSound was able to properly initialize with that version.

comment:2 Changed 23 months ago by GnomeUser

See the same error on VBox 5.2.2 and Win2003server host

00:00:08.057617 Audio: Initializing DirectSound audio driver
00:00:08.057617 Audio: Failed to attach to driver 0bf980d8 below (flags=0x0), rc=VERR_AUDIO_BACKEND_INIT_FAILED
00:00:08.057617 Audio: Initializing NULL driver
00:00:08.057617 VM: Raising runtime error 'HostAudioNotResponding' (fFlags=0x0)
00:00:08.057617 Console: VM runtime error: fatal=false, errorID=HostAudioNotResponding message="Host audio backend initialization has failed. Selecting the NULL audio backend with the consequence that no sound is audible"

comment:3 Changed 22 months ago by GnomeUser

The bug is caused by VBoxMMNotificationClient.cpp

VBoxMMNotificationClient class was added in september and its initialisation fails on XP and 2003 server. There is no MMDeviceEnumerator on XP and 2003 server.

In the DrvHostDSound.cpp in function drvHostDSoundConstruct it should just ignore if VBoxMMNotificationClient initialisation fails. Or log a message and ignore. It is not important and optional. In the code it was even put behind the VBOX_WITH_AUDIO_MMNOTIFICATION_CLIENT conditional compilation block.

The class VBoxMMNotificationClient is poorly written by the way, its field m_fRegisteredClient is never assigned to true and UnregisterEndpointNotificationCallback is never called.

Please pass this information to developers.

Last edited 22 months ago by GnomeUser (previous) (diff)

comment:4 Changed 22 months ago by pentagonik

First, thanks for the analysis. As you stated correctly in the ticket description, Windows XP is not supported as a host platform anymore. Also, Windows XP 64 is rather exotic, which even adds to it :-)

I'll have a look into the issue.

comment:5 Changed 22 months ago by pentagonik

  • Owner set to pentagonik
  • Status changed from new to assigned

comment:6 Changed 22 months ago by pentagonik

Added a runtime check to the driver; should be available in the next upcoming 5.2 maintenance release.

comment:7 Changed 22 months ago by GnomeUser

This is not 64 bit specific. All versions of XP and 2003 hosts affected.

comment:8 Changed 22 months ago by socratis

Just another user seems that they had the same issue, in the forums:  https://forums.virtualbox.org/viewtopic.php?f=6&t=86167

comment:9 Changed 22 months ago by pentagonik

@GnomeUser Yes, but that still doesn't change the fact that XP / 2003 isn't supported as a host anymore :-)

comment:10 Changed 21 months ago by GnomeUser

The OS version check seems to be an overkill, who knows what other newer windows system may lack this MMDeviceEnumerator API. But it solves the issue for 2003 server host. I've tested it on 5.2.6 r120293

comment:11 Changed 21 months ago by pentagonik

Good, thanks for verifying! Closing.

comment:12 Changed 21 months ago by pentagonik

  • Status changed from assigned to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use