OSDN Git Service

emu10k1.conf - Fix no sound problem when using SB Live! Platinum
authorRaymond Yau <superquad.vortex2@gmail.com>
Fri, 13 May 2011 02:40:28 +0000 (10:40 +0800)
committerTakashi Iwai <tiwai@suse.de>
Mon, 16 May 2011 12:27:51 +0000 (14:27 +0200)
Add asym to front, rear and center_lfe to prevent route change after
removed the lock.

After removed the lock, when application using "hw", "front", "rear",
"surround40" and "surround51",  the route of the front channel is
changed (lost right channel or both channels) when other application
using "front", "rear" or "center_lfe" to record

Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
src/conf/cards/EMU10K1.conf

index b537864..706da0a 100644 (file)
@@ -9,48 +9,55 @@ EMU10K1.pcm.front.0 {
        @args.CARD {
                type string
        }
-       type hooks
-       slave.pcm {
+       type asym
+       playback.pcm {
+               type hooks
+               slave.pcm {
+                       type hw
+                       card $CARD
+               }
+               hooks.0 {
+                       type ctl_elems
+                       hook_args [
+                               {
+                                       interface PCM
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
+                               }
+                               {
+                                       # for compatibility with older drivers
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
+                               }
+                               {
+                                       interface PCM
+                                       name "EMU10K1 PCM Send Routing"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
+                               }
+                               {
+                                       # for compatibility with older drivers
+                                       name "EMU10K1 PCM Send Routing"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
+                               }
+                       ]
+               }
+       }
+       capture.pcm {
                type hw
                card $CARD
        }
-       hooks.0 {
-               type ctl_elems
-               hook_args [
-                       {
-                               interface PCM
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
-                       }
-                       {
-                               # for compatibility with older drivers
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
-                       }
-                       {
-                               interface PCM
-                               name "EMU10K1 PCM Send Routing"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
-                       }
-                       {
-                               # for compatibility with older drivers
-                               name "EMU10K1 PCM Send Routing"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
-                       }
-               ]
-       }
 }      
 
 <confdir:pcm/rear.conf>
@@ -60,31 +67,34 @@ EMU10K1.pcm.rear.0 {
        @args.CARD {
                type string
        }
-       type hooks
-       slave.pcm {
-               type hw
-               card $CARD
-       }
-       hooks.0 {
-               type ctl_elems
-               hook_args [
-                       {
-                               interface PCM
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
-                       }
-                       {
-                               # for compatibility with older drivers
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
-                       }
-               ]
+       type asym
+       playback.pcm {
+               type hooks
+               slave.pcm {
+                       type hw
+                       card $CARD
+               }
+               hooks.0 {
+                       type ctl_elems
+                       hook_args [
+                               {
+                                       interface PCM
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
+                               }
+                               {
+                                       # for compatibility with older drivers
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
+                               }
+                       ]
+               }
        }
 }      
 
@@ -95,73 +105,76 @@ EMU10K1.pcm.center_lfe.0 {
        @args.CARD {
                type string
        }
-       type hooks
-       slave.pcm {
-               type hw
-               card $CARD
-       }
-       hooks.0 {
-               type ctl_elems
-               hook_args [
-                       {
-                               name "Headphone Center Playback Switch"
-                               index 1
-                               preserve true
-                               # lock true
-                               optional true
-                               value true
-                       }
-                       {
-                               name "Headphone LFE Playback Switch"
-                               index 1
-                               preserve true
-                               # lock true
-                               optional true
-                               value true
-                       }
+       type asym
+       playback.pcm {
+               type hooks
+               slave.pcm {
+                       type hw
+                       card $CARD
+               }
+               hooks.0 {
+                       type ctl_elems
+                       hook_args [
+                               {
+                                       name "Headphone Center Playback Switch"
+                                       index 1
+                                       preserve true
+                                       # lock true
+                                       optional true
+                                       value true
+                               }
+                               {
+                                       name "Headphone LFE Playback Switch"
+                                       index 1
+                                       preserve true
+                                       # lock true
+                                       optional true
+                                       value true
+                               }
 # if you have a creative's digital receiver, you can get surround/center/lfe
 # output through the digital jack.  so, the following is commented out.
 # pay attention in case of analog output from the shared center/digital
 # jack!
-#                      {
-#                              name "SB Live Analog/Digital Output Jack"
-#                              preserve true
-#                              lock true
-#                              value 0
-#                      }
-                       {
-                               interface PCM
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
-                       }
-                       {
-                               # for compatibility with older drivers
-                               name "EMU10K1 PCM Send Volume"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
-                       }
-                       {
-                               interface PCM
-                               name "EMU10K1 PCM Send Routing"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
-                       }
-                       {
-                               # for compatibility with older drivers
-                               name "EMU10K1 PCM Send Routing"
-                               index { @func private_pcm_subdevice }
-                               # lock true
-                               optional true
-                               value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
-                       }
-               ]
+#                              {
+#                                      name "SB Live Analog/Digital Output Jack"
+#                                      preserve true
+#                                      lock true
+#                                      value 0
+#                              }
+                               {
+                                       interface PCM
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
+                               }
+                               {
+                                       # for compatibility with older drivers
+                                       name "EMU10K1 PCM Send Volume"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
+                               }
+                               {
+                                       interface PCM
+                                       name "EMU10K1 PCM Send Routing"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
+                               }
+                               {
+                                       # for compatibility with older drivers
+                                       name "EMU10K1 PCM Send Routing"
+                                       index { @func private_pcm_subdevice }
+                                       # lock true
+                                       optional true
+                                       value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
+                               }
+                       ]
+               }
        }
 }