Advertisement
Guest User

Conf alsa

a guest
Jun 9th, 2018
630
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.00 KB | None | 0 0
  1. # File: /usr/share/alsa/pcm/dca.conf (from git dcaenc)
  2. defaults.pcm.dca.aes0 0x06
  3. defaults.pcm.dca.aes1 0x82
  4. defaults.pcm.dca.aes2 0x00
  5. defaults.pcm.dca.aes3 0x00
  6. defaults.pcm.dca.iec61937 0
  7.  
  8. pcm.!dca {
  9. @args [ CARD DEV AES0 AES1 AES2 AES3 IEC61937 ]
  10.  
  11. @args.CARD {
  12. type string
  13. default {
  14. @func getenv
  15. vars [
  16. ALSA_IEC958_CARD
  17. ALSA_PCM_CARD
  18. ALSA_CARD
  19. ]
  20. default {
  21. @func refer
  22. name defaults.pcm.iec958.card
  23. }
  24. }
  25. }
  26.  
  27. @args.DEV {
  28. type integer
  29. default {
  30. @func igetenv
  31. vars [
  32. ALSA_IEC958_DEVICE
  33. ]
  34. default {
  35. @func refer
  36. name defaults.pcm.iec958.device
  37. }
  38. }
  39. }
  40.  
  41. @args.AES0 {
  42. type integer
  43. default {
  44. @func refer
  45. name defaults.pcm.dca.aes0
  46. }
  47. }
  48.  
  49. @args.AES1 {
  50. type integer
  51. default {
  52. @func refer
  53. name defaults.pcm.dca.aes1
  54. }
  55. }
  56.  
  57. @args.AES2 {
  58. type integer
  59. default {
  60. @func refer
  61. name defaults.pcm.dca.aes2
  62. }
  63. }
  64.  
  65. @args.AES3 {
  66. type integer
  67. default {
  68. @func refer
  69. name defaults.pcm.dca.aes3
  70. }
  71. }
  72.  
  73. @args.IEC61937 {
  74. type integer;
  75. default {
  76. @func refer
  77. name defaults.pcm.dca.iec61937
  78. }
  79. }
  80.  
  81. type dca
  82. slave.pcm {
  83. @func refer
  84. name {
  85. @func concat
  86. strings [
  87. "cards."
  88. {
  89. @func card_driver
  90. card $CARD
  91. }
  92. ".pcm.iec958." $DEV ":"
  93. "CARD=" $CARD ","
  94. "AES0=" $AES0 ","
  95. "AES1=" $AES1 ","
  96. "AES2=" $AES2 ","
  97. "AES3=" $AES3
  98. ]
  99. }
  100. }
  101.  
  102. iec61937 $IEC61937
  103.  
  104. hint {
  105. show {
  106. @func refer
  107. name defaults.namehint.basic
  108. }
  109. description "DTS Encoding through IEC958 (S/PDIF)"
  110. device $DEV
  111. }
  112. }
  113.  
  114. pcm.!dcahdmi {
  115. @args [ CARD DEV AES0 AES1 AES2 AES3 ]
  116.  
  117. @args.CARD {
  118. type string
  119. default {
  120. @func getenv
  121. vars [
  122. ALSA_IEC958_CARD
  123. ALSA_PCM_CARD
  124. ALSA_CARD
  125. ]
  126. default {
  127. @func refer
  128. name defaults.pcm.iec958.card
  129. }
  130. }
  131. }
  132.  
  133. @args.DEV {
  134. type integer
  135. default {
  136. @func igetenv
  137. vars [
  138. ALSA_IEC958_DEVICE
  139. ]
  140. default {
  141. @func refer
  142. name defaults.pcm.iec958.device
  143. }
  144. }
  145. }
  146.  
  147. @args.AES0 {
  148. type integer
  149. default {
  150. @func refer
  151. name defaults.pcm.dca.aes0
  152. }
  153. }
  154.  
  155. @args.AES1 {
  156. type integer
  157. default {
  158. @func refer
  159. name defaults.pcm.dca.aes1
  160. }
  161. }
  162.  
  163. @args.AES2 {
  164. type integer
  165. default {
  166. @func refer
  167. name defaults.pcm.dca.aes2
  168. }
  169. }
  170.  
  171. @args.AES3 {
  172. type integer
  173. default {
  174. @func refer
  175. name defaults.pcm.dca.aes3
  176. }
  177. }
  178.  
  179. @args.IEC61937 {
  180. type integer;
  181. default {
  182. @func refer
  183. name defaults.pcm.dca.iec61937
  184. }
  185. }
  186.  
  187. type dca
  188. slave.pcm {
  189. @func refer
  190. name {
  191. @func concat
  192. strings [
  193. "cards."
  194. {
  195. @func card_driver
  196. card $CARD
  197. }
  198. ".pcm.hdmi." $DEV ":"
  199. "CARD=" $CARD ","
  200. "AES0=" $AES0 ","
  201. "AES1=" $AES1 ","
  202. "AES2=" $AES2 ","
  203. "AES3=" $AES3
  204. ]
  205. }
  206. }
  207.  
  208. iec61937 $IEC61937
  209.  
  210. hint {
  211. show {
  212. @func refer
  213. name defaults.namehint.basic
  214. }
  215. description "DTS Encoding through HDMI"
  216. device $DEV
  217. }
  218. }
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229. # File: /usr/share/alsa/alsa.conf.d/a52.conf
  230.  
  231. #
  232. # 5.1 channel AC3 encoder
  233. # Output device: iec958raw:CARD
  234. #
  235. # plug is used to convert to the correct sample format.
  236. # rate is used to convert to the correct bitrate (stutters if done with plug).
  237. # route is required, if not used then audio will not play.
  238. # a52 is used to encode the audio to AC3
  239. #
  240. pcm.a52 {
  241. @args [ CARD DEV ]
  242.  
  243. @args.CARD {
  244. type string
  245. }
  246.  
  247. @args.DEV {
  248. type integer
  249. }
  250.  
  251. type plug
  252. slave {
  253. pcm {
  254. type rate
  255. slave {
  256. pcm {
  257. type route
  258. slave {
  259. pcm {
  260. type a52
  261. rate 48000
  262. channels 6
  263. format S16_LE
  264. bitrate 999 # works for me, default is 640
  265. slavepcm {
  266. @func concat strings [ "iec958:CARD=" $CARD ",DEV=" $DEV ]
  267. }
  268. }
  269. channels 6
  270. }
  271. ttable {
  272. 0.0 = 1
  273. 1.1 = 1
  274. 2.2 = 1
  275. 3.3 = 1
  276. 4.4 = 1
  277. 5.5 = 1
  278. }
  279. }
  280. rate 48000
  281. }
  282. converter samplerate_best
  283. }
  284. channels 6
  285. format S16_LE
  286. rate "unchanged"
  287. }
  288. hint {
  289. show {
  290. @func refer
  291. name defaults.namehint.basic
  292. }
  293. description "IEC958 (AC3) Digital Surround 5.1 with all software conversions"
  294. device $DEV
  295. }
  296. }
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304. # File: /usr/share/alsa/alsa.conf.d/a52upmix.conf
  305.  
  306. #
  307. # 2.0 -> 5.1 channel AC3 encoder
  308. # Output device: iec958raw:CARD
  309. #
  310. # plug is used to convert to the correct sample format.
  311. # rate is used to convert to the correct bitrate (stutters if done with plug).
  312. # route is used tp upmix the stereo input to 6 channels.
  313. # a52 is used to encode the audio to AC3
  314. #
  315. pcm.a52upmix {
  316. @args [ CARD DEV ]
  317.  
  318. @args.CARD {
  319. type string
  320. }
  321.  
  322. @args.DEV {
  323. type integer
  324. }
  325.  
  326. type plug
  327. slave {
  328. pcm {
  329. type rate
  330. slave {
  331. pcm {
  332. type route
  333. slave {
  334. pcm {
  335. type a52
  336. rate 48000
  337. channels 6
  338. format S16_LE
  339. bitrate 999 # works for me, default is 640
  340. slavepcm {
  341. @func concat strings [ "iec958:CARD=" $CARD ",DEV=" $DEV ]
  342. }
  343. }
  344. channels 6
  345. }
  346. ttable {
  347. 0.0 = 1
  348. 0.2 = -0.6
  349. 0.3 = -0.39
  350. 0.4 = 0.5
  351. 0.5 = 0.5
  352. 1.1 = 1
  353. 1.2 = -0.39
  354. 1.3 = -0.6
  355. 1.4 = 0.5
  356. 1.5 = 0.5
  357. }
  358. }
  359. rate 48000
  360. }
  361. converter samplerate_best
  362. }
  363. channels 2
  364. format S16_LE
  365. rate "unchanged"
  366. }
  367. hint {
  368. show {
  369. @func refer
  370. name defaults.namehint.basic
  371. }
  372. description "IEC958 (AC3) Digital Surround 2.0 -> 5.1 with all software conversions"
  373. device $DEV
  374. }
  375. }
  376.  
  377.  
  378.  
  379.  
  380.  
  381. # File: /usr/share/alsa/pcm/iec958.conf (Already exist seems same as tuto link)
  382. #
  383. # Hardware output from iec958
  384. #
  385.  
  386. pcm.!iec958 {
  387. @args [ CARD DEV AES0 AES1 AES2 AES3 ]
  388. @args.CARD {
  389. type string
  390. default {
  391. @func getenv
  392. vars [
  393. ALSA_IEC958_CARD
  394. ALSA_PCM_CARD
  395. ALSA_CARD
  396. ]
  397. default {
  398. @func refer
  399. name defaults.pcm.iec958.card
  400. }
  401. }
  402. }
  403. @args.DEV {
  404. type integer
  405. default {
  406. @func igetenv
  407. vars [
  408. ALSA_IEC958_DEVICE
  409. ]
  410. default {
  411. @func refer
  412. name defaults.pcm.iec958.device
  413. }
  414. }
  415. }
  416. @args.AES0 {
  417. type integer
  418. # consumer, not-copyright, emphasis-none, mode=0
  419. default 0x04
  420. }
  421. @args.AES1 {
  422. type integer
  423. # original, PCM coder
  424. default 0x82
  425. }
  426. @args.AES2 {
  427. type integer
  428. # source and channel
  429. default 0x00
  430. }
  431. @args.AES3 {
  432. type integer
  433. # fs=48000Hz, clock accuracy=1000ppm
  434. default 0x02
  435. }
  436. type empty
  437. slave.pcm {
  438. @func refer
  439. name {
  440. @func concat
  441. strings [
  442. "cards."
  443. {
  444. @func card_driver
  445. card $CARD
  446. }
  447. ".pcm.iec958." $DEV ":"
  448. "CARD=" $CARD ","
  449. "AES0=" $AES0 ","
  450. "AES1=" $AES1 ","
  451. "AES2=" $AES2 ","
  452. "AES3=" $AES3
  453. ]
  454. }
  455. }
  456. hint {
  457. show {
  458. @func refer
  459. name defaults.namehint.basic
  460. }
  461. description "IEC958 (S/PDIF) Digital Audio Output"
  462. device $DEV
  463. }
  464. }
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473. # File: /usr/share/alsa/pcm/hdmi.conf (Already exist Hdmi output just for compare)
  474. #
  475. # Hardware output from HDMI
  476. #
  477.  
  478. pcm.!hdmi {
  479. @args [ CARD DEV AES0 AES1 AES2 AES3 ]
  480. @args.CARD {
  481. type string
  482. default {
  483. @func getenv
  484. vars [
  485. ALSA_IEC958_CARD
  486. ALSA_PCM_CARD
  487. ALSA_CARD
  488. ]
  489. default {
  490. @func refer
  491. name defaults.pcm.iec958.card
  492. }
  493. }
  494. }
  495. @args.DEV {
  496. type integer
  497. default {
  498. @func igetenv
  499. vars [
  500. ALSA_IEC958_DEVICE
  501. ]
  502. default {
  503. @func refer
  504. name defaults.pcm.iec958.device
  505. }
  506. }
  507. }
  508. @args.AES0 {
  509. type integer
  510. # consumer, not-copyright, emphasis-none, mode=0
  511. default 0x04
  512. }
  513. @args.AES1 {
  514. type integer
  515. # original, PCM coder
  516. default 0x82
  517. }
  518. @args.AES2 {
  519. type integer
  520. # source and channel
  521. default 0x00
  522. }
  523. @args.AES3 {
  524. type integer
  525. # fs=48000Hz, clock accuracy=1000ppm
  526. default 0x02
  527. }
  528. type empty
  529. slave.pcm {
  530. @func refer
  531. name {
  532. @func concat
  533. strings [
  534. "cards."
  535. {
  536. @func card_driver
  537. card $CARD
  538. }
  539. ".pcm.hdmi." $DEV ":"
  540. "CARD=" $CARD ","
  541. "AES0=" $AES0 ","
  542. "AES1=" $AES1 ","
  543. "AES2=" $AES2 ","
  544. "AES3=" $AES3
  545. ]
  546. }
  547. }
  548. hint {
  549. show {
  550. @func refer
  551. name defaults.namehint.basic
  552. }
  553. description "HDMI Audio Output"
  554. device $DEV
  555. }
  556. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement