snd_pcm_writei和snd_pcm_readi有什么区别?当我尝试使用这两个函数时,它们似乎都在从buffer中回放?似乎只有句柄是如何配置的,SND_PCM_STREAM_CAPTURE/SND_PCM_STREAM_PLAYBACK才能决定结果。我的印象是write是用来回放的,读是用来捕获的。有人可以澄清这一点,并为ALSA发布一个很好的教程吗?
frames = snd_pcm_writei(handle, Buffer, Size);
frames = snd_pcm_readi(handle, Buffer, Size);发布于 2014-09-07 21:53:11
snd_pcm_writei()将数据从您自己的缓冲区复制到设备的缓冲区中,并且只适用于播放设备。
snd_pcm_readi()将数据从设备的缓冲区复制到您自己的缓冲区中,并且仅适用于捕获设备。
https://stackoverflow.com/questions/25705462
复制相似问题