Problems with Creative Sound Blaster X-Fi Surround 5.1 Pro (SB1095)

Server: Windows 10 1709 x64. VirtualHere Server 3.6.6 x64 (tried on both a VM inside ESXi and a physical computer, same result)
Client: Windows 10 1709 x64. VirtualHere Client 4.5.1 x64.

Log:
2018-05-10 22:39:30 INFO :>>> Starting VirtualHere USB Server v3.6.5 (Built: Apr 26 2018, 17:54:31)<<<
2018-05-10 22:39:30 INFO :Using configuration config.ini
2018-05-10 22:39:30 INFO :Server licensed to=unlicensed max_devices=1
2018-05-10 22:39:30 INFO :Listening on all network interfaces at TCP port 7575 (IPv6 dual-stack)
2018-05-10 22:39:30 INFO :Found High speed device [041e:30df] "Creative Technology Ltd, SB X-Fi Surround 5.1 Pro" at address 1
2018-05-10 22:40:10 INFO :192.168.1.150 connected as connection 1
2018-05-10 22:40:16 INFO :Device 1 [041e:30df] BOUND to connection 1

Statistics: https://puu.sh/Ak49R.png

Clicking on "Stop using this device" will lead to the VirtualHere Server crashing https://puu.sh/Ak5c4.png

Event Viewer log after clicking on "Stop using this device":
Faulting application name: vhusbdwin64.exe, version: 3.6.5.0, time stamp: 0x5ae185cb
Faulting module name: ntdll.dll, version: 10.0.16299.334, time stamp: 0xe508fc03
Exception code: 0xc0000374
Fault offset: 0x00000000000f879b
Faulting process id: 0x2770
Faulting application start time: 0x01d3e8ea6ed3ff8b
Faulting application path: C:\Users\\Downloads\vhusbdwin64.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: 5eb53f04-cc8b-4dcc-87d8-a15e50542368
Faulting package full name:
Faulting package-relative application ID:

Then, the device is in limbo, can no longer be seen by the Server's Windows (tried to restart Windows, unplug/plug the USB cable, another USB port, reinstall drivers). But VirtualHere Server can still see it.

On the other hand, this same device works if the server is the NVIDIA Shield TV 2017 (Android TV). The only problem is the popping noises due to network jitter.

#2

Here is the Event Viewer log for 3.6.6:

Faulting application name: vhusbdwin64.exe, version: 3.6.6.0, time stamp: 0x5af4241a
Faulting module name: ntdll.dll, version: 10.0.16299.334, time stamp: 0xe508fc03
Exception code: 0xc0000374
Fault offset: 0x00000000000f879b
Faulting process id: 0x1514
Faulting application start time: 0x01d3e8f13de5a795
Faulting application path: C:\Users\Username\Downloads\vhusbdwin64.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: 19b35139-06fb-4737-b4a3-e6dcb7766d8e
Faulting package full name:
Faulting package-relative application ID:

#3

After playing around with it, I found a way to get it out of limbo:
1. Run a client on the same machine as the server.
2. Use the device via the client.
3. Wait for the device (through VirtualHere) to register with Windows).
4. Stop using the device on the client.
5. Now Windows will see the device again (directly).

#4

Thanks for the info. So basically you are saying the device works ok until you stop using, then the virtualhere server crashes. But if after it crashes if you start the server again and then use the device via virtualhere on the client running on the same pc as the server it reconnects the device correctly back to the windows?

#5

It works, kind of. The Client's Windows sees the device, and when I play something like music, I can hear sounds coming from the speakers attached to the device, but I can't call it music because it is distorted beyond recognition.

Everything else is as you resumed.

Also, as mentioned, the soundcard works better with the NVIDIA Shield TV as the Server, but popping noises still make it not really enjoyable. Please look into this as well.

I forgot to note, everything is connected via an 1Gbps wired LAN.

#6

I meant "summarized" not "resumed".

#7

Yes for high quality audio its best to use a linux server and you will still likely get pops because of network latency.

There is no way around the pops etc until the device manufacturers provide "Media Agnostic USB" drivers, i havent seen any of these drivers yet.

#8

Is it possible to add buffering to smooth out the latency? Can be off or adaptive or manually entered.

#9

No, its technically impossible to add buffering at the usb level without special drivers from the manufacturer.