From 764d04b497356ba6bcbb75fd42b51eca750f7223 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 29 五月 2024 15:02:51 +0800
Subject: [PATCH] 调整上级观看消息的发送

---
 src/main/java/com/genersoft/iot/vmp/media/service/IMediaServerService.java |  131 +++++++++++++++++++++++++++++++++++--------
 1 files changed, 107 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/media/service/IMediaServerService.java b/src/main/java/com/genersoft/iot/vmp/media/service/IMediaServerService.java
index d6015e0..a8c5338 100755
--- a/src/main/java/com/genersoft/iot/vmp/media/service/IMediaServerService.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/service/IMediaServerService.java
@@ -1,48 +1,51 @@
 package com.genersoft.iot.vmp.media.service;
 
 import com.genersoft.iot.vmp.common.CommonCallback;
-import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.common.StreamInfo;
+import com.genersoft.iot.vmp.gb28181.bean.SendRtpItem;
+import com.genersoft.iot.vmp.media.bean.MediaInfo;
+import com.genersoft.iot.vmp.media.bean.MediaServer;
 import com.genersoft.iot.vmp.service.bean.MediaServerLoad;
 import com.genersoft.iot.vmp.service.bean.SSRCInfo;
+import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 濯掍綋鏈嶅姟鑺傜偣
  */
 public interface IMediaServerService {
 
-    List<MediaServerItem> getAllOnlineList();
+    List<MediaServer> getAllOnlineList();
 
-    List<MediaServerItem> getAll();
+    List<MediaServer> getAll();
 
-    List<MediaServerItem> getAllFromDatabase();
+    List<MediaServer> getAllFromDatabase();
 
-    List<MediaServerItem> getAllOnline();
+    List<MediaServer> getAllOnline();
 
-    MediaServerItem getOne(String generalMediaServerId);
+    MediaServer getOne(String generalMediaServerId);
 
     void syncCatchFromDatabase();
 
-    MediaServerItem getMediaServerForMinimumLoad(Boolean hasAssist);
+    MediaServer getMediaServerForMinimumLoad(Boolean hasAssist);
 
-    void updateVmServer(List<MediaServerItem>  mediaServerItemList);
+    void updateVmServer(List<MediaServer>  mediaServerItemList);
 
-    SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, String presetSsrc, boolean ssrcCheck,
-                           boolean isPlayback, Integer port, Boolean onlyAuto, Boolean reUsePort, Integer tcpMode);
+    SSRCInfo openRTPServer(MediaServer mediaServerItem, String streamId, String presetSsrc, boolean ssrcCheck,
+                           boolean isPlayback, Integer port, Boolean onlyAuto, Boolean disableAudio, Boolean reUsePort, Integer tcpMode);
 
-    SSRCInfo openRTPServer(MediaServerItem mediaServerItem, String streamId, String ssrc, boolean ssrcCheck, boolean isPlayback, Integer port, Boolean onlyAuto);
+    void closeRTPServer(MediaServer mediaServerItem, String streamId);
 
-    void closeRTPServer(MediaServerItem mediaServerItem, String streamId);
-
-    void closeRTPServer(MediaServerItem mediaServerItem, String streamId, CommonCallback<Boolean> callback);
-    Boolean updateRtpServerSSRC(MediaServerItem mediaServerItem, String streamId, String ssrc);
+    void closeRTPServer(MediaServer mediaServerItem, String streamId, CommonCallback<Boolean> callback);
+    Boolean updateRtpServerSSRC(MediaServer mediaServerItem, String streamId, String ssrc);
 
     void closeRTPServer(String mediaServerId, String streamId);
 
-    void clearRTPServer(MediaServerItem mediaServerItem);
+    void clearRTPServer(MediaServer mediaServerItem);
 
-    void update(MediaServerItem mediaSerItem);
+    void update(MediaServer mediaSerItem);
 
     void addCount(String mediaServerId);
 
@@ -52,21 +55,101 @@
 
     void clearMediaServerForOnline();
 
-    void add(MediaServerItem mediaSerItem);
+    void add(MediaServer mediaSerItem);
 
-    void resetOnlineServerItem(MediaServerItem serverItem);
+    void resetOnlineServerItem(MediaServer serverItem);
 
-    MediaServerItem checkMediaServer(String ip, int port, String secret, String type);
+    MediaServer checkMediaServer(String ip, int port, String secret, String type);
 
     boolean checkMediaRecordServer(String ip, int port);
 
     void delete(String id);
 
-    MediaServerItem getDefaultMediaServer();
+    MediaServer getDefaultMediaServer();
 
-    MediaServerLoad getLoad(MediaServerItem mediaServerItem);
+    MediaServerLoad getLoad(MediaServer mediaServerItem);
 
-    List<MediaServerItem> getAllWithAssistPort();
+    List<MediaServer> getAllWithAssistPort();
 
-    MediaServerItem getOneFromDatabase(String id);
+    MediaServer getOneFromDatabase(String id);
+
+    boolean stopSendRtp(MediaServer mediaInfo, String app, String stream, String ssrc);
+
+    boolean initStopSendRtp(MediaServer mediaInfo, String app, String stream, String ssrc);
+
+    boolean deleteRecordDirectory(MediaServer mediaServerItem, String app, String stream, String date, String fileName);
+
+    List<StreamInfo> getMediaList(MediaServer mediaInfo, String app, String stream, String callId);
+
+    Boolean connectRtpServer(MediaServer mediaServerItem, String address, int port, String stream);
+
+    void getSnap(MediaServer mediaServerItemInuse, String streamUrl, int timeoutSec, int expireSec, String path, String fileName);
+
+    MediaInfo getMediaInfo(MediaServer mediaServerItem, String app, String stream);
+
+    Boolean pauseRtpCheck(MediaServer mediaServerItem, String streamKey);
+
+    boolean resumeRtpCheck(MediaServer mediaServerItem, String streamKey);
+
+    String getFfmpegCmd(MediaServer mediaServer, String cmdKey);
+
+    void closeStreams(MediaServer mediaServerItem, String app, String stream);
+
+    WVPResult<String> addFFmpegSource(MediaServer mediaServerItem, String srcUrl, String dstUrl, int timeoutMs, boolean enableAudio, boolean enableMp4, String ffmpegCmdKey);
+
+    WVPResult<String> addStreamProxy(MediaServer mediaServerItem, String app, String stream, String url, boolean enableAudio, boolean enableMp4, String rtpType);
+
+    Boolean delFFmpegSource(MediaServer mediaServerItem, String streamKey);
+
+    Boolean delStreamProxy(MediaServer mediaServerItem, String streamKey);
+
+    Map<String, String> getFFmpegCMDs(MediaServer mediaServer);
+
+    /**
+     * 鏍规嵁搴旂敤鍚嶅拰娴両D鑾峰彇鎾斁鍦板潃, 閫氳繃zlm鎺ュ彛妫�鏌ユ槸鍚﹀瓨鍦�
+     * @param app
+     * @param stream
+     * @return
+     */
+    StreamInfo getStreamInfoByAppAndStreamWithCheck(String app, String stream, String mediaServerId,String addr, boolean authority);
+
+
+    /**
+     * 鏍规嵁搴旂敤鍚嶅拰娴両D鑾峰彇鎾斁鍦板潃, 閫氳繃zlm鎺ュ彛妫�鏌ユ槸鍚﹀瓨鍦�, 杩斿洖鐨刬p浣跨敤杩滅▼璁块棶ip锛岄�傜敤涓巣lm涓巜vp鍦ㄤ竴鍙颁富鏈虹殑鎯呭喌
+     * @param app
+     * @param stream
+     * @return
+     */
+    StreamInfo getStreamInfoByAppAndStreamWithCheck(String app, String stream, String mediaServerId, boolean authority);
+
+    /**
+     * 鏍规嵁搴旂敤鍚嶅拰娴両D鑾峰彇鎾斁鍦板潃, 鍙槸鍦板潃鎷兼帴
+     * @param app
+     * @param stream
+     * @return
+     */
+    StreamInfo getStreamInfoByAppAndStream(MediaServer mediaServerItem, String app, String stream, MediaInfo mediaInfo, String callId);
+
+    /**
+     * 鏍规嵁搴旂敤鍚嶅拰娴両D鑾峰彇鎾斁鍦板潃, 鍙槸鍦板潃鎷兼帴锛岃繑鍥炵殑ip浣跨敤杩滅▼璁块棶ip锛岄�傜敤涓巣lm涓巜vp鍦ㄤ竴鍙颁富鏈虹殑鎯呭喌
+     * @param app
+     * @param stream
+     * @return
+     */
+    StreamInfo getStreamInfoByAppAndStream(MediaServer mediaServer, String app, String stream, MediaInfo mediaInfo, String addr, String callId, boolean isPlay);
+
+    Boolean isStreamReady(MediaServer mediaServer, String rtp, String streamId);
+
+    void startSendRtpPassive(MediaServer mediaServer, SendRtpItem sendRtpItem, Integer timeout);
+
+    void startSendRtp(MediaServer mediaServer, SendRtpItem sendRtpItem);
+
+    SendRtpItem createSendRtpItem(MediaServer mediaServerItem, String addressStr, int port, String ssrc, String requesterId, String deviceId, String channelId, boolean mediaTransmissionTCP, boolean rtcp);
+
+    SendRtpItem createSendRtpItem(MediaServer serverItem, String ip, int port, String ssrc, String platformId,
+                                  String app, String stream, String channelId, boolean tcp, boolean rtcp);
+
+    MediaServer getMediaServerByAppAndStream(String app, String stream);
+
+    Long updateDownloadProcess(MediaServer mediaServerItem, String app, String stream);
 }

--
Gitblit v1.8.0