USB-Audio.conf 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. #
  2. # USB-Audio.conf - configuration for USB Audio devices
  3. #
  4. #
  5. # DO NO EDIT; this is an internal ALSA file.
  6. # If you want to add your own definitions, put them into /etc/asound.conf or
  7. # ~/.asoundrc, with "cards." before the "USB-Audio", e.g.:
  8. #
  9. # cards.USB-Audio.pcm.use_dmix."NoiseBlaster 3000" no
  10. #
  11. # If your device requires such a definition to work correctly, please report it
  12. # to <alsa-devel@alsa-project.org>.
  13. # If a device has sample formats not supported by dmix, dmix can be disabled
  14. # here.
  15. USB-Audio.pcm.use_dmix {
  16. "AudioPhile" no # uses big-endian 24-bit samples
  17. "Audiophile USB (tm)" no
  18. }
  19. # If a device does not have a four-channel mode for the front/rear outputs,
  20. # other modes can be selected here.
  21. # six_channels - for devices that route the last two of the four channels
  22. # to the center/LFE outputs
  23. # two_stereo_devices - for devices that have two stereo audio interfaces
  24. USB-Audio.pcm.surround40_type {
  25. "AudioPhile" two_stereo_devices
  26. "Audiophile USB (tm)" two_stereo_devices
  27. "OmniStudio" two_stereo_devices
  28. "Quattro" two_stereo_devices
  29. "SB Audigy 2 NX" six_channels
  30. "USB AudioSport Quattro (tm)" two_stereo_devices
  31. }
  32. # If a device does not use the first PCM device for digital data, the device
  33. # number for the iec958 device can be changed here.
  34. USB-Audio.pcm.iec958_device {
  35. # "NoiseBlaster 3000" 42
  36. "USB Sound Blaster HD" 1
  37. # The below don't have digital in/out, so prevent them from being opened.
  38. "Andrea PureAudio USB-SA Headset" 999
  39. "Blue Snowball" 999
  40. "HP Digital Stereo Headset" 999
  41. "GN 9330" 999
  42. "Logitech Speaker Lapdesk N700" 999
  43. "Logitech G35 Headset" 999
  44. "Logitech USB Headset" 999
  45. "Logitech USB Headset H540" 999
  46. "Logitech Wireless Headset" 999
  47. "Plantronics GameCom 780" 999
  48. "Plantronics USB Headset" 999
  49. "Plantronics Wireless Audio" 999
  50. "SB WoW Headset" 999
  51. "Scarlett 2i2 USB" 999
  52. "Scarlett 2i4 USB" 999
  53. "Sennheiser USB headset" 999
  54. "SWTOR Gaming Headset by Razer" 999
  55. "USB Device 0x46d_0x821" 999
  56. "USB Device 0x46d_0x992" 999
  57. }
  58. # Second iec958 device number, if any.
  59. USB-Audio.pcm.iec958_2_device {
  60. "PHIREE U2" 1 # 0 = PCM S/PDIF, 1 = non-PCM S/PDIF
  61. }
  62. # If a device requires non-standard definitions for front, surround40,
  63. # surround51, surround71 or iec958, they can be defined here.
  64. # M-Audio AudioPhile USB:
  65. # device 0: analog output, digital input
  66. # device 1: digital output, analog input
  67. USB-Audio."AudioPhile".pcm.default "cards.USB-Audio.Audiophile USB (tm).pcm.default"
  68. USB-Audio."Audiophile USB (tm)".pcm.default {
  69. @args [ CARD ]
  70. @args.CARD { type string }
  71. type asym
  72. playback.pcm {
  73. type plug
  74. slave.pcm {
  75. type hw
  76. card $CARD
  77. device 0
  78. }
  79. }
  80. capture.pcm {
  81. type plug
  82. slave.pcm {
  83. @func concat
  84. strings [ "dsnoop:DEVICE=1,CARD=" $CARD ]
  85. }
  86. }
  87. }
  88. USB-Audio."AudioPhile".pcm.iec958 "cards.USB-Audio.Audiophile USB (tm).pcm.iec958"
  89. USB-Audio."Audiophile USB (tm)".pcm.iec958 {
  90. @args [ CARD AES0 AES1 AES2 AES3 ]
  91. @args.CARD { type string }
  92. @args.AES0 { type integer }
  93. @args.AES1 { type integer }
  94. @args.AES2 { type integer }
  95. @args.AES3 { type integer }
  96. type asym
  97. playback.pcm {
  98. type hw
  99. card $CARD
  100. device 1
  101. }
  102. capture.pcm {
  103. type hw
  104. card $CARD
  105. device 0
  106. }
  107. }
  108. # For this card we can (and must to get IEC61937) set AES bits
  109. USB-Audio."MicroII".pcm.iec958 "cards.USB-Audio.Audio Advantage MicroII.pcm.iec958"
  110. USB-Audio."Audio Advantage MicroII".pcm.iec958 {
  111. @args [ CARD AES0 AES1 AES2 AES3 ]
  112. @args.CARD { type string }
  113. @args.AES0 { type integer }
  114. @args.AES1 { type integer }
  115. @args.AES2 { type integer }
  116. @args.AES3 { type integer }
  117. type hooks
  118. slave.pcm {
  119. type hw
  120. card $CARD
  121. }
  122. hooks.0 {
  123. type ctl_elems
  124. hook_args [
  125. {
  126. interface PCM
  127. name "IEC958 Playback Default"
  128. preserve true
  129. optional true
  130. value [ $AES0 $AES1 $AES2 $AES3 ]
  131. }
  132. {
  133. name "IEC958 Playback Switch"
  134. lock true
  135. preserve true
  136. value 1
  137. }
  138. ]
  139. }
  140. }
  141. ################################################################################
  142. <confdir:pcm/front.conf>
  143. USB-Audio.pcm.front.0 {
  144. @args [ CARD ]
  145. @args.CARD { type string }
  146. @func refer
  147. name {
  148. @func concat
  149. strings [
  150. "cards.USB-Audio."
  151. { @func card_name card $CARD }
  152. ".pcm.front:CARD=" $CARD
  153. ]
  154. }
  155. default {
  156. # We could use softvol, but the driver might have guessed a
  157. # wrong name for the real volume control.
  158. type hw
  159. card $CARD
  160. device 0
  161. }
  162. }
  163. USB-Audio.pcm.default {
  164. @args [ CARD ]
  165. @args.CARD { type string }
  166. type asym
  167. playback.pcm {
  168. type plug
  169. slave.pcm {
  170. @func refer
  171. name {
  172. @func concat
  173. strings [
  174. "cards.USB-Audio.pcm.default_playback_dmix_"
  175. {
  176. @func refer
  177. name {
  178. @func concat
  179. strings [
  180. "cards.USB-Audio.pcm.use_dmix."
  181. { @func card_name card $CARD }
  182. ]
  183. }
  184. default yes
  185. }
  186. ":CARD=" $CARD
  187. ]
  188. }
  189. }
  190. }
  191. capture.pcm {
  192. type plug
  193. slave.pcm {
  194. @func concat
  195. strings [ "dsnoop:" $CARD ]
  196. }
  197. }
  198. }
  199. USB-Audio.pcm.default_playback_dmix_yes {
  200. @args [ CARD ]
  201. @args.CARD { type string }
  202. @func concat
  203. strings [ "dmix:" $CARD ]
  204. }
  205. USB-Audio.pcm.default_playback_dmix_no {
  206. @args [ CARD ]
  207. @args.CARD { type string }
  208. type hw
  209. card $CARD
  210. device 0
  211. }
  212. <confdir:pcm/surround40.conf>
  213. USB-Audio.pcm.surround40.0 {
  214. @args [ CARD ]
  215. @args.CARD { type string }
  216. @func refer
  217. name {
  218. @func concat
  219. strings [
  220. "cards.USB-Audio."
  221. { @func card_name card $CARD }
  222. ".pcm.surround40:CARD=" $CARD
  223. ]
  224. }
  225. default {
  226. @func refer
  227. name {
  228. @func concat
  229. strings [
  230. "cards.USB-Audio.pcm.surround40_"
  231. {
  232. @func refer
  233. name {
  234. @func concat
  235. strings [
  236. "cards.USB-Audio.pcm.surround40_type."
  237. { @func card_name card $CARD }
  238. ]
  239. }
  240. default default
  241. }
  242. ":CARD=" $CARD
  243. ]
  244. }
  245. }
  246. }
  247. USB-Audio.pcm.surround40_default {
  248. @args [ CARD ]
  249. @args.CARD { type string }
  250. type hw
  251. card $CARD
  252. device 0
  253. }
  254. USB-Audio.pcm.surround40_six_channels {
  255. @args [ CARD ]
  256. @args.CARD { type string }
  257. type route
  258. ttable.0.0 1
  259. ttable.1.1 1
  260. ttable.2.4 1
  261. ttable.3.5 1
  262. slave {
  263. pcm {
  264. type hw
  265. card $CARD
  266. device 0
  267. }
  268. channels 6
  269. }
  270. }
  271. USB-Audio.pcm.surround40_two_stereo_devices {
  272. @args [ CARD ]
  273. @args.CARD { type string }
  274. type route
  275. ttable.0.0 1
  276. ttable.1.1 1
  277. ttable.2.2 1
  278. ttable.3.3 1
  279. slave.pcm {
  280. type multi
  281. slaves {
  282. a {
  283. pcm {
  284. type hw
  285. card $CARD
  286. device 0
  287. }
  288. channels 2
  289. }
  290. b {
  291. pcm {
  292. type hw
  293. card $CARD
  294. device 1
  295. }
  296. channels 2
  297. }
  298. }
  299. bindings [
  300. { slave a channel 0 }
  301. { slave a channel 1 }
  302. { slave b channel 0 }
  303. { slave b channel 1 }
  304. ]
  305. }
  306. }
  307. <confdir:pcm/surround21.conf>
  308. <confdir:pcm/surround41.conf>
  309. <confdir:pcm/surround50.conf>
  310. <confdir:pcm/surround51.conf>
  311. USB-Audio.pcm.surround51.0 {
  312. @args [ CARD ]
  313. @args.CARD { type string }
  314. @func refer
  315. name {
  316. @func concat
  317. strings [
  318. "cards.USB-Audio."
  319. { @func card_name card $CARD }
  320. ".pcm.surround51:CARD=" $CARD
  321. ]
  322. }
  323. default {
  324. type route
  325. ttable.0.0 1
  326. ttable.1.1 1
  327. ttable.2.4 1
  328. ttable.3.5 1
  329. ttable.4.2 1
  330. ttable.5.3 1
  331. slave {
  332. pcm {
  333. type hw
  334. card $CARD
  335. device 0
  336. }
  337. channels 6
  338. }
  339. }
  340. }
  341. <confdir:pcm/surround71.conf>
  342. USB-Audio.pcm.surround71.0 {
  343. @args [ CARD ]
  344. @args.CARD { type string }
  345. @func refer
  346. name {
  347. @func concat
  348. strings [
  349. "cards.USB-Audio."
  350. { @func card_name card $CARD }
  351. ".pcm.surround71:CARD=" $CARD
  352. ]
  353. }
  354. default {
  355. type route
  356. ttable.0.0 1
  357. ttable.1.1 1
  358. ttable.2.4 1
  359. ttable.3.5 1
  360. ttable.4.2 1
  361. ttable.5.3 1
  362. ttable.6.6 1
  363. ttable.7.7 1
  364. slave {
  365. pcm {
  366. type hw
  367. card $CARD
  368. device 0
  369. }
  370. channels 8
  371. }
  372. }
  373. }
  374. <confdir:pcm/iec958.conf>
  375. USB-Audio.pcm.iec958.0 {
  376. @args [ CARD AES0 AES1 AES2 AES3 ]
  377. @args.CARD { type string }
  378. @args.AES0 { type integer }
  379. @args.AES1 { type integer }
  380. @args.AES2 { type integer }
  381. @args.AES3 { type integer }
  382. @func refer
  383. name {
  384. @func concat
  385. strings [
  386. "cards.USB-Audio."
  387. { @func card_name card $CARD }
  388. ".pcm.iec958:CARD=" $CARD
  389. ",AES0=" $AES0 ",AES1=" $AES1 ",AES2=" $AES2 ",AES3=" $AES3
  390. ]
  391. }
  392. default {
  393. # FIXME: we cannot set the AES parameters
  394. type hw
  395. card $CARD
  396. device {
  397. @func refer
  398. name {
  399. @func concat
  400. strings [
  401. "cards.USB-Audio.pcm.iec958_device."
  402. { @func card_name card $CARD }
  403. ]
  404. }
  405. default 0
  406. }
  407. }
  408. }
  409. USB-Audio.pcm.iec958.1 {
  410. @args [ CARD AES0 AES1 AES2 AES3 ]
  411. @args.CARD { type string }
  412. @args.AES0 { type integer }
  413. @args.AES1 { type integer }
  414. @args.AES2 { type integer }
  415. @args.AES3 { type integer }
  416. @func refer
  417. name {
  418. @func concat
  419. strings [
  420. "cards.USB-Audio."
  421. { @func card_name card $CARD }
  422. ".pcm.iec958_2:CARD=" $CARD
  423. ",AES0=" $AES0 ",AES1=" $AES1 ",AES2=" $AES2 ",AES3=" $AES3
  424. ]
  425. }
  426. default {
  427. # FIXME: we cannot set the AES parameters
  428. type hw
  429. card $CARD
  430. device {
  431. @func refer
  432. name {
  433. @func concat
  434. strings [
  435. "cards.USB-Audio.pcm.iec958_2_device."
  436. { @func card_name card $CARD }
  437. ]
  438. }
  439. default 999
  440. }
  441. }
  442. }
  443. # vim: ft=alsaconf