ALSA:如何停止和恢复音频?

时间:2013-01-17 10:35:52

标签: linux audio alsa

我需要多次播放波形文件。每次再次播放wave文件时,我都不想调用硬件/软件参数设置API。

{start...play wave partially...stop}, {start...play wave partially...stop},  {start...play wave partially...stop}, ... 

这里使用什么api?删除未播放的帧是可以的。当我检查alsa API时,我可以看到很多类似的apis suspend / resume / stop ....对于上述用例启动和停止音频的正确组合是什么?

1 个答案:

答案 0 :(得分:2)

使用snd_pcm_drop停止PCM设备后,您可以通过调用snd_pcm_prepare重新启动它,将新数据写入缓冲区,然后调用snd_pcm_start或使用自动启动(默认启用)。