【问题标题】:What parameters need to be modified in an SDP/RTP header when relaying media through a B2BUA?通过 B2BUA 中继媒体时,需要在 SDP/RTP 标头中修改哪些参数?
【发布时间】:2016-03-05 14:54:34
【问题描述】:

如果我们必须在一个客户端之间使用 SIP 建立会话时将 RTP 媒体发送到另一个客户端,并且 SDP 协商已经在 INVITE 或 ACK 中完成,则在通过服务器位于客户端中间。

【问题讨论】:

  • 从你的问题很难回答你具体要找什么。如果您希望您的呼叫通过某个网关,通常会添加一个 Via 标头。
  • 仅用于媒体中继。对于 SIP 消息,我们确实会更改 via、记录路由等,但是当我们必须通过 b2bua 发送 RTP 和 RTCP 数据包时,我们必须重写哪些参数(ssrc 等?
  • 嗯,这通常是在SDP修改期间完成的。您可以从 OpenSIP 的 rtpproxy 模块和 rtpproxy 本身等项目中读取代码。你会知道它是怎么做的。
  • 好的,我去看看!

标签: c sip voip rtp sdp


【解决方案1】:

唯一需要在 B2BUA 中修改 SDP 的情况是,如果您需要对呼叫所涉及的端点之间的媒体流做一些事情。通常,端点处理 SDP 处理,但如果您需要使用 B2BUA 控制的媒体资源对媒体进行转码等操作,则媒体服务器通常会处理 SDP 修改。

例如,如果您使用支持 JSR 309 的 SIP servlet 容器进行媒体服务器控制来构建您的 B2BUA,则 SDP 将通过 MSML 在 SIP 容器和媒体服务器之间交换。 B2BUA 通常不直接修改 SDP。 JSR 309 是用于与媒体服务器通信的 API。 Dialogic XMS 或 Radisys MRF 等媒体服务器负责所有 SDP 操作,而 B2BUA 需要担心的是传递媒体服务器正在处理的 SDP。

【讨论】:

    【解决方案2】:

    您需要定义良好的 SIP 代理,并按照此处所述进行处理:https://www.voip-info.org/wiki/view/RTPProxy

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-23
      • 2012-10-03
      • 2011-06-11
      • 2021-03-07
      • 2021-02-21
      • 2018-10-22
      • 2015-01-09
      • 1970-01-01
      相关资源
      最近更新 更多