From aaa07634fa899b7346dfd61c6f70962adbc1dca5 Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期五, 20 十月 2023 08:55:02 +0800 Subject: [PATCH] 1. 增加聚焦值和获取接口。 2. 增加视频编码获取接口。 3. 流媒体通过编码自动切换是否转码。 --- ard-work/src/main/java/com/ruoyi/media/service/impl/VtduServiceImpl.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 55 insertions(+), 2 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 456fad4..aac11e5 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 @@ -1,11 +1,21 @@ package com.ruoyi.media.service.impl; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.uuid.IdUtils; +import com.ruoyi.device.camera.domain.CameraCmd; +import com.ruoyi.device.camera.service.ICameraSdkService; +import com.ruoyi.media.service.IMediaService; +import com.ruoyi.utils.forest.MediaClient; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import com.ruoyi.media.mapper.VtduMapper; import com.ruoyi.media.domain.Vtdu; @@ -20,9 +30,12 @@ * @date 2023-08-29 */ @Service +@Slf4j public class VtduServiceImpl implements IVtduService { @Resource private VtduMapper vtduMapper; + @Resource + private IMediaService mediaService; /** * 鏌ヨ娴佸獟浣撶鐞� @@ -32,6 +45,7 @@ */ @Override public Vtdu selectVtduByName(String name) { + return vtduMapper.selectVtduByName(name); } @@ -54,7 +68,16 @@ */ @Override public int insertVtdu(Vtdu vtdu) { - vtdu.setCreateBy(SecurityUtils.getUserId()); + log.info("娴佸獟浣撱��" + vtdu.getName() + "銆戦�氶亾娣诲姞"); + Map<String, String> map = mediaService.addPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode()); + vtdu.setRtspUrl(map.get("rtspUrl")); + vtdu.setRtmpUrl(map.get("rtmpUrl")); + vtdu.setWebrtcUrl(map.get("webrtcUrl")); + + vtdu.setName(vtdu.getName()); + vtdu.setRtspSource(vtdu.getRtspSource()); + vtdu.setIsCode(vtdu.getIsCode()); + vtdu.setMode(vtdu.getMode()); vtdu.setCreateTime(DateUtils.getNowDate()); return vtduMapper.insertVtdu(vtdu); } @@ -67,7 +90,16 @@ */ @Override public int updateVtdu(Vtdu vtdu) { - vtdu.setUpdateBy(SecurityUtils.getUserId()); + + log.info("娴佸獟浣撱��" + vtdu.getName() + "銆戦�氶亾鏇存柊"); + Map<String, String> map = mediaService.editPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode()); + vtdu.setName(vtdu.getName()); + vtdu.setRtspSource(vtdu.getRtspSource()); + vtdu.setIsCode(vtdu.getIsCode()); + vtdu.setMode(vtdu.getMode()); + vtdu.setRtspUrl(map.get("rtspUrl")); + vtdu.setRtmpUrl(map.get("rtmpUrl")); + vtdu.setWebrtcUrl(map.get("webrtcUrl")); vtdu.setUpdateTime(DateUtils.getNowDate()); return vtduMapper.updateVtdu(vtdu); } @@ -80,6 +112,7 @@ */ @Override public int deleteVtduByNames(String[] names) { + mediaService.removePath(names); return vtduMapper.deleteVtduByNames(names); } @@ -91,6 +124,26 @@ */ @Override public int deleteVtduByName(String name) { + mediaService.removePath(name); return vtduMapper.deleteVtduByName(name); } + + /** + * 鍒犻櫎娴佸獟浣撶鐞嗕俊鎭� + * + * @param cameraId 鐩告満ID + * @return 缁撴灉 + */ + @Override + public int deleteVtduByCameraId(String cameraId) { + Vtdu vtdu = new Vtdu(); + vtdu.setCameraId(cameraId); + List<Vtdu> vtdus = vtduMapper.selectVtduList(vtdu); + if (vtdus.size() > 0) { + for (Vtdu v : vtdus) { + mediaService.removePath(v.getName()); + } + } + return vtduMapper.deleteVtduByCameraId(cameraId); + } } -- Gitblit v1.9.3