ALSA driver基本概念】的更多相关文章

https://blog.csdn.net/zyuanyun/article/details/59180272#t6 1.Card For each soundcard, a “card” record must be allocated. A card record is the headquarters of the soundcard. It manages the whole list of devices (components) on the soundcard, such as P…
1.channel 通道,即我们熟知的声道数.左/右声道,5.1channel等等 2.sample A sample is a single value that describes the amplitude of the audio signal at a single point in time, on a single channel. sample即一次采样,通常的sample bit指的是一个channnel上,一次采样的bit数(常见的sample bit 8/16/24/32b…
前面已经写过PCM 实例的创建框架,我们现在来看看PCM 实例是如何创建的. 在调用snd_pcm_new时就会创建一个snd_pcm类型的PCM 实例. struct snd_pcm { struct snd_card *card;//PCM device 说挂载的声卡 struct list_head list;//一个Card可能有多个PCM 实例,PCM 实例列表 int device; /* device number *///PCM 实例的索引 unsigned int info_f…
对于playback snd_pcm_begin snd_pcm_commit, 貌似 commit给的frame才会使得alsa去把数据填充 转自 http://magodo.github.io/ Zhaoting's Blog About ALSA - PCM接口 Apr 14, 2016 Table of Content 0. PCM 1. 概述 1.1 PCM设备的两种类型 1.2 PCM设备和ALSA应用的ring buffer 1.2.1 ring buffer - 单位(perio…
一.前言 对于一个嵌入式软件工程师,我们的软件模块经常和硬件打交道,pin control subsystem也不例外,被它驱动的硬件叫做pin controller(一般ARM soc的datasheet会把pin controller的内容放入GPIO controller的章节中),主要功能包括: (1)pin multiplexing.基于ARM core的嵌入式处理器一般会提供丰富的功能,例如camera interface.LCD interface.USB.I2C.SPI等等.虽然…
一.内核文档  Linux Sound Subsystem Documentation 二.一些API 1.snd_pcm_period_elapsed 2.snd_pcm_lib_buffer_bytes 3.snd_pcm_capture_avail 4.params_channels 5.snd_compr_ops 6.snd_soc_add_component_controls 7.snd_soc_add_codec_controls 8.snd_soc_add_platform_con…
1.调试 (1)把程序拷贝到服务器上进行编译 (2)把程序放到内核上面去 重新配置内核,吧原来的声卡驱动程序去掉 a. 修改语法错误 11th_myalsa b. 配置内核去掉原来的声卡驱动 -> Device Drivers   -> Sound card support     -> Advanced Linux Sound Architecture        -> ALSA for SoC audio support               c. 使用新内核启动 d.…
转自:http://www.wowotech.net/linux_kenrel/pin-controller-driver.html 一.前言 对于一个嵌入式软件工程师,我们的软件模块经常和硬件打交道,pin control subsystem也不例外,被它驱动的硬件叫做pin controller(一般ARM soc的datasheet会把pin controller的内容放入GPIO controller的章节中),主要功能包括: (1)pin multiplexing.基于ARM core…
1.  Platform驱动在ASoC中的作用 前面几章内容已经说过,ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过CPU的数字音频接口(DAI)把音频数据传送给Codec进行处理,最终由Codec输出驱动耳机或者是喇叭的音信信号.在具体实现上,ASoC有把Platform驱动分为两个部分:snd_soc_platform_driver和snd_soc_dai_driver.其中,platform_driver负责…
(注意:内核上电的时候会把一些没运行的控制器模块的时钟都关掉,所有在写驱动的时候需要在使用的使用使用clk_get和clk_enable使能时钟) (说明:与ALSA声卡对应的是OSS架构,第二期视频中的声卡驱动就是指的OSS架构驱动,ALSA可以模拟OSS) (amixer controls执行后返回的可设置属性里面input mux表示录音的时候的通道,在mini2440和tq2440上两者不同,需要修改) 1.裸板WAV文件格式:http://blog.chinaunix.net/uid-…