RTP:推荐策略以实现流畅的音频流

发布于 2024-11-17 09:02:09 字数 363 浏览 1 评论 0原文

让我解释一下当我说流畅的音频流时我的意思。

我有一个 VOIP 应用程序,它通过 UDP 传输封装在 RTP 包中的 PCMU 编码音频。我已经实现了处理包丢失的机制(如 rfc3550 中所建议的)。

问题是,由于平台限制(黑莓操作系统),我需要保持恒定的数据流,即我需要每 S 毫秒传递 X 字节。
由于网络延迟、未传递的数据报等。我无法保证恒定的数据流,因此我创建了一个单独的线程来补偿因假包而被丢弃或延迟传递的包(“沉默”)。

所以我的问题是 - 谁能建议一种将假包和真包结合起来的好方法?我意识到添加假包会自动增加延迟,也许我应该在此之后忽略真正的 RTP 包,但正如我所说,这是因为平台限制,我愿意在音频质量上做出妥协并进行一些额外的演讲损失。

Let me explain what I mean when I say fluent audio stream.

I have a VOIP application which transfers PCMU encoded audio wrapped in RTP packages through UDP. I already implemented mechanisms which deal with package losses(as suggested in rfc3550).

The problem is that due to platform limitations(blackberry OS) I need to maintain a constant flow of data i.e. I need to pass X bytes every S milliseconds.
Because of network delays, undelivered datagrams etc. I can't guarantee that constant data flow so I created a separate thread which compensates the packages which were dropped or delivered late with fake packages("silence").

So my question is - can anyone suggest a good way to combine the fake packages and the real ones? I realize that adding a fake package automatically increases the lag and maybe I should ignore a real RTP packages after that but as I said this is because of platform limitations and I am willing to make compromises with the quality of the audio and have some additional speech loss.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

想你只要分分秒秒 2024-11-24 09:02:09

您需要阅读以下内容:

  • 抖动缓冲区
  • 丢包隐藏

这些内容的存在是为了准确处理您正在处理的问题。

You need to read up on:

  • Jitter Buffers
  • Packet Loss Concealment

These exist to handle exactly the sort of problems you're dealing with.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文