From f5640fddb711cb05defe691e9817057e35c03c6e Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 02 三月 2022 11:48:20 +0800
Subject: [PATCH] 优化国标级联的目录订阅
---
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 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 5919619..424188d 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
@@ -186,7 +186,6 @@
ret.put("code", 0);
ret.put("msg", "success");
ret.put("enableHls", true);
- ret.put("enableMP4", userSetup.isRecordPushLive());
String mediaServerId = json.getString("mediaServerId");
ZLMHttpHookSubscribe.Event subscribe = this.subscribe.getSubscribe(ZLMHttpHookSubscribe.HookType.on_publish, json);
if (subscribe != null) {
@@ -200,6 +199,11 @@
}
String app = json.getString("app");
String stream = json.getString("stream");
+ if ("rtp".equals(app)) {
+ ret.put("enableMP4", userSetup.getRecordSip());
+ }else {
+ ret.put("enableMP4", userSetup.isRecordPushLive());
+ }
StreamInfo streamInfo = redisCatchStorage.queryPlaybackByStreamId(stream);
// 褰曞儚鍥炴斁鏃朵笉杩涜褰曞儚涓嬭浇
@@ -332,6 +336,11 @@
}else {
mediaServerService.removeCount(mediaServerId);
}
+ if (item.getOriginType() == OriginType.PULL.ordinal()
+ || item.getOriginType() == OriginType.FFMPEG_PULL.ordinal()) {
+ // 璁剧疆鎷夋祦浠g悊涓婄嚎/绂荤嚎
+ streamProxyService.updateStatus(regist, app, streamId);
+ }
if ("rtp".equals(app) && !regist ) {
StreamInfo streamInfo = redisCatchStorage.queryPlayByStreamId(streamId);
if (streamInfo!=null){
@@ -349,12 +358,15 @@
if (mediaServerItem != null){
if (regist) {
StreamPushItem streamPushItem = null;
+ StreamInfo streamInfoByAppAndStream = mediaService.getStreamInfoByAppAndStream(mediaServerItem, app, streamId, tracks);
+ item.setStreamInfo(streamInfoByAppAndStream);
redisCatchStorage.addStream(mediaServerItem, type, app, streamId, item);
if (item.getOriginType() == OriginType.RTSP_PUSH.ordinal()
|| item.getOriginType() == OriginType.RTMP_PUSH.ordinal()
|| item.getOriginType() == OriginType.RTC_PUSH.ordinal() ) {
streamPushItem = zlmMediaListManager.addPush(item);
}
+
List<GbStream> gbStreams = new ArrayList<>();
if (streamPushItem == null || streamPushItem.getGbId() == null) {
GbStream gbStream = storager.getGbStream(app, streamId);
--
Gitblit v1.8.0