【问题标题】:Mixing two or more G.711 raw streams混合两个或多个 G.711 原始流
【发布时间】:2018-07-04 10:09:25
【问题描述】:

我正在尝试对几个 G.711 原始 RTP 流(每个 RTP 数据包包含 160 字节的原始 G.711 A/U 有效负载)进行实时动态混合,并且流都是时间同步的.

我尝试取所有流中每个字节的平均值并构建一个相同大小 (160) 的新数组,但它的值是原始流的平均值,但是在播放音频时,我也发现了嘈杂。

我也试过取最大值和最小值,混合输出更好,但仍然很吵..

混合 2 个或更多 G.711 原始流的正确方法是什么?

如果我在会议中有 3 部手机,每个打包间隔(比如 20 毫秒),我需要将来自两部手机的两个 RTP 数据包混合成一个 RTP 数据包并将其流式传输到第三个,依此类推。

BR, 莫塔塞姆

【问题讨论】:

  • 不幸的是,这不是编程问题,因为您似乎已经能够操纵流,但是在所需的精确混合方面遇到了麻烦。您最好查看其他专注于音频的 Stack Exchange 网站,例如 sound.stackexchange.com

标签: c# audio codec


【解决方案1】:

我已经找到了解决方案。我必须将流解码为 PCM 16 位样本,然后执行正常平均,然后重新编码结果

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 2014-01-06
    • 1970-01-01
    • 2020-08-27
    • 2011-10-10
    • 2013-08-29
    • 2013-12-30
    相关资源
    最近更新 更多