这个参数的正确类型是什么?

时间:2010-09-24 20:48:21

标签: c++ c linux alsa

这个适合所有ALSA男士。我需要在这里进行健全检查。我使用alsa-lib api播放声音,我用来将数据写入驱动程序的函数是

snd_pcm_sframes_t snd_pcm_writei (snd_pcm_t* pcm,
                                  const void* buffer,
                                  snd_pcm_uframes_t size);

对于第三个参数,它应该是帧计数还是缓冲区的大小(以字节为单位)?我问,因为我已经看到了许多以字节为单位传入的示例。documentation中包含一个示例。

1 个答案:

答案 0 :(得分:4)

根据文档,它是帧的数量,而不是字节。

在示例中,您链接到的值恰好相同,因为它使用8位采样和一个通道,而一个通道8位数据的一帧是一个字节。