# If a device requires non-standard definitions for front, surround40,
# surround51, surround71 or iec958, they can be defined here.
-# USB-Audio."NoiseBlaster 3000".pcm.surround51 {
-# @args [ CARD ]
-# @args.CARD { type string }
-# ...
-# }
+# M-Audio AudioPhile USB:
+# device 0: analog output, digital input
+# device 1: digital output, analog input
+USB-Audio."AudioPhile".pcm.default {
+ @args [ CARD ]
+ @args.CARD { type string }
+ type asym
+ playback.pcm {
+ type plug
+ slave.pcm {
+ type hw
+ card $CARD
+ device 0
+ }
+ }
+ capture.pcm {
+ type plug
+ slave.pcm {
+ @func concat
+ strings [ "dsnoop:DEVICE=1,CARD=" $CARD ]
+ }
+ }
+}
+USB-Audio."AudioPhile".pcm.iec958 {
+ @args [ CARD AES0 AES1 AES2 AES3 ]
+ @args.CARD { type string }
+ @args.AES0 { type integer }
+ @args.AES1 { type integer }
+ @args.AES2 { type integer }
+ @args.AES3 { type integer }
+ type asym
+ playback.pcm {
+ type hw
+ card $CARD
+ device 1
+ }
+ capture.pcm {
+ type hw
+ card $CARD
+ device 0
+ }
+}
################################################################################