# # ALSA library configuration file # pcm.default { type plug slave.pcm { type hw card <@ALSA_PCM_CARD,ALSA_CARD:0@> device <@ALSA_PCM_DEVICE:0@> } } pcm.hw { $.0 CARD $.1 DEV $.2 SUBDEV $.CARD { type integer } $.DEV { type integer } $.SUBDEV { type integer default -1 } type hw card $CARD device $DEV subdevice $SUBDEV } pcm.plughw { $.0 CARD $.1 DEV $.2 SUBDEV $.CARD { type integer } $.DEV { type integer } $.SUBDEV { type integer default -1 } type plug slave.pcm { type hw card $CARD device $DEV subdevice $SUBDEV } } pcm.plug { $.0 SLAVE $.SLAVE { type string } type plug slave.pcm $SLAVE } pcm.shm { $.0 SOCKET $.1 PCM $.SOCKET { type string } $.PCM { type string } type shm server $SOCKET pcm $PCM } pcm.tee { $.0 SLAVE $.1 FILE $.2 FORMAT $.SLAVE { type string } $.FILE { type string } $.FORMAT { type string default raw } type file slave.pcm $SLAVE file $FILE format $FORMAT } pcm.file { $.0 FILE $.1 FORMAT $.FILE { type string } $.FORMAT { type string default raw } type file slave.pcm null file $FILE format $FORMAT } pcm.surround40 { $.0 CARD $.1 DEV $.CARD { type integer default <@ALSA_SURROUND40_CARD,ALSA_PCM_CARD,ALSA_CARD:0@> } $.DEV { type integer default <@ALSA_SURROUND40_DEVICE:0@> } type surround card $CARD device $DEVICE stype 4.0 } pcm.surround51 { $.0 CARD $.1 DEV $.CARD { type integer default <@ALSA_SURROUND51_CARD,ALSA_PCM_CARD,ALSA_CARD:0@> } $.DEV { type integer default <@ALSA_SURROUND51_DEVICE:0@> } type surround card $CARD device $DEVICE stype 5.1 } pcm.null { type null } ctl.default { type hw card <@ALSA_CARD:0@> } ctl.hw { $.0 CARD $.CARD { type integer } type hw card $CARD } ctl.shm { $.0 SOCKET $.1 PCM $.SOCKET { type string } $.PCM { type string } type shm server $SOCKET ctl $PCM } rawmidi.default { type hw card <@ALSA_RAWMIDI_CARD,ALSA_CARD:0@> device <@ALSA_RAWMIDI_DEVICE:0@> } rawmidi.hw { $.0 CARD $.1 DEV $.2 SUBDEV $.CARD { type integer } $.DEV { type integer } $.SUBDEV { type integer default -1 } type hw card $CARD device $DEV subdevice $SUBDEV } seq.default { type hw } seq.hw { type hw } pcm.iec958 { $.0 PCM $.1 AES0 $.2 AES1 $.3 AES2 $.4 AES3 $.PCM { type string default default } $.AES0 { type integer # IEC958_AES0_PROFESSIONAL | IEC958_AES0_NONAUDIO | # IEC958_AES0_PRO_EMPHASIS_NONE | IEC958_AES0_PRO_FS_48000 default 0x87 } $.AES1 { type integer default 0x00 } $.AES2 { type integer default 0x00 } $.AES3 { type integer default 0x00 } type hooks slave.pcm $PCM hooks.0 { type ctl_elems args.0 { name "IEC958 Playback PCM Stream" subdevice 0 preserve true lock true value.0 $AES0 value.1 $AES1 value.2 $AES2 value.3 $AES3 } } }