瀏覽代碼

国标级联-修复拉流代理播放

648540858 1 年之前
父節點
當前提交
722f1d0ee7

+ 1 - 1
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java

@@ -151,7 +151,7 @@ public class ZLMHttpHookListener {
             logger.info("[ZLM HOOK] 播放鉴权 失败:{}->{}", param.getMediaServerId(), param);
             return new HookResult(401, "Unauthorized");
         }
-        logger.info("[ZLM HOOK] 播放鉴权 失败:{}->{}", param.getMediaServerId(), param);
+        logger.info("[ZLM HOOK] 播放鉴权成功:{}->{}", param.getMediaServerId(), param);
         return HookResult.SUCCESS();
     }
 

+ 1 - 2
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaNodeServerService.java

@@ -257,14 +257,13 @@ public class ZLMMediaNodeServerService implements IMediaNodeServerService {
     public WVPResult<String> addStreamProxy(MediaServer mediaServer, String app, String stream, String url, boolean enableAudio, boolean enableMp4, String rtpType) {
         JSONObject jsonObject = zlmresTfulUtils.addStreamProxy(mediaServer, app, stream, url, enableAudio, enableMp4, rtpType);
         if (jsonObject.getInteger("code") != 0) {
-            logger.warn("[addStreamProxy] 添加代理失败");
             return WVPResult.fail(ErrorCode.ERROR100.getCode(), "添加代理失败");
         }else {
             JSONObject data = jsonObject.getJSONObject("data");
             if (data == null) {
                 return WVPResult.fail(ErrorCode.ERROR100.getCode(), "代理结果异常: " + jsonObject);
             }else {
-                return WVPResult.success("");
+                return WVPResult.success(data.getString("key"));
             }
         }
     }

+ 7 - 2
src/main/java/com/genersoft/iot/vmp/service/impl/StreamProxyServiceImpl.java

@@ -361,8 +361,6 @@ public class StreamProxyServiceImpl implements IStreamProxyService {
             result = mediaServerService.addStreamProxy(mediaServer, param.getApp(), param.getStream(), param.getUrl().trim(),
                     param.isEnableAudio(), param.isEnableMp4(), param.getRtpType());
         }
-        System.out.println("addStreamProxyToZlm====");
-        System.out.println(result);
         if (result != null && result.getCode() == 0) {
             String key = result.getData();
             if (key == null) {
@@ -381,6 +379,13 @@ public class StreamProxyServiceImpl implements IStreamProxyService {
             return null;
         }
         MediaServer mediaServer = mediaServerService.getOne(param.getMediaServerId());
+        if (mediaServer == null) {
+            return null;
+        }
+        List<StreamInfo> mediaList = mediaServerService.getMediaList(mediaServer, param.getApp(), param.getStream(), null);
+        if (mediaList.isEmpty()) {
+            return true;
+        }
         Boolean result = false;
         if ("ffmpeg".equalsIgnoreCase(param.getType())){
             result = mediaServerService.delFFmpegSource(mediaServer, param.getStreamKey());