From cb1f1417b622b20e94133d89c6cb7fa9cbe6f4ed Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 15 十二月 2023 22:44:41 +0800 Subject: [PATCH] 兼容回复的invite 200OK消息中缺少ssrc(y字段)的情况 --- src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java | 12 +++++++++++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java index 4e2a174..05169b7 100755 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java @@ -314,7 +314,13 @@ if (!device.getStreamMode().equalsIgnoreCase("TCP-ACTIVE")) { return; } - String substring = contentString.substring(0, contentString.indexOf("y=")); + + String substring; + if (contentString.indexOf("y=") > 0) { + substring = contentString.substring(0, contentString.indexOf("y=")); + }else { + substring = contentString; + } try { SessionDescription sdp = SdpFactory.getInstance().createSessionDescription(substring); int port = -1; @@ -568,6 +574,10 @@ ResponseEvent responseEvent = (ResponseEvent) eventResult.event; String contentString = new String(responseEvent.getResponse().getRawContent()); String ssrcInResponse = SipUtils.getSsrcFromSdp(contentString); + // 鍏煎鍥炲鐨勬秷鎭腑缂哄皯ssrc(y瀛楁)鐨勬儏鍐� + if (ssrcInResponse == null) { + ssrcInResponse = ssrcInfo.getSsrc(); + } if (ssrcInfo.getSsrc().equals(ssrcInResponse)) { // ssrc 涓�鑷� if (mediaServerItem.isRtpEnable()) { -- Gitblit v1.8.0