# # dsnoop # pcm.!dsnoop { @args [ CARD DEV SUBDEV FORMAT RATE ] @args.CARD { type string default { @func refer name defaults.pcm.dsnoop.card } } @args.DEV { type integer default { @func refer name defaults.pcm.dsnoop.device } } @args.SUBDEV { type integer default 0 } @args.FORMAT { type string default { @func refer name defaults.pcm.dmix.format } } @args.RATE { type integer default { @func refer name defaults.pcm.dmix.rate } } type dsnoop ipc_key { @func refer name defaults.pcm.ipc_key } ipc_gid { @func refer name defaults.pcm.ipc_gid } ipc_perm { @func refer name defaults.pcm.ipc_perm } slave { pcm { type hw card $CARD device $DEV subdevice $SUBDEV } format $FORMAT rate $RATE period_size { @func refer name { @func concat strings [ "cards." { @func card_driver card $CARD } ".pcm.dsnoop.period_size" ] } default 1024 } period_time { @func refer name { @func concat strings [ "cards." { @func card_driver card $CARD } ".pcm.dsnoop.period_time" ] } default -1 } periods { @func refer name { @func concat strings [ "cards." { @func card_driver card $CARD } ".pcm.dsnoop.periods" ] } default 16 } } hint { show { @func refer name defaults.namehint.extended } description "Direct sample snooping device" device_input $DEV } }