VirtualBox

Opened 6 years ago

Closed 6 years ago

#17308 closed defect (fixed)

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

Reported by: Abdul-Khader Welaye 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 (3)

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

Download all attachments as: .zip

Change History (15)

by Abdul-Khader Welaye, 6 years ago

Attachment: AudioError.PNG added

Screenshot of initialization error

by Abdul-Khader Welaye, 6 years ago

Attachment: VBox.log added

VirtualBox Log File from VM named "Windows 10 Pro"

by Abdul-Khader Welaye, 6 years ago

Attachment: VBoxHardening.log added

VirtualBox Hardening Log

comment:1 by Abdul-Khader Welaye, 6 years ago

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 by GnomeUser, 6 years ago

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 by GnomeUser, 6 years ago

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 6 years ago by GnomeUser (previous) (diff)

comment:4 by pentagonik, 6 years ago

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 by pentagonik, 6 years ago

Owner: set to pentagonik
Status: newassigned

comment:6 by pentagonik, 6 years ago

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

comment:7 by GnomeUser, 6 years ago

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

comment:8 by Socratis, 6 years ago

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 by pentagonik, 6 years ago

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

comment:10 by GnomeUser, 6 years ago

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 by pentagonik, 6 years ago

Good, thanks for verifying! Closing.

comment:12 by pentagonik, 6 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use