我需要多次播放波形文件。每次再次播放wave文件时,我都不想调用硬件/软件参数设置API。
{start...play wave partially...stop}, {start...play wave partially...stop}, {start...play wave partially...stop}, ...
这里使用什么api?删除未播放的帧是可以的。当我检查alsa API时,我可以看到很多类似的apis suspend / resume / stop ....对于上述用例启动和停止音频的正确组合是什么?
答案 0 :(得分:2)
使用snd_pcm_drop
停止PCM设备后,您可以通过调用snd_pcm_prepare
重新启动它,将新数据写入缓冲区,然后调用snd_pcm_start
或使用自动启动(默认启用)。