- 论坛徽章:
- 0
|
10可用积分
各位兄弟姐妹们:
现在有一个问题令我痛不欲生,希望能给点意见:
我在嵌入式设备上用了bluez 3.22,
能同时支持A2dp和handsfree的连接,
当我连上A2dp的时候,用mplayer播放音乐,声音很正常;
于是我开始打电话,电话也很正常,但是当电话通话时间超过一定时间(比如一分钟)后挂断,
挂断后再播放音乐,这时候必然出现播放断续的问题,
控制台不断打印:
[AO_ALSA] Write error: Resource temporarily unavailable
[AO_ALSA] Write error: Broken pipe
[AO_ALSA] Write error: Resource temporarily unavailable
[AO_ALSA] Write error: Broken pipe
[AO_ALSA] Write error: Resource temporarily unavailable
[AO_ALSA] Write error: Broken pipe
[AO_ALSA] Write error: Resource temporarily unavailable
[AO_ALSA] Write error: Broken pipe
说明:
Linux内核:2.6.21
bluez:3.22
芯片:csr的;
硬件平台:marvel pxa310;
连接方式:310和蓝牙芯片的a2dp是通过uart口连接的,波特率是921600,蓝牙芯片和codec之间的语音传输是通过pcm连接的;
肯定和mplayer没有关系,因为我用aplay来播放也是一样的;
另外,如果我在用mplayer播放音乐的时候先断开handsfree再播放音乐的话,蓝牙的音乐是没有断续的;
而断开handsfree所做的事情就是先断开sco连接,再关掉handsfree和远程设备之间的channel。
实在不明白为什么会这样???
如果还需要什么其它信息,请告诉我,
非常非常感谢,我已经折腾了几天了,
没有在baidu,google上搜索到有用的信息,才到这里求助,
如果问题比较低级,请别介意,
多提意见。
谢谢,谢谢,再谢谢! |
|