23,120
社区成员
发帖
与我相关
我的任务
分享
rt=snd_pcm_hw_params_set_period_size_near(handle1, params1, &frames, &dir1);
不管之前设的frames是多少,这条语句之后如果是读的声卡就成了512,如果是写的声卡就变成256,我用的是set啊哭晕……
没有思路了……[/quote]
snd_pcm_hw_params_set_period_size_near这个函数执行完后,period的值不一定会设置成用户指定的值,用户指定的值只是一个建议值,alsa会决定是否采用。函数执行完后,frame的值会被赋为最终的period的值。rt=snd_pcm_hw_params_set_period_size_near(handle1, params1, &frames, &dir1);
不管之前设的frames是多少,这条语句之后如果是读的声卡就成了512,如果是写的声卡就变成256,我用的是set啊哭晕……
没有思路了……frames = 512;
rt=snd_pcm_hw_params_set_period_size_near(handle1, params1, &frames, &dir1);
rt=snd_pcm_hw_params_set_period_size_near(handle2, params2, &frames, &dir2);
完成handle2之后frames变成了256……这个是什么问题?