目标内核是:2.6.35.14(旧),它运行在嵌入式平台上,编解码器是wm8753。
我试图了解 alsactl 系统是如何工作的。我找到了一个文件 asound.play @ etc/alsa ,这是手册页引用的配置文件。我不确定为什么我的被称为 asound.play 而不是 asound.state 但正在运行:
#alsactl init
#alsactl -f /etc/alsa/asound.play store
将默认 asound.play 文件。使用自定义版本声音可以工作,但使用默认配置则不行。以下是默认配置和自定义配置的 asound.play 文件的摘录。请记住,这只是 85 中的一个控制块:
默认:
control.1 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 255'
comment.dbmin -12750
comment.dbmax 0
iface MIXER
name 'PCM Volume'
value.0 215
value.1 215
}
风俗:
control.1 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 255'
iface MIXER
name 'PCM Volume'
value.0 250
value.1 250
}
对我来说,最初定制该文件的人如何知道她/他需要摆脱 comment.dbmin 和 dbmax 并不明显。那么,人们如何才能弄清楚应该如何自定义该文件以使声音正常工作呢?猜测并检查?
答案1
我猜想dbmin
/dbmax
注释丢失了,因为该文件是用旧版本的驱动程序生成的,还没有 dB 信息。不管怎样,评论会被忽略alsactl restore
,所以这并不重要。
和iface
条目name
标识混音器控件;这些value
值指定该控件的值。
为了让声音发挥作用,您必须了解这些混音器控件如何影响硬件。显然,创建这些自定义设置的人都知道。