【问题标题】:OpalVoip H323 call failure when connecting to an MCUOpalVoip H323 连接到 MCU 时呼叫失败
【发布时间】:2013-12-30 11:14:22
【问题描述】:

我正在使用 OpalVoip 库 (3.12.8) 来实现 H323 堆栈。 如果我从 opalVoip 呼叫另一个终端,则呼叫通过,但如果我呼叫 MCU。呼叫失败,找不到通用编解码器。

从有效的 h323 终端(不是蛋白石)捕获的呼叫流程如下(通过 wireshark)。

OpalVoip 的通话流程如下

我发现如果 opalVoip 在 MCU 之前发送 OLC,那么调用会失败。这次在第三次 OLC 尝试中,MCU 发送了一个 OLC,并且呼叫在第四次尝试中通过。 Opal 总是在成功连接后发送 OLC。有什么办法让它等到它收到另一个客户端的OLC。 终端(硬件)始终成功连接到 MCU。可能是 OPAL。在流终端和 OPAL 中始终选择作为主控。在流程中,如果终端连接到MCU,则等待OLC,但如果连接到另一个终端,则尽快发送OLC。

【问题讨论】:

    标签: voip h.323 opalvoip


    【解决方案1】:

    我不认为您可以让 OPAL 等待发送 OLC,但在从 MCU 获取 OLC 之前发送 OLC 的事实可能不是问题。

    我的猜测是您的 OPAL 客户端使用的编解码器之一与您的 MCU 不兼容。您可以查看被 MCU 拒绝的 OLC 内部,并为下一次测试调用禁用该编解码器,然后查看 MCU 是否接受另一个编解码器的 OLC(可能是 H.264)。

    【讨论】:

    • MCU 兼容 H.264。问题是有时它工作得很好。有时它不工作,就像上面的例子一样。
    • 无论如何我都会尝试。 H.264 有几十个协议选项,而 OPAL 编解码器可能无法同等地支持所有这些选项。所以它可能适用于一些andpoints而不适用于其他人。在 OLCReject 上,您还可以找到一个有用的拒绝原因。
    • 拒绝的不是蛋白石,MCU 拒绝了它。我逐位检查了H.264协议,它是一样的。原因在某些情况下是 Null,在某些情况下是“主从冲突”。我可以看到蛋白石最多尝试 4 次。是否有可能增加它。是否可以将蛋白石设置为奴隶。
    • 主/从总是协商,但是如果你在 OPAL 中实现了一个端点,kt 应该有一个终端标志,并且应该总是放松与 MCU 的主从协商。
    • 我检查了编解码器,H.264 可能是罪魁祸首,H.263 工作正常。我需要 H.264 才能工作,我通过 GetOpalH264_MODE0() 初始化了 H.264。我错过了什么吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多