通过wifi / tcp的Java声音PCM流是非常“staticy”

时间:2011-05-02 00:53:21

标签: java android pcm noise

我编写了一个程序,将PCM流从我的电脑传输到另一台电脑或我的机器人(使用AudioTrack)。它使用java声音并从Stereo Mix混音器获取目标和源线。所有技术都可以工作(插座,混音器,线路,流,缓冲器等),但远程扬声器的输出非常静音。即使没有声音通过,也会有持续的噼啪声。我已经在手机和电脑上测试了相同的结果。

我该怎么办? 谢谢,   比尔

ps代码非常大,有点混乱,但如果你问的话,我可以将它发布到某个地方。

1 个答案:

答案 0 :(得分:0)

通常,静态意味着您正在向音频子系统提供不正确的数据:根据您描述的内容,音频路径中可能存在错误,我怀疑您是:

  1. 从源读取/发送/接收音频数据时遇到一些字节对齐问题。
  2. 无意中将您的网络流与接收端的本地环回音频混合在一起。
  3. 输入无效的静音数据(对于需要不断提供音频数据的声音子系统)。
  4. 你应该在没有沉默数据的情况下进食。