You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

130 lines
3.0 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. #
  2. #
  3. # 当前配置文件生效后会产生如下效果
  4. # 1. 通过amixer controls,可以看到如下音量控制器,其中通过Master Volume控制的是主音量,
  5. # default_playback用于在唤醒的时候降低背景声音。
  6. # root@firefly:~# amixer controls
  7. # numid=1,iface=MIXER,name='Master Volume'
  8. # numid=2,iface=MIXER,name='Ch1 Volume'
  9. # numid=3,iface=MIXER,name='Ch2 Volume'
  10. # numid=4,iface=MIXER,name='default_playback'
  11. # numid=5,iface=MIXER,name='wakeup_playback'
  12. #
  13. # 2. 通过aplay播放音频文件时,会自动通过default_playback设备播放,即其他应用程序例如chrome播放音频的时候也会自动使用这个设备
  14. # 3. 通过amixer控制音量时候,无需通过-c指定声卡编号
  15. # 4. 通过amixer通过default_playback控制音量来实现唤醒时降低背景声音。
  16. # 5. 通过amixer通过Master控制音量来实现对系统音量大小的控制。
  17. #
  18. pcm.!default {
  19. type plug
  20. slave.pcm "default_playback"
  21. }
  22. ctl.!default {
  23. type hw
  24. card 2
  25. }
  26. pcm.default_playback {
  27. type softvol
  28. slave {
  29. pcm "xa8326"
  30. }
  31. control {
  32. name "default_playback"
  33. card 2
  34. }
  35. min_dB -40.0
  36. max_dB 0.0
  37. resolution 100
  38. }
  39. pcm.wakeup_playback {
  40. type softvol
  41. slave {
  42. pcm "xa8326"
  43. }
  44. control {
  45. name "wakeup_playback"
  46. card 2
  47. }
  48. min_dB -40.0
  49. max_dB 0.0
  50. resolution 100
  51. }
  52. # 放音设备
  53. pcm.xa8326 {
  54. type plug
  55. slave {
  56. pcm {
  57. type dmix
  58. ipc_key 321456 # any unique value
  59. ipc_key_add_uid true
  60. slave {
  61. pcm "hw:2,0"
  62. period_time 100000 # 100ms
  63. format S16_LE
  64. channels 2
  65. }
  66. }
  67. rate 48000
  68. format S16_LE
  69. channels 2
  70. }
  71. }
  72. # 重采样
  73. pcm.recorder {
  74. type plug
  75. slave {
  76. pcm "recorder5ch"
  77. rate 48000
  78. format S16_LE
  79. channels 5
  80. }
  81. rate 16000
  82. format S16_LE
  83. channels 5
  84. }
  85. pcm.recorder5ch {
  86. type plug
  87. slave {
  88. pcm {
  89. type multi
  90. slaves.xa8326.pcm "hw:2,0"
  91. slaves.xa8326.channels 2
  92. slaves.pdm.pcm "hw:1,0"
  93. slaves.pdm.channels 8
  94. bindings.0.slave pdm
  95. bindings.0.channel 0
  96. bindings.1.slave pdm
  97. bindings.1.channel 1
  98. bindings.2.slave pdm
  99. bindings.2.channel 5
  100. bindings.3.slave pdm
  101. bindings.3.channel 6
  102. bindings.4.slave xa8326
  103. bindings.4.channel 0
  104. # bindings.5.slave pdm
  105. # bindings.5.channel 5
  106. # bindings.6.slave pdm
  107. # bindings.6.channel 6
  108. # bindings.7.slave pdm
  109. # bindings.7.channel 7
  110. # bindings.8.slave xa8326
  111. # bindings.8.channel 0
  112. # bindings.9.slave xa8326
  113. # bindings.9.channel 1
  114. }
  115. rate 48000
  116. format S16_LE
  117. channels 5
  118. }
  119. }