Using GStreamer for channel upmixing
herzi, the short answer is “gst-launch-0.8 filesrc location=file.ogg ! oggdemux ! vorbisdec ! audioconvert ! audioscale ! audio/x-raw-int,channels=6 ! alsasink” if your soundcard supports 5.1 playback. It assumes that your ‘default’ device in alsa (/etc/asound.conf) is set to hw:0 or plughw:0, but not dmix! Dmix only handles 2 channels so it’ll fail gracefully (or maybe even not). If you want more media types, then simply use “gst-launch-0.8 filesrc location=$file ! decodebin ! audioconvert ! audioscale ! audio/x-raw-int,channels=6 ! alsasink”.
I’m planning to hook up the ‘audio channel configuration’ widget in Totem into the GStreamer backend too during one of the next few days. That should automate this behaviour for most people. Maybe Rhythmbox should get such a widget too (and maybe we should therefore move it somewhere to the preferences at some point?).