liusuyi
2026-04-01 a2bef1bc001cc196affb1b24d69eec4127cfa40a
优化
2 files modified
24 ■■■■■ changed files
ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java 20 ●●●●● patch | view | raw | blame | history
ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java 4 ●●●●● patch | view | raw | blame | history
ard-vtdu/src/main/java/com/ard/vtdu/service/impl/ArdArdMediaServiceImpl.java
@@ -58,21 +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());
            if(!"publisher".equalsIgnoreCase(conf.getSource())) {
                conf.setSourceOnDemand(true);
            conf.setName(ardVtdu.getName());
            conf.setSource(source);
            // 如果是拉流则配置按需
            if (!"publisher".equalsIgnoreCase(source)) {
                conf.setSourceOnDemand(true); // 按需拉
                conf.setRunOnDemandCloseAfter("5s"); // 无观众 5 秒断开
            }
            conf.setRunOnDemandRestart(false);
            conf.setRunOnDemandCloseAfter("5s");
            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);
ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java
@@ -1,6 +1,7 @@
package com.ard.work.service.impl;
import com.ard.common.exception.ControlException;
import com.ard.vtdu.config.MediamtxConfig;
import com.ard.work.aspect.annotation.CheckControlRight;
import com.ard.work.aspect.annotation.CheckDroneStatus;
import com.ard.work.aspect.annotation.CheckNoFlyZone;
@@ -87,7 +88,8 @@
    private RouteStateMachineService stateMachineService;
    @Autowired
    private IArdFlightTaskPartService ardFlightTaskPartService;
    @Resource
    private MediamtxConfig mediamtxConfig;
    /**
     * 获取边缘服务器token信息
     *