alsa pcm接口之在unix环境的传输方法

在unix环境,数据片段响应被接受通过standard I/O call或事件等待路径(poll或select功能),为完成列表,异步通知响应该被列举出来.ALSA实现那些方法被描述在ALSA transfers部分.
标准I/O传输(Standadrd I/O transfers)

这个标准I/O传输常常使用read和write C语言函数集,对于那些函数那儿有两种基本行为-blocked和non-blocked,在non-block 行为,那些I/O函数不会停止,当没有数据可以传输(the ringbuffer满了),他们将返回-EAGIN错误码;在阻塞行为,那些IO函数将会停止并且等待有空闲ringbuffer(playback 播放)或直到那儿有新的样本(capture捕获),这个ALSA 实现将会被发现READ/Write传输片段.
事件等待路径(Event waiting routines)

poll或select函数允许接受请求或事件来自设备当应用程序正在等待事件来自于其他sources(比如keyboard,screen,network或者其他,snd_pcm_poll_descriptors被用来得到文件描述符通过poll或select函数,snd_pcm_poll_descriptors_revents.
异步通知Asynchrounous notification

Alsa和库可以通过一个异步通知处理通过一个SIGIO信号,在信号处理函数中,这个信号允许中断应用和传输数据.

相关推荐
郁大锤6 天前
linux alsa-lib snd_pcm_open函数源码分析(一)
linux·驱动开发·嵌入式硬件·音频·pcm·视频编解码
sdkdlwk7 天前
查看多个通道32bit音频pcm数据
音视频·pcm
帅气好男人_Jack7 天前
利用Matlab工具生成滤波器
算法·pcm
易板12 天前
PCM5102A具有PLL和32位、384kHz PCM/I2S接口的2.1VRMS、112dB音频立体声DAC
音频·pcm·dac·i2s·1024程序员节
韩zj1 个月前
android 蓝牙语音转换成pcm文件,进行播放暂停停止操作
android·蓝牙·pcm
DevinLGT1 个月前
音频编码:PCM【无损音频】
嵌入式硬件·音视频·pcm
懮 俍1 个月前
前端请求音频返回pcm流进行播放
前端·vue.js·音视频·pcm
桃根仙2 个月前
调用系统的录音设备提示:line with format PCM_SIGNED 16000.0 Hz
pcm
limengshi1383922 个月前
通信工程学习:什么是PCM脉冲编码调制、DPCM差分脉冲编码调制、ADPCM自适应差分脉冲编码调制
网络·学习·信息与通信·pcm·adpcm
C有点难。2 个月前
音频原始数据PCM
音视频·pcm