From 6d52e1539f6c33d5b625ff7fd56bccf8b76971b3 Mon Sep 17 00:00:00 2001
From: shanyuanzz <46706605+shanyuanzz@users.noreply.github.com>
Date: 星期日, 28 五月 2023 13:48:55 +0800
Subject: [PATCH] 优化zoom低倍速下的变倍速率

---
 src/main/java/com/genersoft/iot/vmp/storager/dao/StreamProxyMapper.java |   34 +++++++++++++++++++++++-----------
 1 files changed, 23 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamProxyMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamProxyMapper.java
index b6e1ba1..5dbd8f0 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamProxyMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamProxyMapper.java
@@ -1,6 +1,7 @@
 package com.genersoft.iot.vmp.storager.dao;
 
 import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
+import com.genersoft.iot.vmp.vmanager.bean.ResourceBaceInfo;
 import org.apache.ibatis.annotations.*;
 import org.springframework.stereotype.Repository;
 
@@ -10,15 +11,16 @@
 @Repository
 public interface StreamProxyMapper {
 
-    @Insert("INSERT INTO stream_proxy (type, app, stream,mediaServerId, url, src_url, dst_url, " +
-            "timeout_ms, ffmpeg_cmd_key, rtp_type, enable_hls, enable_mp4, enable, enable_remove_none_reader, createTime) VALUES" +
-            "('${type}','${app}', '${stream}', '${mediaServerId}','${url}', '${src_url}', '${dst_url}', " +
-            "'${timeout_ms}', '${ffmpeg_cmd_key}', '${rtp_type}', ${enable_hls}, ${enable_mp4}, ${enable}, " +
-            "${enable_remove_none_reader}, '${createTime}' )")
+    @Insert("INSERT INTO stream_proxy (type, name, app, stream,mediaServerId, url, src_url, dst_url, " +
+            "timeout_ms, ffmpeg_cmd_key, rtp_type, enable_audio, enable_mp4, enable, status, enable_remove_none_reader, enable_disable_none_reader, createTime) VALUES" +
+            "(#{type}, #{name}, #{app}, #{stream}, #{mediaServerId}, #{url}, #{src_url}, #{dst_url}, " +
+            "#{timeout_ms}, #{ffmpeg_cmd_key}, #{rtp_type}, #{enable_audio}, #{enable_mp4}, #{enable}, #{status}, " +
+            "#{enable_remove_none_reader}, #{enable_disable_none_reader}, #{createTime} )")
     int add(StreamProxyItem streamProxyDto);
 
     @Update("UPDATE stream_proxy " +
             "SET type=#{type}, " +
+            "name=#{name}," +
             "app=#{app}," +
             "stream=#{stream}," +
             "url=#{url}, " +
@@ -28,9 +30,11 @@
             "timeout_ms=#{timeout_ms}, " +
             "ffmpeg_cmd_key=#{ffmpeg_cmd_key}, " +
             "rtp_type=#{rtp_type}, " +
-            "enable_hls=#{enable_hls}, " +
+            "enable_audio=#{enable_audio}, " +
             "enable=#{enable}, " +
+            "status=#{status}, " +
             "enable_remove_none_reader=#{enable_remove_none_reader}, " +
+            "enable_disable_none_reader=#{enable_disable_none_reader}, " +
             "enable_mp4=#{enable_mp4} " +
             "WHERE app=#{app} AND stream=#{stream}")
     int update(StreamProxyItem streamProxyDto);
@@ -41,7 +45,7 @@
     @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream order by st.createTime desc")
     List<StreamProxyItem> selectAll();
 
-    @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream WHERE st.enable=${enable} order by st.createTime desc")
+    @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream WHERE st.enable=#{enable} order by st.createTime desc")
     List<StreamProxyItem> selectForEnable(boolean enable);
 
     @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream WHERE st.app=#{app} AND st.stream=#{stream} order by st.createTime desc")
@@ -49,22 +53,30 @@
 
     @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st " +
             "LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream " +
-            "WHERE st.enable=${enable} and st.mediaServerId = '${id}' order by st.createTime desc")
+            "WHERE st.enable=#{enable} and st.mediaServerId = #{id} order by st.createTime desc")
     List<StreamProxyItem> selectForEnableInMediaServer(String id, boolean enable);
 
     @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st " +
             "LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream " +
-            "WHERE st.mediaServerId = '${id}' order by st.createTime desc")
+            "WHERE st.mediaServerId = #{id} order by st.createTime desc")
     List<StreamProxyItem> selectInMediaServer(String id);
 
     @Update("UPDATE stream_proxy " +
-            "SET enable=#{status} " +
+            "SET status=#{status} " +
             "WHERE mediaServerId=#{mediaServerId}")
-    void updateStatus(boolean status, String mediaServerId);
+    void updateStatusByMediaServerId(String mediaServerId, boolean status);
+
+    @Update("UPDATE stream_proxy " +
+            "SET status=#{status} " +
+            "WHERE app=#{app} AND stream=#{stream}")
+    int updateStatus(String app, String stream, boolean status);
 
     @Delete("DELETE FROM stream_proxy WHERE enable_remove_none_reader=true AND mediaServerId=#{mediaServerId}")
     void deleteAutoRemoveItemByMediaServerId(String mediaServerId);
 
     @Select("SELECT st.*, pgs.gbId, pgs.name, pgs.longitude, pgs.latitude FROM stream_proxy st LEFT JOIN gb_stream pgs on st.app = pgs.app AND st.stream = pgs.stream WHERE st.enable_remove_none_reader=true AND st.mediaServerId=#{mediaServerId} order by st.createTime desc")
     List<StreamProxyItem> selecAutoRemoveItemByMediaServerId(String mediaServerId);
+
+    @Select("select count(1) as total, sum(status) as online from stream_proxy")
+    ResourceBaceInfo getOverview();
 }

--
Gitblit v1.8.0