Sound BlasterX G6 - Headset/speaker switching does not work

For Windows, the Sound Blaster Command Center software allows you to switch between headset and speakers.

Is this also possible in Manjaro? I have not yet been able to find a way to do this, no matter which output I select, it is not possible to switch between headset and speakers. As a workaround, you always have to connect or disconnect the headset from the socket, depending on what you want to listen to.

To all Sound BlasterX G6 owners, how do you do this or do you need special software to make the switching work as it does under Windows? In other words, without having to constantly connect or disconnect the headset.

Linux is not Windows - thus it will never work the same way.

You can switch using the shortcut in the system tray.

2 Likes

Please post more information about system

inxi -SMAaz

and audio devices

pactl list cards

Sound BlasterX G6 7.1 HD Gaming DAC and External USB Sound Card with Xamp Headphone Amplifier for PS4, Xbox One, Nintendo Switch, and PC. - Creative Labs (Pan Euro)

  • Does the Sound BlasterX G6 work with Linux?

Creative Labs does not provide an official Linux driver. However, as the Sound BlasterX G6 is essentially a 2-channel USB DAC, the default Linux audio driver should support it. As with Mac systems, users will not have access to BlasterX Acoustic Engine and RGB features as these are only available on PC.

I had already tried everything but no matter what I select here, the switching does not work.

Creative don’t support Linux, so software support is limited

having said that, once i got my ZXR working, i actually think Linux sounds better

if the switching occurs automatically when you connect or disconnect the headphones, that’s your fix

make sure you’re feeding the G6 7.1 audio channels regardless of the final output from the device itself, otherwise any virtualisation probably wont sound very good - pretty sure Gnome defaults to 2 channels passed to hardware

the channels setting is under SettingsSound then use the Configuration drop down menu

below is for a ZXR, but you get the idea

image

there’s one other thing you’ll want to do to

edit /etc/pipewire/pipewire.conf as admin

scroll down a little way and you’ll find a line that starts with default.clock.allowed-rates

you want to edit this line so it looks like this:

default.clock.allowed-rates = [ 44100 48000 88200 96000 192000 384000 ]

Sound BlasterX G6 uses Linux driver snd-usb-audio and has one stereo audio output channel only (no surround options like your PCI-E card)

linux-hardware.org - HW probe #2381ffbbaf: inxi

Audio:
  Device-4: Creative Sound BlasterX G6
    driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 2.0 speed: 480 Mb/s
    lanes: 1 bus-ID: 3-2:2 chip-ID: 041e:3256 class-ID: 0300

linux-hardware.org - HW probe #2381ffbbaf: aplay

card 2: G6 [Sound BlasterX G6], device 0: USB Audio [USB Audio]
 Subdevices: 0/1
 Subdevice #0: subdevice #0

And one ALSA mixer control for ‘Speaker’ output - no additional controls for Headphone or Optical outputs

linux-hardware.org - HW probe #2381ffbbaf: amixer

Card sysdefault:2 'G6'/'Creative Technology Ltd Sound BlasterX G6 at usb-0000:0e:00.3-2, high speed'

Simple mixer control 'Speaker',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 128
  Mono:
  Front Left: Playback 85 [66%] [-21.50dB] [on]
  Front Right: Playback 85 [66%] [-21.50dB] [on]

Or connect the speakers to another audio device - onboard audio or a 2nd USB device

so it’s impossible to feed multichannel audio via Pipewire to ALSA, then out to an external device via USB unless ALSA recognises the hardware and uses specific drivers?

For this specific USB device, the Sound Blaster Command Center software on Windows supports virtual surround: surround channels are processed and down-mixed in software to create the perception that there are many more sources of sound than are actually present.

Virtual Surround processing is also available in PipeWire
Enable 7.1 Virtual Sound in Linux using Pipewire
PipeWire Wiki - Filter-Chain - Virtual Surround

Linux audio driver snd-usb-audio supports most USB devices including OP’s device
Audio driver snd_hda_intel supports many internal audio devices including Sound Blaster ZxR card
Older Creative Labs sound cards that did not comply with Intel HDA standard needed hardware-specific drivers (snd_emu10k1 or snd_ca0106)

the G6 is hardware based; uses the SB-Axx1 DSP

Sound BlasterX G6 - Specifications

Audio Technology - SB-Axx1™

Max Channel Output - Stereo

Sound Blaster X7 - Specifications

Audio Technology - SB-Axx1™

Max Channel Output - 5.1 Channels, Stereo Amplified

linux-hardware.org - HW probe #b95c1b013e: aplay

card 1: X7 [Sound Blaster X7], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: X7 [Sound Blaster X7], device 1: USB Audio [USB Audio #1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: X7 [Sound Blaster X7], device 2: USB Audio [USB Audio #2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

all Creative stuff is like this; receives multi-channel input; DSP applies HRTF’s and any other enabled processing; remixes to suite receiving audio equipment - in the case of headphones, 2 channels

i was just surprised you can’t ask Pipewire to output multi-channel audio to an external USB device

anyway, point being, Creative did release a software solution, but if someone’s got external DAC or internal PCIe card, it’ll be a hardware DSP that expects multi-channel input regardless of the final output; older devices (ZXR era) receive 5.1; newer stuff prefers 7.1

hope i’m not being a pain right now, but without multi-channel input hardware based DSP’s, especially ones applying HRTF’s, are crippled

and with Linux gaming gaining traction, i could imagine this kind thing becoming an issue

PipeWire can output multi-channel audio to an external multi-channel USB audio device
but multi-channel audio to a stereo USB audio device is unlikely to be possible or necessary

As far as I can tell, Sound Blaster Command Center does not have an option to load HRTF or HRIR files

And Creative does not release information about their proprietary products. Linux developers have had Cease and Desist notices from Creative’s Lawyers in the past for trying to reverse-engineer better audio support

Linux software DSP works for any stereo audio device (internal or external) on any Distribution or Desktop Environment

For PipeWire, users can install easyeffects GUI and use zita-convolver

Archwiki has this suggestion To use Head Related Transfer Functionfor OpenAL games

Gaming - Binaural audio with OpenAL - ArchWiki

For games using OpenAL, if you use headphones you may get much better positional audio using OpenAL’s HRTF filters. To enable, create ~/.alsoftrc

hrtf = true

Alternatively, install openal-hrtfAUR from the AUR, and edit the options in /etc/openal/alsoftrc.conf.

PulseAudio has module module-virtual-surround-sink that uses Head Related Impulse Response files (HRTF is the Fourier transform of HRIR)
PulseAudio also has module-position-event-sounds for gaming
(this might be similar to Scout Mode on Creative hardware devices)

JACK with SoundScape Renderer ssr installed has a Binaural Renderer with standard HRIR files and a Binaural Room Synthesis Renderer to create Binaural Room Impulse Responses

I don’t mind but @corun might not want to know about virtual surround or gaming audio.
If you want to discuss gaming audio, DSP or your PCI-E hardware further, it would be better to start a new topic.

1 Like

That’s right, I’m only interested in the automatic switching from the stereo speakers to the headset and back again. Thanks for all the contributions anyway!