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