1# 2# dmix output 3# 4 5pcm.!dmix { 6 @args [ CARD DEV SUBDEV FORMAT RATE CHANNELS ] 7 @args.CARD { 8 type string 9 default { 10 @func refer 11 name defaults.pcm.dmix.card 12 } 13 } 14 @args.DEV { 15 type integer 16 default { 17 @func refer 18 name defaults.pcm.dmix.device 19 } 20 } 21 @args.SUBDEV { 22 type integer 23 default 0 24 } 25 @args.FORMAT { 26 type string 27 default { 28 @func refer 29 name defaults.pcm.dmix.format 30 } 31 } 32 @args.RATE { 33 type integer 34 default { 35 @func refer 36 name defaults.pcm.dmix.rate 37 } 38 } 39 @args.CHANNELS { 40 type integer 41 default { 42 @func refer 43 name defaults.pcm.dmix.channels 44 } 45 } 46 type dmix 47 ipc_key { 48 @func refer 49 name defaults.pcm.ipc_key 50 } 51 ipc_gid { 52 @func refer 53 name defaults.pcm.ipc_gid 54 } 55 ipc_perm { 56 @func refer 57 name defaults.pcm.ipc_perm 58 } 59 tstamp_type { 60 @func refer 61 name defaults.pcm.tstamp_type 62 } 63 slave { 64 pcm { 65 type hw 66 card $CARD 67 device $DEV 68 subdevice $SUBDEV 69 } 70 format $FORMAT 71 rate $RATE 72 channels $CHANNELS 73 period_size { 74 @func refer 75 name { 76 @func concat 77 strings [ 78 "defaults.dmix." 79 { 80 @func card_id 81 card $CARD 82 } 83 ".period_size" 84 ] 85 } 86 default 1024 87 } 88 period_time { 89 @func refer 90 name { 91 @func concat 92 strings [ 93 "defaults.dmix." 94 { 95 @func card_id 96 card $CARD 97 } 98 ".period_time" 99 ] 100 } 101 default -1 102 } 103 periods { 104 @func refer 105 name { 106 @func concat 107 strings [ 108 "defaults.dmix." 109 { 110 @func card_id 111 card $CARD 112 } 113 ".periods" 114 ] 115 } 116 default 16 117 } 118 } 119 hint { 120 show { 121 @func refer 122 name defaults.namehint.extended 123 } 124 description "Direct sample mixing device" 125 device_output $DEV 126 } 127} 128