【问题标题】:Combining multiple sound streams in Java在 Java 中组合多个声音流
【发布时间】:2010-07-30 16:47:51
【问题描述】:

我有一些以 PCM 编码的语音声音流(PCM_SIGNED 8000.0 Hz,16 位,单声道,2 字节/帧,little-endian),我想通过网络发送它们。为了节省带宽,我目前使用 JSpeex 对流进行编码。但是,为了节省更多带宽,我想(如果可能)在使用 JSpeex 编码之前将这些多个流组合成一个流。我的 DSP 知识严重缺乏,我想知道如何在 Java 中组合流?

【问题讨论】:

  • “将这些多个流合并为一个流”是什么意思?一个接一个地连接它们,还是什么?
  • 不要将它们组合在一起,使它们“重叠”在一起。基本上,这是一个语音聊天服务器,它将从所有连接的客户端接收一堆语音流,将它们混合/组合成一个流,然后将该单个流发送回所有客户端。

标签: java audio signal-processing speex jspeex


【解决方案1】:

我将多个音频流与此 MixingAudioInputStream 组合在一起。上面提到的 AudioConcat 示例使用了相同的类,它让您很好地了解如何进行混音。

您将选择的格式和 AudioInputStream 对象列表交给它,然后它将它们混合成一个混合的 AudioInputStream,您可以将其发送回客户端。

如果您的输入流长度或多或少相同,我发现它运行良好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-01
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 2018-09-27
    • 1970-01-01
    • 2010-11-27
    • 1970-01-01
    相关资源
    最近更新 更多