From d6262acf6ab2a5083e62ea98299b378f61cd5421 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期四, 20 四月 2023 16:42:44 +0800
Subject: [PATCH] 更新readme
---
src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java | 219 ++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 186 insertions(+), 33 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java b/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
index 20a286c..a501daf 100644
--- a/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
+++ b/src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
@@ -2,10 +2,11 @@
import io.swagger.v3.oas.annotations.media.Schema;
-import java.net.URL;
+import java.io.Serializable;
+import java.util.Objects;
@Schema(description = "娴佷俊鎭�")
-public class StreamInfo {
+public class StreamInfo implements Serializable, Cloneable{
@Schema(description = "搴旂敤鍚�")
private String app;
@@ -79,27 +80,121 @@
@Schema(description = "鏄惁鏆傚仠锛堝綍鍍忓洖鏀句娇鐢級")
private boolean pause;
+ public void setFlv(StreamURL flv) {
+ this.flv = flv;
+ }
+
+ public void setHttps_flv(StreamURL https_flv) {
+ this.https_flv = https_flv;
+ }
+
+ public void setWs_flv(StreamURL ws_flv) {
+ this.ws_flv = ws_flv;
+ }
+
+ public void setWss_flv(StreamURL wss_flv) {
+ this.wss_flv = wss_flv;
+ }
+
+ public void setFmp4(StreamURL fmp4) {
+ this.fmp4 = fmp4;
+ }
+
+ public void setHttps_fmp4(StreamURL https_fmp4) {
+ this.https_fmp4 = https_fmp4;
+ }
+
+ public void setWs_fmp4(StreamURL ws_fmp4) {
+ this.ws_fmp4 = ws_fmp4;
+ }
+
+ public void setWss_fmp4(StreamURL wss_fmp4) {
+ this.wss_fmp4 = wss_fmp4;
+ }
+
+ public void setHls(StreamURL hls) {
+ this.hls = hls;
+ }
+
+ public void setHttps_hls(StreamURL https_hls) {
+ this.https_hls = https_hls;
+ }
+
+ public void setWs_hls(StreamURL ws_hls) {
+ this.ws_hls = ws_hls;
+ }
+
+ public void setWss_hls(StreamURL wss_hls) {
+ this.wss_hls = wss_hls;
+ }
+
+ public void setTs(StreamURL ts) {
+ this.ts = ts;
+ }
+
+ public void setHttps_ts(StreamURL https_ts) {
+ this.https_ts = https_ts;
+ }
+
+ public void setWs_ts(StreamURL ws_ts) {
+ this.ws_ts = ws_ts;
+ }
+
+ public void setWss_ts(StreamURL wss_ts) {
+ this.wss_ts = wss_ts;
+ }
+
+ public void setRtmp(StreamURL rtmp) {
+ this.rtmp = rtmp;
+ }
+
+ public void setRtmps(StreamURL rtmps) {
+ this.rtmps = rtmps;
+ }
+
+ public void setRtsp(StreamURL rtsp) {
+ this.rtsp = rtsp;
+ }
+
+ public void setRtsps(StreamURL rtsps) {
+ this.rtsps = rtsps;
+ }
+
+ public void setRtc(StreamURL rtc) {
+ this.rtc = rtc;
+ }
+
+ public void setRtcs(StreamURL rtcs) {
+ this.rtcs = rtcs;
+ }
+
public void setRtmp(String host, int port, int sslPort, String app, String stream, String callIdParam) {
- String file = String.format("%s/%s/%s", app, stream, callIdParam);
- this.rtmp = new StreamURL("rtmp", host, port, file);
- if (sslPort != 0) {
+ String file = String.format("%s/%s%s", app, stream, callIdParam);
+ if (port > 0) {
+ this.rtmp = new StreamURL("rtmp", host, port, file);
+ }
+ if (sslPort > 0) {
this.rtmps = new StreamURL("rtmps", host, sslPort, file);
}
}
public void setRtsp(String host, int port, int sslPort, String app, String stream, String callIdParam) {
- String file = String.format("%s/%s/%s", app, stream, callIdParam);
- this.rtsp = new StreamURL("rtsp", host, port, file);
- if (sslPort != 0) {
+ String file = String.format("%s/%s%s", app, stream, callIdParam);
+ if (port > 0) {
+ this.rtsp = new StreamURL("rtsp", host, port, file);
+ }
+ if (sslPort > 0) {
this.rtsps = new StreamURL("rtsps", host, sslPort, file);
}
}
public void setFlv(String host, int port, int sslPort, String app, String stream, String callIdParam) {
String file = String.format("%s/%s.live.flv%s", app, stream, callIdParam);
- this.flv = new StreamURL("http", host, port, file);
+ if (port > 0) {
+ this.flv = new StreamURL("http", host, port, file);
+ }
this.ws_flv = new StreamURL("ws", host, port, file);
- if (sslPort != 0) {
+ if (sslPort > 0) {
this.https_flv = new StreamURL("https", host, sslPort, file);
this.wss_flv = new StreamURL("wss", host, sslPort, file);
}
@@ -107,9 +202,11 @@
public void setFmp4(String host, int port, int sslPort, String app, String stream, String callIdParam) {
String file = String.format("%s/%s.live.mp4%s", app, stream, callIdParam);
- this.fmp4 = new StreamURL("http", host, port, file);
- this.ws_fmp4 = new StreamURL("ws", host, port, file);
- if (sslPort != 0) {
+ if (port > 0) {
+ this.fmp4 = new StreamURL("http", host, port, file);
+ this.ws_fmp4 = new StreamURL("ws", host, port, file);
+ }
+ if (sslPort > 0) {
this.https_fmp4 = new StreamURL("https", host, sslPort, file);
this.wss_fmp4 = new StreamURL("wss", host, sslPort, file);
}
@@ -117,9 +214,11 @@
public void setHls(String host, int port, int sslPort, String app, String stream, String callIdParam) {
String file = String.format("%s/%s/hls.m3u8%s", app, stream, callIdParam);
- this.hls = new StreamURL("http", host, port, file);
- this.ws_hls = new StreamURL("ws", host, port, file);
- if (sslPort != 0) {
+ if (port > 0) {
+ this.hls = new StreamURL("http", host, port, file);
+ this.ws_hls = new StreamURL("ws", host, port, file);
+ }
+ if (sslPort > 0) {
this.https_hls = new StreamURL("https", host, sslPort, file);
this.wss_hls = new StreamURL("wss", host, sslPort, file);
}
@@ -127,51 +226,94 @@
public void setTs(String host, int port, int sslPort, String app, String stream, String callIdParam) {
String file = String.format("%s/%s.live.ts%s", app, stream, callIdParam);
- this.ts = new StreamURL("http", host, port, file);
- this.ws_ts = new StreamURL("ws", host, port, file);
- if (sslPort != 0) {
+
+ if (port > 0) {
+ this.ts = new StreamURL("http", host, port, file);
+ this.ws_ts = new StreamURL("ws", host, port, file);
+ }
+ if (sslPort > 0) {
this.https_ts = new StreamURL("https", host, sslPort, file);
this.wss_ts = new StreamURL("wss", host, sslPort, file);
}
}
public void setRtc(String host, int port, int sslPort, String app, String stream, String callIdParam) {
+ if (callIdParam != null) {
+ callIdParam = Objects.equals(callIdParam, "") ? callIdParam : callIdParam.replace("?", "&");
+ }
String file = String.format("index/api/webrtc?app=%s&stream=%s&type=play%s", app, stream, callIdParam);
- this.rtc = new StreamURL("http", host, port, file);
- if (sslPort != 0) {
+ if (port > 0) {
+ this.rtc = new StreamURL("http", host, port, file);
+ }
+ if (sslPort > 0) {
this.rtcs = new StreamURL("https", host, sslPort, file);
}
}
public void channgeStreamIp(String localAddr) {
- this.flv.setHost(localAddr);
- this.ws_flv.setHost(localAddr);
- this.hls.setHost(localAddr);
- this.ws_hls.setHost(localAddr);
- this.ts.setHost(localAddr);
- this.ws_ts.setHost(localAddr);
- this.fmp4.setHost(localAddr);
- this.ws_fmp4.setHost(localAddr);
- this.rtc.setHost(localAddr);
+ if (this.flv != null) {
+ this.flv.setHost(localAddr);
+ }
+ if (this.ws_flv != null ){
+ this.ws_flv.setHost(localAddr);
+ }
+ if (this.hls != null ) {
+ this.hls.setHost(localAddr);
+ }
+ if (this.ws_hls != null ) {
+ this.ws_hls.setHost(localAddr);
+ }
+ if (this.ts != null ) {
+ this.ts.setHost(localAddr);
+ }
+ if (this.ws_ts != null ) {
+ this.ws_ts.setHost(localAddr);
+ }
+ if (this.fmp4 != null ) {
+ this.fmp4.setHost(localAddr);
+ }
+ if (this.ws_fmp4 != null ) {
+ this.ws_fmp4.setHost(localAddr);
+ }
+ if (this.rtc != null ) {
+ this.rtc.setHost(localAddr);
+ }
if (this.https_flv != null) {
this.https_flv.setHost(localAddr);
+ }
+ if (this.wss_flv != null) {
this.wss_flv.setHost(localAddr);
+ }
+ if (this.https_hls != null) {
this.https_hls.setHost(localAddr);
+ }
+ if (this.wss_hls != null) {
this.wss_hls.setHost(localAddr);
+ }
+ if (this.wss_ts != null) {
this.wss_ts.setHost(localAddr);
+ }
+ if (this.https_fmp4 != null) {
this.https_fmp4.setHost(localAddr);
+ }
+ if (this.wss_fmp4 != null) {
this.wss_fmp4.setHost(localAddr);
+ }
+ if (this.rtcs != null) {
this.rtcs.setHost(localAddr);
}
- this.rtsp.setHost(localAddr);
+ if (this.rtsp != null) {
+ this.rtsp.setHost(localAddr);
+ }
if (this.rtsps != null) {
this.rtsps.setHost(localAddr);
}
- this.rtmp.setHost(localAddr);
+ if (this.rtmp != null) {
+ this.rtmp.setHost(localAddr);
+ }
if (this.rtmps != null) {
this.rtmps.setHost(localAddr);
}
-
}
@@ -375,4 +517,15 @@
public void setTransactionInfo(TransactionInfo transactionInfo) {
this.transactionInfo = transactionInfo;
}
+
+ @Override
+ public StreamInfo clone() {
+ StreamInfo instance = null;
+ try{
+ instance = (StreamInfo)super.clone();
+ }catch(CloneNotSupportedException e) {
+ e.printStackTrace();
+ }
+ return instance;
+ }
}
--
Gitblit v1.8.0