rendered paste body# 6 channel dmix:
pcm.dmix-front {
type dmix
ipc_key 1024
ipc_key_add_uid false
ipc_perm 0666
slave {
pcm "hw:0,0"
channels 2
period_size 1024
buffer_size 4096
}
}
pcm.dmix-sur {
type dmix
ipc_key 2048
ipc_key_add_uid false
ipc_perm 0666
slave {
pcm "hw:0,1"
channels 2
period_size 1024
buffer_size 4096
}
}
pcm.dmix-clfe {
type dmix
ipc_key 3072
ipc_key_add_uid false
ipc_perm 0666
slave {
pcm "hw:0,2"
channels 2
period_size 1024
buffer_size 4096
}
}
pcm.testing {
type route
slave.pcm "dmix-six"
ttable.0.0 1
ttable.1.1 1
ttable.2.2 1
ttable.3.3 1
ttable.4.4 1
ttable.5.5 1
}
pcm.dmix-six {
type multi;
slaves.a.pcm "dmix-front";
slaves.a.channels 2;
slaves.b.pcm "dmix-sur";
slaves.b.channels 2;
slaves.c.pcm "dmix-clfe";
slaves.c.channels 2;
bindings.0.slave a;
bindings.0.channel 0;
bindings.1.slave a;
bindings.1.channel 1;
bindings.2.slave b;
bindings.2.channel 0;
bindings.3.slave b;
bindings.3.channel 1;
bindings.4.slave c;
bindings.4.channel 0;
bindings.5.slave c;
bindings.5.channel 1;
}
ctl.dmix-six {
type hw
card 0
}
# upmixing:
pcm.ch51dup {
type route
slave.pcm "dmix-six"
slave.channels 6
ttable.0.0 1.2
ttable.1.1 1.2
ttable.2.2 1
ttable.3.3 1
ttable.4.4 0.4
ttable.5.5 0.4
}
ctl.ch51dup {
type hw
card 0
}
#pcm.duplex {
# type asym
# playback.pcm "ch51dup" # upmix first
# capture.pcm "hw:0"
#}
# change default device:
pcm.!default {
type softvol
slave.pcm "ch51dup"
control {
name "Software Master"
card 0
}
}
ctl.!default {
type hw
card 0
}