From a4ab9a0a6cd22b11b52200b66c0417d9379e3960 Mon Sep 17 00:00:00 2001 From: panlinlin <648540858@qq.com> Date: 星期日, 11 四月 2021 14:44:27 +0800 Subject: [PATCH] 集成rtc播放器 --- src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java | 40 ++++++++++++++++++++++++---------------- 1 files changed, 24 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java index 0065b21..878e016 100644 --- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java +++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java @@ -4,6 +4,7 @@ import java.util.UUID; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.genersoft.iot.vmp.common.StreamInfo; import com.genersoft.iot.vmp.conf.MediaServerConfig; import com.genersoft.iot.vmp.gb28181.bean.Device; @@ -239,26 +240,33 @@ String app = json.getString("app"); String streamId = json.getString("stream"); String schema = json.getString("schema"); - boolean regist = json.getBoolean("regist"); + JSONArray tracks = json.getJSONArray("tracks"); + String regist = json.getString("regist"); + if (tracks != null) { + System.out.println("222222" + schema); + } + if ("rtmp".equals(schema)){ - if ("rtp".equals(app) && !regist ) { - StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId); - if (streamInfo!=null){ - redisCatchStorage.stopPlay(streamInfo); - storager.stopPlay(streamInfo.getDeviceID(), streamInfo.getChannelId()); - }else{ - streamInfo = redisCatchStorage.queryPlaybackByStreamId(streamId); - redisCatchStorage.stopPlayback(streamInfo); - } - }else { - if (!"rtp".equals(app) && "rtmp".equals(schema)){ - if (regist) { - zlmMediaListManager.addMedia(app, streamId); - }else { - zlmMediaListManager.removeMedia(app, streamId); + if ("rtp".equals(app) && regist != null ) { + StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId); + if (streamInfo!=null){ + redisCatchStorage.stopPlay(streamInfo); + storager.stopPlay(streamInfo.getDeviceID(), streamInfo.getChannelId()); + }else{ + streamInfo = redisCatchStorage.queryPlaybackByStreamId(streamId); + redisCatchStorage.stopPlayback(streamInfo); + } + }else { + if (!"rtp".equals(app) ){ + if (regist == null) { + zlmMediaListManager.addMedia(app, streamId); + }else { + zlmMediaListManager.removeMedia(app, streamId); + } } } } + JSONObject ret = new JSONObject(); ret.put("code", 0); ret.put("msg", "success"); -- Gitblit v1.8.0