From f4ee7271e70acb596bdd74321faf228658afccec Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 08 十一月 2022 20:03:01 +0800
Subject: [PATCH] Merge pull request #661 from xiaoQQya/wvp-28181-2.0
---
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java | 35 +++++++++++++++++++++++++----------
1 files changed, 25 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
index b374461..b36242e 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
@@ -1,6 +1,6 @@
package com.genersoft.iot.vmp.gb28181.transmit.cmd.impl;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSONObject;
import com.genersoft.iot.vmp.common.StreamInfo;
import com.genersoft.iot.vmp.conf.DynamicTask;
import com.genersoft.iot.vmp.conf.SipConfig;
@@ -290,12 +290,17 @@
subscribe.removeSubscribe(hookSubscribe);
}
});
- //
+ String sdpIp;
+ if (!ObjectUtils.isEmpty(device.getSdpIp())) {
+ sdpIp = device.getSdpIp();
+ }else {
+ sdpIp = mediaServerItem.getSdpIp();
+ }
StringBuffer content = new StringBuffer(200);
content.append("v=0\r\n");
- content.append("o=" + channelId + " 0 0 IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("o=" + channelId + " 0 0 IN IP4 " + sdpIp + "\r\n");
content.append("s=Play\r\n");
- content.append("c=IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("c=IN IP4 " + sdpIp + "\r\n");
content.append("t=0 0\r\n");
if (userSetting.isSeniorSdp()) {
@@ -379,13 +384,18 @@
logger.info("{} 鍒嗛厤鐨刏LM涓�: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getId(), mediaServerItem.getIp(), ssrcInfo.getPort());
-
+ String sdpIp;
+ if (!ObjectUtils.isEmpty(device.getSdpIp())) {
+ sdpIp = device.getSdpIp();
+ }else {
+ sdpIp = mediaServerItem.getSdpIp();
+ }
StringBuffer content = new StringBuffer(200);
content.append("v=0\r\n");
- content.append("o=" + channelId + " 0 0 IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("o=" + channelId + " 0 0 IN IP4 " + sdpIp + "\r\n");
content.append("s=Playback\r\n");
content.append("u=" + channelId + ":0\r\n");
- content.append("c=IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("c=IN IP4 " + sdpIp + "\r\n");
content.append("t=" + DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(startTime) + " "
+ DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(endTime) + "\r\n");
@@ -476,13 +486,18 @@
SipSubscribe.Event errorEvent) throws InvalidArgumentException, SipException, ParseException {
logger.info("{} 鍒嗛厤鐨刏LM涓�: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getId(), mediaServerItem.getIp(), ssrcInfo.getPort());
-
+ String sdpIp;
+ if (!ObjectUtils.isEmpty(device.getSdpIp())) {
+ sdpIp = device.getSdpIp();
+ }else {
+ sdpIp = mediaServerItem.getSdpIp();
+ }
StringBuffer content = new StringBuffer(200);
content.append("v=0\r\n");
- content.append("o=" + channelId + " 0 0 IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("o=" + channelId + " 0 0 IN IP4 " + sdpIp + "\r\n");
content.append("s=Download\r\n");
content.append("u=" + channelId + ":0\r\n");
- content.append("c=IN IP4 " + mediaServerItem.getSdpIp() + "\r\n");
+ content.append("c=IN IP4 " + sdpIp + "\r\n");
content.append("t=" + DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(startTime) + " "
+ DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(endTime) + "\r\n");
--
Gitblit v1.8.0