From 3f43e40ed1a1e9f66b3ad2862da9dbc4b710c712 Mon Sep 17 00:00:00 2001
From: nishiwei <13126973358@163.com>
Date: Fri, 23 Oct 2026 14:09:47 +0800
Subject: [PATCH] 智云3.0机场1适配内容提交
---
ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java | 24 +++++++++++++++---------
1 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java b/ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java
index 8f07073..3aacf67 100644
--- a/ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java
+++ b/ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java
@@ -58,19 +58,23 @@
String protocol = mediamtxConfig.isHttps() ? "https://" : "http://";
String webrtcUrl =
protocol + mediamtxConfig.getPlayHost() + ":" + mediamtxConfig.getWebrtcPort() + "/" + ardVtdu.getName();
-
+ String source = ardVtdu.getRtspSource();
Conf conf = new Conf();
- conf.setSource(ardVtdu.getRtspSource());
- conf.setSourceOnDemand(true);
- conf.setRunOnDemandRestart(false);
- conf.setRunOnDemandCloseAfter("5s");
+ conf.setName(ardVtdu.getName());
+ conf.setSource(source);
+ // 如果是拉流则配置按需
+ if (!"publisher".equalsIgnoreCase(source)) {
+ conf.setSourceOnDemand(true); // 按需拉
+ conf.setRunOnDemandCloseAfter("5s"); // 无观众 5 秒断开
+ }
conf.setMaxReaders(100);
conf.setSourceProtocol("tcp");
- if (checkNameExist(ardVtdu.getName())) {
- mediaClient.removePath(ardVtdu.getName());
+ if (!checkNameExist(ardVtdu.getName())) {
+ mediaClient.addPath(ardVtdu.getName(), conf);
+ } else {
+ mediaClient.editPath(ardVtdu.getName(), conf);
}
- mediaClient.addPath(ardVtdu.getName(), conf);
ardVtdu.setCameraId(ardVtdu.getName().split("_")[0]);
ardVtdu.setRtspUrl(rtspUrl);
@@ -97,7 +101,9 @@
Conf conf = new Conf();
conf.setSource(ardVtdu.getRtspSource());
conf.setName(ardVtdu.getName());
- conf.setSourceOnDemand(true);
+ if(!"publisher".equalsIgnoreCase(conf.getSource())) {
+ conf.setSourceOnDemand(true);
+ }
conf.setRunOnDemandRestart(false);
conf.setRunOnDemandCloseAfter("5s");
conf.setMaxReaders(100);
--
Gitblit v1.9.3