Advertisement
Guest User

Untitled

a guest
May 2nd, 2019
895
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.98 KB | None | 0 0
  1. #
  2. # ALSA library configuration file
  3. #
  4.  
  5. # pre-load the configuration files
  6.  
  7. @hooks [
  8. {
  9. func load
  10. files [
  11. "/etc/alsa/conf.d"
  12. "/etc/asound.conf"
  13. "~/.asoundrc"
  14. ]
  15. errors false
  16. }
  17. ]
  18.  
  19. # load card-specific configuration files (on request)
  20.  
  21. cards.@hooks [
  22. {
  23. func load
  24. files [
  25. {
  26. @func concat
  27. strings [
  28. { @func datadir }
  29. "/cards/aliases.conf"
  30. ]
  31. }
  32. ]
  33. }
  34. {
  35. func load_for_all_cards
  36. files [
  37. {
  38. @func concat
  39. strings [
  40. { @func datadir }
  41. "/cards/"
  42. { @func private_string }
  43. ".conf"
  44. ]
  45. }
  46. ]
  47. errors false
  48. }
  49. ]
  50.  
  51. #
  52. # defaults
  53. #
  54.  
  55. # show all name hints also for definitions without hint {} section
  56. defaults.namehint.showall off
  57. # show just basic name hints
  58. defaults.namehint.basic on
  59. # show extended name hints
  60. defaults.namehint.extended off
  61. #
  62. defaults.ctl.card 0
  63. defaults.pcm.card 0
  64. defaults.pcm.device 0
  65. defaults.pcm.subdevice -1
  66. defaults.pcm.nonblock 1
  67. defaults.pcm.compat 0
  68. defaults.pcm.minperiodtime 5000 # in us
  69. defaults.pcm.ipc_key 5678293
  70. defaults.pcm.ipc_gid audio
  71. defaults.pcm.ipc_perm 0660
  72. defaults.pcm.dmix.max_periods 0
  73. defaults.pcm.dmix.rate 48000
  74. defaults.pcm.dmix.format "unchanged"
  75. defaults.pcm.dmix.card defaults.pcm.card
  76. defaults.pcm.dmix.device defaults.pcm.device
  77. defaults.pcm.dsnoop.card defaults.pcm.card
  78. defaults.pcm.dsnoop.device defaults.pcm.device
  79. defaults.pcm.front.card defaults.pcm.card
  80. defaults.pcm.front.device defaults.pcm.device
  81. defaults.pcm.rear.card defaults.pcm.card
  82. defaults.pcm.rear.device defaults.pcm.device
  83. defaults.pcm.center_lfe.card defaults.pcm.card
  84. defaults.pcm.center_lfe.device defaults.pcm.device
  85. defaults.pcm.side.card defaults.pcm.card
  86. defaults.pcm.side.device defaults.pcm.device
  87. defaults.pcm.surround21.card defaults.pcm.card
  88. defaults.pcm.surround21.device defaults.pcm.device
  89. defaults.pcm.surround40.card defaults.pcm.card
  90. defaults.pcm.surround40.device defaults.pcm.device
  91. defaults.pcm.surround41.card defaults.pcm.card
  92. defaults.pcm.surround41.device defaults.pcm.device
  93. defaults.pcm.surround50.card defaults.pcm.card
  94. defaults.pcm.surround50.device defaults.pcm.device
  95. defaults.pcm.surround51.card defaults.pcm.card
  96. defaults.pcm.surround51.device defaults.pcm.device
  97. defaults.pcm.surround71.card defaults.pcm.card
  98. defaults.pcm.surround71.device defaults.pcm.device
  99. defaults.pcm.iec958.card defaults.pcm.card
  100. defaults.pcm.iec958.device defaults.pcm.device
  101. defaults.pcm.modem.card defaults.pcm.card
  102. defaults.pcm.modem.device defaults.pcm.device
  103. # truncate files via file or tee PCM
  104. defaults.pcm.file_format "raw"
  105. defaults.pcm.file_truncate true
  106. defaults.rawmidi.card 0
  107. defaults.rawmidi.device 0
  108. defaults.rawmidi.subdevice -1
  109. defaults.hwdep.card 0
  110. defaults.hwdep.device 0
  111. defaults.timer.class 2
  112. defaults.timer.sclass 0
  113. defaults.timer.card 0
  114. defaults.timer.device 0
  115. defaults.timer.subdevice 0
  116.  
  117. #
  118. # PCM interface
  119. #
  120.  
  121. # redirect to load-on-demand extended pcm definitions
  122. pcm.cards cards.pcm
  123.  
  124. pcm.default cards.pcm.default
  125. pcm.sysdefault cards.pcm.default
  126. pcm.front cards.pcm.front
  127. pcm.rear cards.pcm.rear
  128. pcm.center_lfe cards.pcm.center_lfe
  129. pcm.side cards.pcm.side
  130. pcm.surround21 cards.pcm.surround21
  131. pcm.surround40 cards.pcm.surround40
  132. pcm.surround41 cards.pcm.surround41
  133. pcm.surround50 cards.pcm.surround50
  134. pcm.surround51 cards.pcm.surround51
  135. pcm.surround71 cards.pcm.surround71
  136. pcm.iec958 cards.pcm.iec958
  137. pcm.spdif iec958
  138. pcm.hdmi cards.pcm.hdmi
  139. pcm.dmix cards.pcm.dmix
  140. pcm.dsnoop cards.pcm.dsnoop
  141. pcm.modem cards.pcm.modem
  142. pcm.phoneline cards.pcm.phoneline
  143.  
  144. pcm.hw {
  145. @args [ CARD DEV SUBDEV ]
  146. @args.CARD {
  147. type string
  148. default {
  149. @func getenv
  150. vars [
  151. ALSA_PCM_CARD
  152. ALSA_CARD
  153. ]
  154. default {
  155. @func refer
  156. name defaults.pcm.card
  157. }
  158. }
  159. }
  160. @args.DEV {
  161. type integer
  162. default {
  163. @func igetenv
  164. vars [
  165. ALSA_PCM_DEVICE
  166. ]
  167. default {
  168. @func refer
  169. name defaults.pcm.device
  170. }
  171. }
  172. }
  173. @args.SUBDEV {
  174. type integer
  175. default {
  176. @func refer
  177. name defaults.pcm.subdevice
  178. }
  179. }
  180. type hw
  181. card $CARD
  182. device $DEV
  183. subdevice $SUBDEV
  184. hint {
  185. show {
  186. @func refer
  187. name defaults.namehint.extended
  188. }
  189. description "Direct hardware device without any conversions"
  190. }
  191. }
  192.  
  193. pcm.plughw {
  194. @args [ CARD DEV SUBDEV ]
  195. @args.CARD {
  196. type string
  197. default {
  198. @func getenv
  199. vars [
  200. ALSA_PCM_CARD
  201. ALSA_CARD
  202. ]
  203. default {
  204. @func refer
  205. name defaults.pcm.card
  206. }
  207. }
  208. }
  209. @args.DEV {
  210. type integer
  211. default {
  212. @func igetenv
  213. vars [
  214. ALSA_PCM_DEVICE
  215. ]
  216. default {
  217. @func refer
  218. name defaults.pcm.device
  219. }
  220. }
  221. }
  222. @args.SUBDEV {
  223. type integer
  224. default {
  225. @func refer
  226. name defaults.pcm.subdevice
  227. }
  228. }
  229. type plug
  230. slave.pcm {
  231. type hw
  232. card $CARD
  233. device $DEV
  234. subdevice $SUBDEV
  235. }
  236. hint {
  237. show {
  238. @func refer
  239. name defaults.namehint.extended
  240. }
  241. description "Hardware device with all software conversions"
  242. }
  243. }
  244.  
  245. pcm.plug {
  246. @args [ SLAVE ]
  247. @args.SLAVE {
  248. type string
  249. }
  250. type plug
  251. slave.pcm $SLAVE
  252. }
  253.  
  254. pcm.shm {
  255. @args [ SOCKET PCM ]
  256. @args.SOCKET {
  257. type string
  258. }
  259. @args.PCM {
  260. type string
  261. }
  262. type shm
  263. server $SOCKET
  264. pcm $PCM
  265. }
  266.  
  267. pcm.tee {
  268. @args [ SLAVE FILE FORMAT ]
  269. @args.SLAVE {
  270. type string
  271. }
  272. @args.FILE {
  273. type string
  274. }
  275. @args.FORMAT {
  276. type string
  277. default {
  278. @func refer
  279. name defaults.pcm.file_format
  280. }
  281. }
  282. type file
  283. slave.pcm $SLAVE
  284. file $FILE
  285. format $FORMAT
  286. truncate {
  287. @func refer
  288. name defaults.pcm.file_truncate
  289. }
  290. }
  291.  
  292. pcm.file {
  293. @args [ FILE FORMAT ]
  294. @args.FILE {
  295. type string
  296. }
  297. @args.FORMAT {
  298. type string
  299. default {
  300. @func refer
  301. name defaults.pcm.file_format
  302. }
  303. }
  304. type file
  305. slave.pcm null
  306. file $FILE
  307. format $FORMAT
  308. truncate {
  309. @func refer
  310. name defaults.pcm.file_truncate
  311. }
  312. }
  313.  
  314. pcm.null {
  315. type null
  316. hint {
  317. show {
  318. @func refer
  319. name defaults.namehint.basic
  320. }
  321. description "Discard all samples (playback) or generate zero samples (capture)"
  322. }
  323. }
  324.  
  325. #
  326. # Control interface
  327. #
  328.  
  329. ctl.sysdefault {
  330. type hw
  331. card {
  332. @func getenv
  333. vars [
  334. ALSA_CTL_CARD
  335. ALSA_CARD
  336. ]
  337. default {
  338. @func refer
  339. name defaults.ctl.card
  340. }
  341. }
  342. hint.description "Default control device"
  343. }
  344. ctl.default ctl.sysdefault
  345.  
  346. ctl.hw {
  347. @args [ CARD ]
  348. @args.CARD {
  349. type string
  350. default {
  351. @func getenv
  352. vars [
  353. ALSA_CTL_CARD
  354. ALSA_CARD
  355. ]
  356. default {
  357. @func refer
  358. name defaults.ctl.card
  359. }
  360. }
  361. }
  362. type hw
  363. card $CARD
  364. hint.description "Direct control device"
  365. }
  366.  
  367. ctl.shm {
  368. @args [ SOCKET CTL ]
  369. @args.SOCKET {
  370. type string
  371. }
  372. @args.CTL {
  373. type string
  374. }
  375. type shm
  376. server $SOCKET
  377. ctl $CTL
  378. }
  379.  
  380. #
  381. # RawMidi interface
  382. #
  383.  
  384. rawmidi.default {
  385. type hw
  386. card {
  387. @func getenv
  388. vars [
  389. ALSA_RAWMIDI_CARD
  390. ALSA_CARD
  391. ]
  392. default {
  393. @func refer
  394. name defaults.rawmidi.card
  395. }
  396. }
  397. device {
  398. @func igetenv
  399. vars [
  400. ALSA_RAWMIDI_DEVICE
  401. ]
  402. default {
  403. @func refer
  404. name defaults.rawmidi.device
  405. }
  406. }
  407. hint.description "Default raw MIDI device"
  408. }
  409.  
  410. rawmidi.hw {
  411. @args [ CARD DEV SUBDEV ]
  412. @args.CARD {
  413. type string
  414. default {
  415. @func getenv
  416. vars [
  417. ALSA_RAWMIDI_CARD
  418. ALSA_CARD
  419. ]
  420. default {
  421. @func refer
  422. name defaults.rawmidi.card
  423. }
  424. }
  425. }
  426. @args.DEV {
  427. type integer
  428. default {
  429. @func igetenv
  430. vars [
  431. ALSA_RAWMIDI_DEVICE
  432. ]
  433. default {
  434. @func refer
  435. name defaults.rawmidi.device
  436. }
  437. }
  438. }
  439. @args.SUBDEV {
  440. type integer
  441. default -1
  442. }
  443. type hw
  444. card $CARD
  445. device $DEV
  446. subdevice $SUBDEV
  447. hint {
  448. description "Direct rawmidi driver device"
  449. device $DEV
  450. }
  451. }
  452.  
  453. rawmidi.virtual {
  454. @args [ MERGE ]
  455. @args.MERGE {
  456. type string
  457. default 1
  458. }
  459. type virtual
  460. merge $MERGE
  461. }
  462.  
  463. #
  464. # Sequencer interface
  465. #
  466.  
  467. seq.default {
  468. type hw
  469. hint.description "Default sequencer device"
  470. }
  471.  
  472. seq.hw {
  473. type hw
  474. }
  475.  
  476. #
  477. # HwDep interface
  478. #
  479.  
  480. hwdep.default {
  481. type hw
  482. card {
  483. @func getenv
  484. vars [
  485. ALSA_HWDEP_CARD
  486. ALSA_CARD
  487. ]
  488. default {
  489. @func refer
  490. name defaults.hwdep.card
  491. }
  492. }
  493. device {
  494. @func igetenv
  495. vars [
  496. ALSA_HWDEP_DEVICE
  497. ]
  498. default {
  499. @func refer
  500. name defaults.hwdep.device
  501. }
  502. }
  503. hint.description "Default hardware dependent device"
  504. }
  505.  
  506. hwdep.hw {
  507. @args [ CARD DEV ]
  508. @args.CARD {
  509. type string
  510. default {
  511. @func getenv
  512. vars [
  513. ALSA_HWDEP_CARD
  514. ALSA_CARD
  515. ]
  516. default {
  517. @func refer
  518. name defaults.hwdep.card
  519. }
  520. }
  521. }
  522. @args.DEV {
  523. type integer
  524. default {
  525. @func igetenv
  526. vars [
  527. ALSA_HWDEP_DEVICE
  528. ]
  529. default {
  530. @func refer
  531. name defaults.hwdep.device
  532. }
  533. }
  534. }
  535. type hw
  536. card $CARD
  537. device $DEV
  538. hint {
  539. description "Direct hardware dependent device"
  540. device $DEV
  541. }
  542. }
  543.  
  544. #
  545. # Timer interface
  546. #
  547.  
  548. timer_query.default {
  549. type hw
  550. }
  551.  
  552. timer_query.hw {
  553. type hw
  554. }
  555.  
  556. timer.default {
  557. type hw
  558. class {
  559. @func refer
  560. name defaults.timer.class
  561. }
  562. sclass {
  563. @func refer
  564. name defaults.timer.sclass
  565. }
  566. card {
  567. @func refer
  568. name defaults.timer.card
  569. }
  570. device {
  571. @func refer
  572. name defaults.timer.device
  573. }
  574. subdevice {
  575. @func refer
  576. name defaults.timer.subdevice
  577. }
  578. hint.description "Default timer device"
  579. }
  580.  
  581. timer.hw {
  582. @args [ CLASS SCLASS CARD DEV SUBDEV ]
  583. @args.CLASS {
  584. type integer
  585. default {
  586. @func refer
  587. name defaults.timer.class
  588. }
  589. }
  590. @args.SCLASS {
  591. type integer
  592. default {
  593. @func refer
  594. name defaults.timer.sclass
  595. }
  596. }
  597. @args.CARD {
  598. type string
  599. default {
  600. @func refer
  601. name defaults.timer.card
  602. }
  603. }
  604. @args.DEV {
  605. type integer
  606. default {
  607. @func refer
  608. name defaults.timer.device
  609. }
  610. }
  611. @args.SUBDEV {
  612. type integer
  613. default {
  614. @func refer
  615. name defaults.timer.subdevice
  616. }
  617. }
  618. type hw
  619. class $CLASS
  620. sclass $SCLASS
  621. card $CARD
  622. device $DEV
  623. subdevice $SUBDEV
  624. hint {
  625. description "Direct timer device"
  626. device $DEV
  627. }
  628. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement