首先问题现象如题,具体的情况是我在一个线程中先catpure然后playback,结果在playback相关函数调用中发现,snd_pcm_writei会持续性的发生underrun现象(返回值为-32)。正常的人声是可以听到的,就是伴随着”滋滋“声。
首先在我的程序中针对cature和playback设备的参数配置都是参照arecord(aplay)源码进行编写的。所以参数应该不会有什么问题。
接着我试验了”arecord 参数 | aplay 参数“ 这个测试方法,发现它是没有几乎没有underrun现象的(或偶尔一个),但是这种方式是进程间通讯,使用到了管道符号”|“,我的程序没有进程间通讯,只有开线程。
请问了,有谁知道怎样在一个程序中设计capture,playback通讯吗,如果可以的话,给一些代码参考啊
首先在我的程序中针对cature和playback设备的参数配置都是参照arecord(aplay)源码进行编写的。所以参数应该不会有什么问题。
接着我试验了”arecord 参数 | aplay 参数“ 这个测试方法,发现它是没有几乎没有underrun现象的(或偶尔一个),但是这种方式是进程间通讯,使用到了管道符号”|“,我的程序没有进程间通讯,只有开线程。
请问了,有谁知道怎样在一个程序中设计capture,playback通讯吗,如果可以的话,给一些代码参考啊
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货