PCM list: hw { @args.0 CARD @args.1 DEV @args.2 SUBDEV @args.CARD { type string default { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } } @args.DEV { type integer default { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } } @args.SUBDEV { type integer default { @func refer name 'defaults.pcm.subdevice' } } type hw card $CARD device $DEV subdevice $SUBDEV } plughw { @args.0 CARD @args.1 DEV @args.2 SUBDEV @args.CARD { type string default { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } } @args.DEV { type integer default { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } } @args.SUBDEV { type integer default { @func refer name 'defaults.pcm.subdevice' } } type plug slave.pcm { type hw card $CARD device $DEV subdevice $SUBDEV } } plug { @args.0 SLAVE @args.SLAVE { type string } type plug slave.pcm $SLAVE } dmix { @args.0 SLAVE @args.1 FORMAT @args.2 RATE @args.SLAVE { type string default 'hw:0,0' } @args.FORMAT { type string default S16_LE } @args.RATE { type integer default 48000 } type dmix ipc_key 5678293 ipc_key_add_uid yes slave { pcm $SLAVE format $FORMAT rate $RATE } } dsnoop { @args.0 SLAVE @args.1 FORMAT @args.2 RATE @args.SLAVE { type string default 'hw:0,0' } @args.FORMAT { type string default S16_LE } @args.RATE { type integer default 48000 } type dsnoop ipc_key 5778293 ipc_key_add_uid yes slave { pcm $SLAVE format $FORMAT rate $RATE } } shm { @args.0 SOCKET @args.1 PCM @args.SOCKET { type string } @args.PCM { type string } type shm server $SOCKET pcm $PCM } tee { @args.0 SLAVE @args.1 FILE @args.2 FORMAT @args.SLAVE { type string } @args.FILE { type string } @args.FORMAT { type string default raw } type file slave.pcm $SLAVE file $FILE format $FORMAT } file { @args.0 FILE @args.1 FORMAT @args.FILE { type string } @args.FORMAT { type string default raw } type file slave.pcm null file $FILE format $FORMAT } null { type null } default { type plug slave.pcm { type hw card { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } device { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } subdevice { @func refer name 'defaults.pcm.subdevice' } } } cards 'cards.pcm' front 'cards.pcm.front' rear 'cards.pcm.rear' center_lfe 'cards.pcm.center_lfe' side 'cards.pcm.side' surround40 'cards.pcm.surround40' surround41 'cards.pcm.surround41' surround50 'cards.pcm.surround50' surround51 'cards.pcm.surround51' surround71 'cards.pcm.surround71' iec958 'cards.pcm.iec958' spdif 'cards.pcm.iec958' modem 'cards.pcm.modem' copy { type plug slave { pcm hw } route_policy copy }