From 57b562d622f3e9ac59372349efadbc56e66e80fa Mon Sep 17 00:00:00 2001
From: 64850858 <648540858@qq.com>
Date: 星期二, 08 六月 2021 10:37:29 +0800
Subject: [PATCH] 添加流IP单独配置
---
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java | 12 ---
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerManger.java | 1
src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java | 119 +++++++++------------------------------
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerConfig.java | 10 +++
src/main/java/com/genersoft/iot/vmp/gb28181/utils/NumericUtil.java | 8 +-
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/AckRequestProcessor.java | 1
src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java | 22 +++---
src/main/resources/application-dev.yml | 2
src/main/resources/all-application.yml | 4 +
9 files changed, 58 insertions(+), 121 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java b/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java
index cd4e90d..c6b50b0 100644
--- a/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java
+++ b/src/main/java/com/genersoft/iot/vmp/conf/MediaConfig.java
@@ -17,6 +17,9 @@
@Value("${media.sdpIp:${media.ip}}")
private String sdpIp;
+ @Value("${media.streamIp:${media.ip}}")
+ private String streamIp;
+
@Value("${media.httpPort}")
private String httpPort;
@@ -60,135 +63,67 @@
return ip;
}
- public void setIp(String ip) {
- this.ip = ip;
- }
-
public String getHookIp() {
return hookIp;
}
- public void setHookIp(String hookIp) {
- this.hookIp = hookIp;
+ public String getSdpIp() {
+ return sdpIp;
+ }
+
+ public String getStreamIp() {
+ return streamIp;
}
public String getHttpPort() {
return httpPort;
}
- public void setHttpPort(String httpPort) {
- this.httpPort = httpPort;
- }
-
- public boolean isAutoConfig() {
- return autoConfig;
- }
-
- public boolean getAutoConfig() {
- return autoConfig;
- }
-
- public void setAutoConfig(boolean autoConfig) {
- this.autoConfig = autoConfig;
- }
-
- public String getSecret() {
- return secret;
- }
-
- public void setSecret(String secret) {
- this.secret = secret;
- }
-
- public String getStreamNoneReaderDelayMS() {
- return streamNoneReaderDelayMS;
- }
-
- public void setStreamNoneReaderDelayMS(String streamNoneReaderDelayMS) {
- this.streamNoneReaderDelayMS = streamNoneReaderDelayMS;
- }
-
- public boolean isRtpEnable() {
- return rtpEnable;
- }
-
- public void setRtpEnable(boolean rtpEnable) {
- this.rtpEnable = rtpEnable;
- }
-
- public String getRtpPortRange() {
- return rtpPortRange;
- }
-
- public void setRtpPortRange(String rtpPortRange) {
- this.rtpPortRange = rtpPortRange;
- }
-
public String getHttpSSlPort() {
return httpSSlPort;
- }
-
- public void setHttpSSlPort(String httpSSlPort) {
- this.httpSSlPort = httpSSlPort;
}
public String getRtmpPort() {
return rtmpPort;
}
- public void setRtmpPort(String rtmpPort) {
- this.rtmpPort = rtmpPort;
- }
-
public String getRtmpSSlPort() {
return rtmpSSlPort;
- }
-
- public void setRtmpSSlPort(String rtmpSSlPort) {
- this.rtmpSSlPort = rtmpSSlPort;
}
public String getRtpProxyPort() {
return rtpProxyPort;
}
- public void setRtpProxyPort(String rtpProxyPort) {
- this.rtpProxyPort = rtpProxyPort;
- }
-
public String getRtspPort() {
return rtspPort;
- }
-
- public void setRtspPort(String rtspPort) {
- this.rtspPort = rtspPort;
}
public String getRtspSSLPort() {
return rtspSSLPort;
}
- public void setRtspSSLPort(String rtspSSLPort) {
- this.rtspSSLPort = rtspSSLPort;
+ public boolean isAutoConfig() {
+ return autoConfig;
+ }
+
+ public String getSecret() {
+ return secret;
+ }
+
+ public String getStreamNoneReaderDelayMS() {
+ return streamNoneReaderDelayMS;
+ }
+
+ public boolean isRtpEnable() {
+ return rtpEnable;
+ }
+
+ public String getRtpPortRange() {
+ return rtpPortRange;
}
public int getRecordAssistPort() {
return recordAssistPort;
- }
-
- public void setRecordAssistPort(int recordAssistPort) {
- this.recordAssistPort = recordAssistPort;
- }
-
- public String getSdpIp() {
- if (StringUtils.isEmpty(sdpIp)) {
- return ip;
- }else {
- return sdpIp;
- }
- }
-
- public void setSdpIp(String sdpIp) {
- this.sdpIp = sdpIp;
}
}
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/AckRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/AckRequestProcessor.java
index 445f4d2..413f0d1 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/AckRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/AckRequestProcessor.java
@@ -24,7 +24,6 @@
*/
public class AckRequestProcessor extends SIPRequestAbstractProcessor {
-
private Logger logger = LoggerFactory.getLogger(AckRequestProcessor.class);
private IRedisCatchStorage redisCatchStorage;
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/NumericUtil.java b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/NumericUtil.java
index 3db3813..d990db9 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/NumericUtil.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/NumericUtil.java
@@ -20,10 +20,10 @@
public static boolean isDouble(String str) {
try {
Double num2 = Double.valueOf(str);
- logger.debug(num2 + " is a valid numeric string!");
+// logger.debug(num2 + " is a valid numeric string!");
return true;
} catch (Exception e) {
- logger.debug(str + " is an invalid numeric string!");
+// logger.debug(str + " is an invalid numeric string!");
return false;
}
}
@@ -36,10 +36,10 @@
public static boolean isInteger(String str) {
try {
int num2 = Integer.valueOf(str);
- logger.debug(num2 + " is an integer!");
+// logger.debug(num2 + " is an integer!");
return true;
} catch (Exception e) {
- logger.debug(str + " is not an integer!");
+// logger.debug(str + " is not an integer!");
return false;
}
}
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java
index d622101..09fec81 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java
@@ -6,8 +6,6 @@
import com.genersoft.iot.vmp.conf.MediaConfig;
import com.genersoft.iot.vmp.conf.SipConfig;
import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
-import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
-//import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
import com.genersoft.iot.vmp.service.IStreamProxyService;
import org.slf4j.Logger;
@@ -17,7 +15,6 @@
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
-import org.springframework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
@@ -33,13 +30,7 @@
private IVideoManagerStorager storager;
@Autowired
- private IRedisCatchStorage redisCatchStorage;
-
- @Autowired
private MediaConfig mediaConfig;
-
- @Autowired
- private SipConfig sipConfig;
@Value("${server.port}")
private String serverPort;
@@ -106,7 +97,6 @@
private void saveZLMConfig() {
logger.info("璁剧疆zlm...");
- if (StringUtils.isEmpty(mediaConfig.getHookIp())) mediaConfig.setHookIp(sipConfig.getSipIp());
String protocol = sslEnabled ? "https" : "http";
String hookPrex = String.format("%s://%s:%s/index/hook", protocol, mediaConfig.getHookIp(), serverPort);
String recordHookPrex = null;
@@ -149,7 +139,7 @@
logger.info( "[ id: " + zlmServerConfig.getGeneralMediaServerId() + "] zlm鎺ュ叆鎴愬姛...");
// 鍏抽棴寰幆鑾峰彇zlm閰嶇疆
startGetMedia = false;
- if (mediaConfig.getAutoConfig()) saveZLMConfig();
+ if (mediaConfig.isAutoConfig()) saveZLMConfig();
zlmServerManger.updateServerCatch(zlmServerConfig);
// 娓呯┖鎵�鏈塻ession
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerConfig.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerConfig.java
index 10b368c..270a632 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerConfig.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerConfig.java
@@ -39,6 +39,8 @@
private String sdpIp;
+ private String streamIp;
+
private long updateTime;
@JSONField(name = "hls.fileBufSize")
@@ -765,4 +767,12 @@
public void setSdpIp(String sdpIp) {
this.sdpIp = sdpIp;
}
+
+ public String getStreamIp() {
+ return streamIp;
+ }
+
+ public void setStreamIp(String streamIp) {
+ this.streamIp = streamIp;
+ }
}
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerManger.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerManger.java
index 4018993..3770d80 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerManger.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMServerManger.java
@@ -19,6 +19,7 @@
public void updateServerCatch(ZLMServerConfig zlmServerConfig) {
zlmServerConfig.setIp(mediaConfig.getIp());
+ zlmServerConfig.setStreamIp(mediaConfig.getStreamIp());
zlmServerConfig.setSdpIp(mediaConfig.getSdpIp());
zlmServerConfig.setHttpPort(mediaConfig.getHttpPort());
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
index 19cba05..4855d1d 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
@@ -32,17 +32,17 @@
StreamInfo streamInfoResult = new StreamInfo();
streamInfoResult.setStreamId(stream);
streamInfoResult.setApp(app);
- streamInfoResult.setRtmp(String.format("rtmp://%s:%s/%s/%s", mediaInfo.getIp(), mediaInfo.getRtmpPort(), app, stream));
- streamInfoResult.setRtsp(String.format("rtsp://%s:%s/%s/%s", mediaInfo.getIp(), mediaInfo.getRtspPort(), app, stream));
- streamInfoResult.setFlv(String.format("http://%s:%s/%s/%s.flv", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setWs_flv(String.format("ws://%s:%s/%s/%s.flv", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setHls(String.format("http://%s:%s/%s/%s/hls.m3u8", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setWs_hls(String.format("ws://%s:%s/%s/%s/hls.m3u8", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setFmp4(String.format("http://%s:%s/%s/%s.live.mp4", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setWs_fmp4(String.format("ws://%s:%s/%s/%s.live.mp4", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setTs(String.format("http://%s:%s/%s/%s.live.ts", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setWs_ts(String.format("ws://%s:%s/%s/%s.live.ts", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
- streamInfoResult.setRtc(String.format("http://%s:%s/index/api/webrtc?app=%s&stream=%s&type=play", mediaInfo.getIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setRtmp(String.format("rtmp://%s:%s/%s/%s", mediaInfo.getStreamIp(), mediaInfo.getRtmpPort(), app, stream));
+ streamInfoResult.setRtsp(String.format("rtsp://%s:%s/%s/%s", mediaInfo.getStreamIp(), mediaInfo.getRtspPort(), app, stream));
+ streamInfoResult.setFlv(String.format("http://%s:%s/%s/%s.flv", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setWs_flv(String.format("ws://%s:%s/%s/%s.flv", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setHls(String.format("http://%s:%s/%s/%s/hls.m3u8", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setWs_hls(String.format("ws://%s:%s/%s/%s/hls.m3u8", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setFmp4(String.format("http://%s:%s/%s/%s.live.mp4", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setWs_fmp4(String.format("ws://%s:%s/%s/%s.live.mp4", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setTs(String.format("http://%s:%s/%s/%s.live.ts", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setWs_ts(String.format("ws://%s:%s/%s/%s.live.ts", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
+ streamInfoResult.setRtc(String.format("http://%s:%s/index/api/webrtc?app=%s&stream=%s&type=play", mediaInfo.getStreamIp(), mediaInfo.getHttpPort(), app, stream));
streamInfoResult.setTracks(tracks);
return streamInfoResult;
}
diff --git a/src/main/resources/all-application.yml b/src/main/resources/all-application.yml
index 804da1d..e268375 100644
--- a/src/main/resources/all-application.yml
+++ b/src/main/resources/all-application.yml
@@ -68,10 +68,12 @@
# [鍙�塢 蹇冭烦瓒呮椂鏃堕棿锛� 寤鸿璁剧疆涓哄績璺冲懆鏈熺殑涓夊��
keepaliveTimeOut: 180
-#zlm鏈嶅姟鍣ㄩ厤缃�
+#zlm 榛樿鏈嶅姟鍣ㄩ厤缃�
media:
# [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP
ip: 192.168.0.100
+ # [鍙�塢 杩斿洖娴佸湴鍧�鏃剁殑ip锛岀疆绌轰娇鐢� media.ip
+ streamIp:
# [鍙�塢 wvp鍦ㄥ浗鏍囦俊浠や腑浣跨敤鐨刬p锛屾ip涓烘憚鍍忔満鍙互璁块棶鍒扮殑ip锛� 缃┖浣跨敤 media.ip
sdpIp:
# [鍙�塢 zlm鏈嶅姟鍣ㄧ殑hook鎵�浣跨敤鐨処P, 榛樿浣跨敤sip.ip
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index b70bce4..96f7f6a 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -42,7 +42,7 @@
# [鍙�塢 榛樿璁惧璁よ瘉瀵嗙爜锛屽悗缁墿灞曚娇鐢ㄨ澶囧崟鐙瘑鐮�, 绉婚櫎瀵嗙爜灏嗕笉杩涜鏍¢獙
password: admin123
-#zlm鏈嶅姟鍣ㄩ厤缃�
+#zlm 榛樿鏈嶅姟鍣ㄩ厤缃�
media:
# [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP
ip: 192.168.0.100
--
Gitblit v1.8.0