当前位置: 技术问答>linux和unix
ALSA打开设备问题求助
来源: 互联网 发布时间:2016-06-21
本文导语: 在linux下用alsa编程出现个问题: 首先打开设备snd_pcm_open(&mhandle,pcm_dev,SND_PCM_STREAM_CAPTURE,SND_PCM_ASYNC)进行录音操作, 然后在捕获了一定时间的数据后,关闭了此句柄snd_pcm_close(sound_handle); 到此步程序都没有错。 现在想播...
在linux下用alsa编程出现个问题:
首先打开设备snd_pcm_open(&mhandle,pcm_dev,SND_PCM_STREAM_CAPTURE,SND_PCM_ASYNC)进行录音操作,
然后在捕获了一定时间的数据后,关闭了此句柄snd_pcm_close(sound_handle);
到此步程序都没有错。
现在想播放刚才捕获的声音数据,我就再次打开设备snd_pcm_open(&mhandle,pcm_dev,SND_PCM_STREAM_PLAYBACK,SND_PCM_ASYNC)
此时程序说设备忙。
是不是在关闭句柄的同时还要关闭设备?应该用什么函数?
首先打开设备snd_pcm_open(&mhandle,pcm_dev,SND_PCM_STREAM_CAPTURE,SND_PCM_ASYNC)进行录音操作,
然后在捕获了一定时间的数据后,关闭了此句柄snd_pcm_close(sound_handle);
到此步程序都没有错。
现在想播放刚才捕获的声音数据,我就再次打开设备snd_pcm_open(&mhandle,pcm_dev,SND_PCM_STREAM_PLAYBACK,SND_PCM_ASYNC)
此时程序说设备忙。
是不是在关闭句柄的同时还要关闭设备?应该用什么函数?
|
按照道理是没有!
没招了,要不delay一下试试。
没招了,要不delay一下试试。
|
你先试下要等待多久才可以再次打开设备。