浅析alsa声卡驱动snd_pcm_start函数-将音频数据真实的发送到外部音频接口硬件
来源:互联网 发布:时时彩组选计划软件 编辑:程序博客网 时间:2024/04/30 23:06
转载自链接:浅析alsa声卡驱动snd_pcm_start函数-将音频数据真实的发送到外部音频接口硬件-gliethttp-ChinaUnix博客 http://blog.chinaunix.net/uid-20564848-id-74236.html
将音频数据真实的发送到外部音频接口硬件
/**
* snd_pcm_start - start all linked streams
* @substream: the PCM substream instance
*/
int snd_pcm_start(struct snd_pcm_substream *substream)
{
// 启动发送,将streams中的所有音频数据递交到硬件[luther.gliethttp]
// 执行snd_pcm_action_start
// ==> snd_pcm_do_start
// ==> substream->ops->trigger(substream, SNDRV_PCM_TRIGGER_START);
// ==> 即调用soc_pcm_ops.soc_pcm_trigger
// ==> platform->pcm_ops->trigger
// ==> 最后调用s3c24xx_pcm_trigger启动s3c24xx处理器的DMA通道发送音频数据到外围接口硬件[luther.gliethttp]
// 这里的platform就是s3c24xx_soc_platform
// struct snd_soc_platform s3c24xx_soc_platform = {
// .name = "s3c24xx-audio",
// .pcm_ops = &s3c24xx_pcm_ops,
// .pcm_new = s3c24xx_pcm_new,
// .pcm_free = s3c24xx_pcm_free_dma_buffers,
//};
// static struct snd_pcm_ops s3c24xx_pcm_ops = {
// .open = s3c24xx_pcm_open,
// .close = s3c24xx_pcm_close,
// .ioctl = snd_pcm_lib_ioctl,
// .hw_params = s3c24xx_pcm_hw_params,
// .hw_free = s3c24xx_pcm_hw_free,
// .prepare = s3c24xx_pcm_prepare,
// .trigger = s3c24xx_pcm_trigger,
// .pointer = s3c24xx_pcm_pointer,
// .mmap = s3c24xx_pcm_mmap,
//};
return snd_pcm_action(&snd_pcm_action_start, substream,
SNDRV_PCM_STATE_RUNNING);
}
- 浅析alsa声卡驱动snd_pcm_start函数-将音频数据真实的发送到外部音频接口硬件
- 浅析alsa声卡驱动snd_pcm_hw_param_mask函数
- Virtual Audio Cable使用笔记一:使用Virtual Audio Cable将播放器的音频流传输到真实声卡驱动中
- 基于ALSA的声卡驱动分析
- Linux ALSA声卡驱动
- alsa声卡驱动移植
- Linux ALSA声卡驱动
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Linux ALSA声卡驱动之二:声卡的创建
- Win10,为物联网提供强劲动力
- 缓存的实现,主要是图片缓存整理
- presentViewControl视图大小控制真奇葩
- UVa 11925 - Generating Permutations
- Android Studio发布项目到Jcenter
- 浅析alsa声卡驱动snd_pcm_start函数-将音频数据真实的发送到外部音频接口硬件
- bash 的快捷键
- C指针
- 关于 Java 的break,continue,return 的用法
- redis主从配置及通过keepalived实现redis自动切换
- xcode6下百度地图开发注意事项
- c语言中获取整数和浮点数的符号位
- 适配器模式(Adapter Pattern)(C++实现)
- HashMap实现原理分析