如何消除将我在 RTP 中收到的 pcma/aluw 文件转换为 wav 时添加的噪音?

How to remove noise added when converting pcma/aluw file I received in RTP to wav?

这是 sdp:

v=0
o=root 807151903 807151903 IN IP4 104.154.78.142
s=Asterisk PBX 11.18.0
c=IN IP4 104.154.78.142
t=0 0
m=audio 13822 RTP/AVP 8 101
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=sendrecv

我正在获取所有有效负载并使用 rdp-parser.

将它们合并到一个文件中
var b = p.parseRtpPacket(msg)
fs.appendFileSync("./b", b.payload)

我还尝试了其他 RTP 解析库以确保这不是解析器的问题。

那我是运行ffmpeg:

ffmpeg -f mulaw -ar 8000 -i b  a.wav

现在正在播放文件。我听到我的声音,背景中有很多噪音。 为什么?以及如何解决?

您应该改用 -alaw 格式。它会为你工作。