DAMP
小K仔
这个作者很懒,什么都没留下…
展开
-
DAPM之二:audio paths与dapm kcontrol
在用alsa_amixer controls时,除了我们之前提到的snd_soc_add_controls添加的kcontrols外,还有一些多出来的controls。其实多出来的那些都是属于dapm kcontrol,主要用于切换音频路径。 一、AUDIO PATHS OVERVIEW以标准内核2.6.32的wm8900 codec转载 2013-03-26 14:36:21 · 953 阅读 · 0 评论 -
control控制接口
control控制接口控制接口对于许多开关(switch)和调节器(slider)应用广泛,它能被用户空间存取,从而读写CODEC相关寄存器。control的主要用于mixer。它用snd_kcontrol_new结构体描述。snd_kcontrol_new[cpp] view plaincopy转载 2013-03-26 15:42:00 · 3502 阅读 · 0 评论 -
Android如何找到正确的ALSA底层kcontrol接口?
昨天分析了一把snd_kcontrol,可以认为上层应用的确是通过名称标识name来遍历底层的snd_kcontrol链表,从而找到相匹配的kcontrol。见snd_ctl_find_id函数[cpp] view plaincopy/** * snd_ctl_find_id - find the control instance with转载 2013-03-26 16:00:07 · 780 阅读 · 0 评论 -
DAPM之五:dapm机制深入分析(上)
哲学里有三个终极命题:你是谁?从何处来?到何处去?而对于dapm机制,我们可以这样提问:dapm是什么,起到何作用?dapm是如何建立的?dapm又是如何触发的?下面会就这三个问题进行分析。首先是dapm是什么?这在DAPM之一:概述中提及了,就是音频电源动态管理。相信电源管理大家都不会陌生。dapm设计的目的就是只有需要时才打开必要的部件(widget),不需要时则关闭部件,达到省电的目转载 2013-03-26 18:01:43 · 834 阅读 · 0 评论 -
DAPM之六:dapm机制深入分析(下)
dapm触发时的入口函数是dapm_power_widgets,稍后详细分析这个函数,这里仅说其作用:检查每个dapm widget,如果该widget处在一条complete paths中,则power up这个widget,否则power down。dapm触发1、dapm widgets建立时,详见snd_soc_dapm_new_widgets;2、上层通过alsa转载 2013-03-27 09:40:34 · 791 阅读 · 0 评论