Advertisement
Guest User

alsa.conf

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