使用JnetPcap在视频呼叫中获取音频端口

时间:2016-04-13 08:39:19

标签: java sip voip jnetpcap

我正在尝试获取SDP标头的音频媒体的端口。我目前正在使用JnetPcap来捕获流量。

我从SDP标题中获取Media值,如下所示:

sdp.getAVP(Sdp.Fields.Media.name());    

(我知道这不是最漂亮的方式,我已经要求更好的替代方案here。)

这可以胜任。语音通话除外。当呼叫启用视频时,SDP标头包含2个媒体值,音频和视频。问题是getAVP()方法总是只返回视频值。

如何获取音频端口?

1 个答案:

答案 0 :(得分:0)

取决于您想要实现的目标:

  • 使用Wireshark捕获流量并手动查看c行和m行
  • 获取捕获的sdp对象并执行.ToString()并自行解析,逐行查找m =和c =
  • 使用sdp并使用JAIN SDP
  • 解析它

SDP的结构由RFC 4566定义:https://tools.ietf.org/html/rfc4566见“5.14。媒体描述(”m =“)”