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