![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
audio-alsa系列详解
文章平均质量分 86
走别人不走的路
会写代码的小哥哥,爱钓鱼的大叔。
展开
-
Android/Linux音频架构开发ALSA-篇6
这里我们主要看下snd_ctl_elem_read_user和snd_ctl_elem_write_user,应用层控制就通过调用ioctl传入SNDRV_CTL_IOCTL_ELEM_READ和SNDRV_CTL_IOCTL_ELEM_WRITE即可。上面snd_ctl_elem_write和snd_ctl_elem_read方法最终调用了kctl的put和get方法,这两个方法其实一般也是我们给的,我们来看下是如何给到的。获取snd_card,然后调用snd_register_device。原创 2024-08-09 16:51:19 · 845 阅读 · 0 评论 -
Android/Linux音频架构开发ALSA-篇5
文章讲解了pcm逻辑设备的创建过程,阐述了用户空间是如何查找到设备并调用驱动代码的。原创 2024-08-06 09:10:49 · 768 阅读 · 0 评论 -
Android/Linux音频架构开发ALSA-篇4
详细讲解了音频alsa架构中声卡的创建流程,通过剖析源码,进一步了解其中奥秘。原创 2024-08-05 17:18:08 · 386 阅读 · 0 评论 -
Android/Linux音频架构开发ALSA-篇3
文章介绍了ALSA的架构知识,讲述如何创建一个声卡snd_card,如何理解声卡。原创 2024-08-02 13:45:06 · 561 阅读 · 0 评论 -
Android/Linux音频架构开发ALSA-篇2
我们先来一张图来宏观的看一下ASLA的主要部分如图所示,我们可以看到整个系统是分为四个部分,运行app的用户层、linux中间层、Android hal层、kernel层、硬件层。我们的ASLA主要存在中间层和kernel层,中间层有一个alsa-lib的库,会提供api接口给app调用,app调用这个接口就可以传输音频数据或者控制信号给到kernel层的alsa driver,最终将数据写入到硬件层进行发声。这里还有个alsa soc,他是针对alsa driver的又一层封装,后面我们也会讲到。原创 2024-08-06 14:30:35 · 649 阅读 · 0 评论 -
Android/Linux音频架构开发ALSA-篇1
详细介绍音频的基本知识,为后续学习alsa架构奠定理论基础原创 2024-08-05 17:24:34 · 451 阅读 · 0 评论