【freeswitch】SDP媒体协商问题定位问题

2019-06-14  本文已影响0人  安安爸Chris

这两天碰到一个问题,freeswitch呼叫软终端(eyebeam,x-lite等)怎么也呼不起来。有的是摘机后fs直接挂掉,有的是呼叫直接建立不了,回488消息。定位了一天,以为是SDP媒体协商问题。

FS也确实在日志里打印了媒体协商问题。


媒体发送不了导致挂机

FS在invite消息里带的SDP,


FS在invite消息里带的SDP

看了一下payload number是8 101, 一般来说用ulaw肯定没有问题。

再看一下软终端(eyebeam)回200OK时带的SDP


软终端带的SDP

IP地址和port都是无效的,所以freeswitch无法发送媒体包,进而导致挂机。

看了一下软终端的codec,也是OK的啊。


eyebeam的codec列表

郁闷了半天,后来发现freeswitch的originate命令中带了media_webrtc=true参数导致SDP无法协商。

media_webrtc=true是用于webrtc的。

把这个参数去掉后,就正常了。

观察了一下正常的SDP


fs上报sdp(不带media_webrtc参数)

果然使用的SDP格式不一样呢。

上一篇 下一篇

猜你喜欢

热点阅读