+ // If we're in the sound engine initialization
+ if (current_channellayout_used == SND_CHANNELLAYOUT_AUTO)
+ {
+ layout = SND_CHANNELLAYOUT_STANDARD;
+ Cvar_SetValueQuick (&snd_channellayout, layout);
+ }
+ else
+ layout = current_channellayout_used;
+ }
+ else
+ layout = snd_channellayout.integer;
+
+ // Convert our layout (= ALSA) to the standard layout if necessary
+ if (snd_speakerlayout.channels == 6 || snd_speakerlayout.channels == 8)
+ {
+ if (layout == SND_CHANNELLAYOUT_STANDARD)
+ {
+ SWAP_LISTENERS(listeners[2], listeners[4], swaplistener);
+ SWAP_LISTENERS(listeners[3], listeners[5], swaplistener);
+ }
+
+ Con_Printf("S_SetChannelLayout: using %s speaker layout for 3D sound\n",
+ (layout == SND_CHANNELLAYOUT_ALSA) ? "ALSA" : "standard");