From 9cc1e95b63fde336ebf4df413b3d1e79ece375f0 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期二, 30 七月 2024 09:01:24 +0800
Subject: [PATCH] 修改:同步流媒体优化
---
ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java b/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
index f0be3d3..4d345d4 100644
--- a/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java
@@ -40,6 +40,7 @@
private CameraSDKFactory cameraSDKFactory;
@Value("${mediamtx.host}")
String mediamtxHost;
+
/**
* 鏌ヨ娴佸獟浣撶鐞�
*
@@ -192,8 +193,10 @@
//闇�瑕佹洿鏂扮殑鏁版嵁,鍙傛暟椤哄簭娉ㄦ剰
sameList(vtdus, names).stream().forEach(vtdu -> {
StreamInfo streamInfo = mediaService.getPathInfo(vtdu.getName());
- if (!streamInfo.getRtspSource().equals(vtdu.getRtspSource())) {
- mediaService.editPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode());
+ if (streamInfo != null) {
+ if (streamInfo.getRtspSource() != null && !streamInfo.getRtspSource().equals(vtdu.getRtspSource())) {
+ mediaService.editPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode());
+ }
}
});
//闇�瑕佸垹闄ょ殑鏁版嵁
@@ -205,14 +208,18 @@
mediaService.addPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode());
});
}
+
@Override
public void addChanToVtdu(ArdCameras camera, ArdChannel channel) {
String name = camera.getId() + "_" + channel.getChanNo();
- String rtspSource="";
- switch (camera.getFactory())
- {
- case "1": rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/h264/ch" + channel.getChanNo() + "/main/av_stream";break;
- case "2": rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/cam/realmonitor?channel=" + channel.getChanNo() + "&subtype=0";break;
+ String rtspSource = "";
+ switch (camera.getFactory()) {
+ case "1":
+ rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/h264/ch" + channel.getChanNo() + "/main/av_stream";
+ break;
+ case "2":
+ rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/cam/realmonitor?channel=" + channel.getChanNo() + "&subtype=0";
+ break;
}
//鍒犻櫎娴佸獟浣�
--
Gitblit v1.9.3