Soundblaster X4 DAC requires exclusive mode to play audio (ref#DHN6FA)

Hi! What’s not quite right with Roon?

· None of the above quite fits

None of the above quite fits

· None of these quite match

Tell us what's going on

· When using a Soundblaster x4 usb dac, i am required to use exclusive mode in order for music to play. If i disable exclusive mode, it will spin through all the tracks in the list very quickly but not play any audio. Exclusive mode is nice in some situations, but I don't want to use it on my personal computer as I am often doing other things at the same time.

Tell us about your home network

· windows server computer running roon server, there are several switches between it and the computer discussed in this topic. It's a 1gb connection between them. i only use VPN to access home network from outside, the home network does not use a VPN to connect to outside servers.

Hello @Stuart_Keough ,

Welcome to the forum. Can you please confirm if there are any other applications that could have Exclusive Mode access to this DAC? Or do you by any chance have Exclusive Access enabled in Windows itself for the DAC? If Windows or another application is holding the DAC with Exclusive mode, then Roon would not be able to play to it. Please let us know if this helps, I will also provide a guide on Exclusive mode below:

Hi @noris thank you for your response! Yes I have tried with windows exclusive mode both enabled and disabled. All combinations result in skipping through tracks with no playback except when windows is enabled and roon is enabled.

windows exclusive off + roon on = fail

windows off + roon off = fail

windows on + roon off = fail

I do not think anything else is using exclusive mode as I guess it isn’t possible if windows has it disabled, right? I can reproduce this immediately on booting up.

Hi @Stuart_Keough,

Thank you for the detailed combinations testing. A few things to check in your Sound Blaster Command Center:

  1. Output mode — What output mode is selected in Sound Blaster Command Center — Stereo, 5.1, or something else? Could you also check what channel configuration is set in Roon for this device? Go to Settings → Audio → click the gear on your Sound Blaster zone → Device Setup. A mismatch between the two can cause silent skip behavior.

  2. Direct Mode — Is Direct Mode enabled or disabled in Sound Blaster Command Center? If it’s off, the Sound Blaster software is applying its own processing on top of Roon’s output. Try enabling Direct Mode, which bypasses all that and passes audio straight through.

  3. SBX Profile and Equalizer — Are any effects like SBX Profile or EQ active in the Sound Blaster app? If so, try disabling them temporarily and test playback.

Let us know what you find!

I figured this was next so:

06/03 09:48:04 Info: \[Stuart Computer\] \[zoneplayer\] Open result (Queueing): Result\[Status=Success\]
06/03 09:48:05 Debug: \[easyhttp\] \[9078\] GET to https://api.roonlabs.net/metadatatext/1/blobs?objectId=191:0:13158260&type=biography&sourceLangs=Rovi-albums:en,Wikipedia:en,Rovi-artists:en,Rovi-compositions:en&tidal=max returned after 413 ms, status code: 200, request body size: 0 B
06/03 09:48:05 Trace: \[Stuart Computer\] \[HighQuality, 16/44 FLAC => 16/44\] \[100% buf\] \[LOADING @ 0:00\] Let Me Find Thee (Instrumental Version) - Indelible Grace Music
06/03 09:48:05 Info: \[Stuart Computer\] \[zoneplayer\] Playing: C:\\Users\\Server\\Music\\Indelible Grace Music\\Joy Beyond The Sorrow - Instrumental Versions\\Indelible Grace Music - Joy Beyond The Sorrow - Instrumental Versions - 14 Let Me Find Thee (Instrumental Version).flac
06/03 09:48:05 Info: \[Stuart Computer\] \[zoneplayer\] Queueing: C:\\Users\\Server\\Music\\Indelible Grace Music\\The Hymn Sing Live - Instrumental Versions\\Indelible Grace Music - The Hymn Sing Live - Instrumental Versions - 07 In The Hours (Live Instrumental).flac
06/03 09:48:05 Info: \[Stuart Computer\] \[zoneplayer\]     Open Result (Playing):Result\[Status=Success\]
06/03 09:48:05 Info: \[Stuart Computer\] \[zoneplayer\] Starting playback
06/03 09:48:05 Trace: \[Stuart Computer\] \[zoneplayer/raat\] StartStream Sooloos.Broker.Transport.RaatZonePlayer+Endpoint: StreamFormat(channels=2, bitspersample=16, samplerate=44100, isdts=False) => StreamFormat(channels=2, bitspersample=16, samplerate=44100, isdts=False) streamid=1041929105
06/03 09:48:05 Trace: \[Sound Blaster X4\] \[raatclient\] SENT \[26\]{"request":"setup","format":{"sample_type":"pcm","sample_rate":44100,"bits_per_sample":16,"channels":2,"sample_subtype":"none"},"wire_codec":"flac"}
06/03 09:48:05 Info: \[zone Stuart Computer\] \[zone\] LL_PlaybackStarted: fresh start, no suspended or persisted state. trackId=338482
06/03 09:48:05 Info: \[zone Stuart Computer\] OnPlayFeedback Playing
06/03 09:48:05 Trace: \[Stuart Computer\] \[HighQuality, 16/44 FLAC => 16/44\] \[100% buf\] \[PLAYING @ 0:00\] Let Me Find Thee (Instrumental Version) - Indelible Grace Music
**06/03 09:48:05 Trace: \[Sound Blaster X4\] \[raatclient\] GOT \[26\] {"message":"RAAT__OUTPUT_PLUGIN_STATUS_FORMAT_NOT_SUPPORTED","status":"UnexpectedError"}**
06/03 09:48:05 Warn: \[Stuart Computer\] \[zoneplayer/raat\] failed to setup any endpoints..giving up
06/03 09:48:05 Info: \[audio/env\] \[zoneplayer -> stream\] All streams were disposed
06/03 09:48:05 Info: \[audio/env\] \[zoneplayer -> stream -> endpoint\] All streams were disposed
06/03 09:48:05 Info: sleep 0ms after flush
06/03 09:48:05 Warn: \[zone Stuart Computer\] Track Stopped Due to Error
06/03 09:48:05 Info: \[zone Stuart Computer\] OnPlayFeedback StoppedEndOfMediaUnnatural
06/03 09:48:05 Debug: \[zone Stuart Computer\] \_Advance (Track)
06/03 09:48:05 Trace: \[zone Stuart Computer\] queue got oversized. trimming 1 items from start
06/03 09:48:05 Debug: \[zone Stuart Computer\] Remove(1 items, for_replace=False)
06/03 09:48:05 Info: after removeall ordered count 8000 shuffle count 8000

This card (well external DAC) doesn’t seem to support 44.1 - is that possibly the reason? it can do 48/96/192 in both 16 and 24 bit … but not 44/88/176

I thought Roon would transcode in this case?

@vadim thanks for the reply!

I do not have the creative app installed right now I think, or if it is its not opening. I will try a reinstall in a sec. That said I did have windows audio configured as 5.1 for this device. I tried changing to stereo and no change :frowning: When i explore roon settings I only see ‘multichannel mixing’ which i have set as downmix as needed. I tried channel mapping only and it still behaved the same way.

Direct mode was enabled, I tried to disable it and got the same result :frowning:

I’m not sure about the app as it wont’ open - (ill reinstall it) but i did have signal enhancements enabled in the windows settings. I disabled and .. same result :frowning:

Hi @Stuart_Keough,

Those logs make the cause clear. The key line is:

RAAT__OUTPUT_PLUGIN_STATUS_FORMAT_NOT_SUPPORTED at 44100 Hz / 16-bit

The Sound Blaster X4 driver does not support the 44.1 kHz sample rate family (44100/88200/176400 Hz) — only 48/96/192 kHz. Each time Roon tries to open a 44.1 kHz stream, the device rejects it and Roon skips to the next track. With both exclusive modes enabled, Roon negotiates the rate directly and locks to 48 kHz, which is why that combination works.

Fix — enable DSP Sample Rate Conversion in Roon:

  1. Muse
  2. Enable Sample Rate Conversion
  3. You can play around this setting like “For compatibility only” or “Custom.”

This will resample all 44.1 kHz content before it reaches the device, and you should be able to play without exclusive mode.

Hi @vadim thank you! I agree this seems like the cause. I did as you said (i cannot enable custom though, its stuck on for compatibility only which is suspicious to me) but it still fails.
I was on 24bit / 192. I changed to 16/48khz because I figured that would be better supported but the same result.

Log

6/04 12:52:05 Info: [Stuart Computer] [zoneplayer] Queueing: C:\Users\Server\Music\Indelible Grace Music\Wake Thy Slumbering Children - Indelible Grace V\01 Indelible Grace Music - Cling to the Crucified.flac
06/04 12:52:05 Trace: [library] endmutation in 382ms
06/04 12:52:05 Info: [Stuart Computer] [zoneplayer] Open Result (Playing):Result[Status=Success]
06/04 12:52:05 Info: [Stuart Computer] [zoneplayer] Starting playback
06/04 12:52:05 Trace: [Stuart Computer] [zoneplayer/raat] StartStream Sooloos.Broker.Transport.RaatZonePlayer+Endpoint: StreamFormat(channels=2, bitspersample=16, samplerate=44100, isdts=False) => StreamFormat(channels=2, bitspersample=16, samplerate=44100, isdts=False) streamid=672624077
06/04 12:52:05 Trace: [Sound Blaster X4] [raatclient] SENT [12]{“request”:“setup”,“format”:{“sample_type”:“pcm”,“sample_rate”:44100,“bits_per_sample”:16,“channels”:2,“sample_subtype”:“none”},“wire_codec”:“flac”}
06/04 12:52:05 Info: [zone Stuart Computer] [zone] LL_PlaybackStarted: fresh start, no suspended or persisted state. trackId=311602
06/04 12:52:05 Info: [zone Stuart Computer] OnPlayFeedback Playing
06/04 12:52:05 Trace: [Stuart Computer] [HighQuality, 16/44 FLAC => 16/44] [100% buf] [PLAYING @ 0:00] Arise My Soul Arise - Matthew Smith
06/04 12:52:05 Trace: [Sound Blaster X4] [raatclient] GOT [12] {“status”:“UnexpectedError”,“message”:“RAAT__OUTPUT_PLUGIN_STATUS_FORMAT_NOT_SUPPORTED”}
06/04 12:52:05 Warn: [Stuart Computer] [zoneplayer/raat] failed to setup any endpoints..giving up
06/04 12:52:05 Info: [audio/env] [zoneplayer → stream] All streams were disposed
06/04 12:52:05 Info: [audio/env] [zoneplayer → stream → endpoint] All streams were disposed
06/04 12:52:05 Info: sleep 0ms after flush
06/04 12:52:05 Warn: [zone Stuart Computer] Track Stopped Due to Error
06/04 12:52:05 Info: [zone Stuart Computer] OnPlayFeedback StoppedEndOfMediaUnnatural

I restarted the app multiple times. Anything else I can try?

Should have put this in the previous : if exclusive mode allows the roon server to send @ 48khz, can I force the server to always send 48khz?

Added a wav fi recorded - its 48khz as you can see in the log. Still it failed! There’s still a log here talking about 16/44 to 16/48 conversion so i’m very confused.

48khz wav log

/04 15:26:37 Info: [Stuart Computer] [zoneplayer] Open Result (Playing):Result[Status=Success]
06/04 15:26:37 Info: [Stuart Computer] [zoneplayer] Starting playback
06/04 15:26:37 Trace: [Stuart Computer] [zoneplayer/raat] StartStream Sooloos.Broker.Transport.RaatZonePlayer+Endpoint: StreamFormat(channels=1, bitspersample=16, samplerate=48000, isdts=False) => StreamFormat(channels=2, bitspersample=16, samplerate=48000, isdts=False) streamid=860416835
06/04 15:26:37 Trace: [Sound Blaster X4] [raatclient] SENT [22]{“request”:“setup”,“format”:{“sample_type”:“pcm”,“sample_rate”:48000,“bits_per_sample”:16,“channels”:2,“sample_subtype”:“none”},“wire_codec”:“flac”}
06/04 15:26:37 Trace: [prebuffer] ready 163200/480000 (34%) @ 0/225 sec
06/04 15:26:37 Info: [Stuart Computer] [zoneplayer] Queueing: C:\Users\Server\Music\KaeliAndPapa.wav
06/04 15:26:37 Info: [zone Stuart Computer] [zone] LL_PlaybackStarted: fresh start, no suspended or persisted state. trackId=588850
06/04 15:26:37 Info: [zone Stuart Computer] OnPlayFeedback Playing
06/04 15:26:37 Trace: [Stuart Computer] [HighQuality, 16/44 FLAC => 16/48] [100% buf] [PLAYING @ 0:00] KaeliAndPapa -
06/04 15:26:37 Trace: [Sound Blaster X4] [raatclient] GOT [22] {“message”:“RAAT__OUTPUT_PLUGIN_STATUS_FORMAT_NOT_SUPPORTED”,“status”:“UnexpectedError”}
06/04 15:26:37 Warn: [Stuart Computer] [zoneplayer/raat] failed to setup any endpoints..giving up

Hey @Stuart_Keough,

Thanks for the update! From a fresh diagnostic report, we can confirm the issue is this line appearing every single time the X4 connects in non-exclusive mode:

"supported_formats": "" (empty string)

Compared to when exclusive mode is on:

"supported_formats": "48000/24/2|8, 96000/16/2|8, 192000/24/2|8 ..."

When exclusive mode is disabled, the WASAPI driver for the Sound Blaster X4 reports zero supported formats to Roon’s RAAT layer. Roon then tries to negotiate anyway (sending 44100 Hz since that’s what the DSP pipeline outputs), the driver rejects it with FORMAT_NOT_SUPPORTED, and playback fails.

At first glance, this appears to be a potential driver bug in the Creative Sound Blaster X4’s WASAPI shared-mode implementation, it isn’t advertising its capabilities correctly to RAAT when not in exclusive mode. The DSP sample rate conversion in Roon never gets a chance to matter, because the format negotiation fails before any audio is sent.

Have you tried the ASIO driver at all? The logs also show Creative SB USB RT ASIO as an available device. ASIO bypasses WASAPI entirely. In Roon → Settings → Audio, look for the ASIO zone and enable it. This is likely the cleanest workaround, ASIO doesn’t have the shared/exclusive mode distinction.

I’d also see if you can reinstall or update the Sound Blaster X4 driver The empty supported_formats in shared mode strongly suggests a driver issue. Download the latest driver from Creative’s site, do a clean uninstall (DDU or via Device Manager) and reinstall. The Creative app not opening could be another symptom of a driver problem.

And, if you haven’t yet, try to set the Windows default format for the device. In Windows Sound settings → Sound Blaster X4 → Properties → Advanced, set the default format to 24-bit, 48000 Hz (Studio Quality). In shared mode, WASAPI shared-mode output is constrained to whatever the Windows default format is, setting it explicitly may help the driver advertise a format correctly.

We’ll be monitoring for your reply and results, thank you! :folded_hands:

I typed this up several times.. I kept thinking it was working but then it would fail. A couple times I did have youtube playing at the same time as roon, but it was always shortlived.. Often the driver would completely crash (requiring system reboot to get audio back). I reinstalled the app multiple times, reflashed the firmware, etc.. (oh, yes I tried ASIO, it had many weird behaviors but also ended up requiring exclusive control of the soundcard and blocked other apps)

I did learn some things. Their app also requires exclusive mode to populate the sample rate dropdown. I wonder if this is the same issue roon has - where it cannot query the modes without exclusive mode?
Anyways this device has had many issues over the few years I’ve had it.. shame. The feature list was perfect for my use-case and it isn’t nearly as expensive as other interfaces with 8 channel output. I will just have to deal with not playing roon at the same time as anything else i guess!

Thank you all for your help.