2011-11-17 44 views
0

我正在开发适用于Android应用程序的AIR,并且当前正通过标准NetStream/Microphone选项向fms服务器发送音频。我(无知)认为,连接蓝牙设备会非常简单,连接它会使其显示为本机“麦克风”。不幸的是,事实并非如此。用于移动的Adobe AIR:将蓝牙音频用作“麦克风”

我不认为甚至有可能使用Netstream.publish并发布原始字节,所以唯一的希望是有一种方法可以使用NativeProcess + Java创建AIR可以拾取的本机麦克风“句柄”上。

有没有人遇到过这个问题?

回答

1

我认为一种可能的解决方案是使用NetConnection.send()而不是Netstream.publish()

  1. 您应该从您的BT麦克风获取声音数据。我不确定您是否可以使用AIR。您可能需要使用安卓服务来获取声音数据,并通过文件,UDP端口或调用等为您的AIR应用程序提供内容。
  2. 当您获取某些声音数据时,请对其进行编码,以便Flash可以播放它(Speex, Nellymoiser等)你也可以在你的Android服务中进行编码。
  3. 只要您的AIR应用程序收到声音数据,请通过NetConnection.Send()将其发送到流媒体服务器。
  4. 扩展您的流媒体服务器以处理收到的声音数据。如果它是一个聊天应用程序,您可以将其嵌入flv流中,或发送给其他Flash客户端。

除此之外,我找不到为您的BT麦克风设置“麦克风手柄”的方法。我曾经想到creating a virtual device on Android,但我找不到任何解决方案。

相关问题