none
请教Windows Mobile 6下的蓝牙音频驱动 RRS feed

  • 常规讨论

  • 目前进行基于Windows Mobile 6平台的VOIP研究,已经实现了通过手机内置喇叭和内置 麦克风的音频播放和采集,但有回声,先不考虑AEC。 现在希望通过蓝牙耳机上的耳机和麦克风实现应用程序的音频播放和采集。 仅以音频播放为例,通过手机内置喇叭或有线耳机播放比较简单:通过waveOutOpen函 数打开默认音频设备WAVE_MAPPER(-1)即可。当然,参数直接改为喇叭的id:0也可以。 通过waveOutGetNumDevs函数可以得到有两个音频设备,通过waveOutGetDevCaps函数可 以看到一个设备就是喇叭(id0),另一个设备是蓝牙耳机(id1). 使用waveOutOpen函数打开蓝牙耳机,即第二个参数设置1,则函数直接返回错误。 网上查了一下,msdn里说使用AG(Audio Gateway),但这仅支持windows ce。查了半 天也不清楚WM6该如何实现。 还望高手指点,跪谢!
    2009年10月29日 10:45

全部回复

  • 返回什么错误?
    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2009年11月3日 10:05
    版主
  • 目前的研究进展:通过蓝牙耳机播放,其实在程序上和通过手机内置喇叭或有线耳机播放是一样的,这个控制在手机内部已经实现,不需要我们做额外的处理,也就说通过waveOutGetNumDevs函数虽然可以得到有两个音频设备,通过waveOutGetDevCaps函数可以看到一个设备就是喇叭(id0),另一个设备是蓝牙耳机(id1),实际上我们都可以通过喇叭来播放蓝牙。即蓝牙连通后,喇叭播放的过程中,按蓝牙耳机的“接听键”,喇叭的声音就会路由到蓝牙耳机上。现在的问题是:1,如何通过程序模拟按蓝牙耳机的接听键?2.蓝牙耳机播放几秒后就失效了,声音又从喇叭里出来了,不知道什么原因?

    2009年11月8日 5:23