Commit c4d7dd9651e5dc004ab443ecd72da51c117a87c2

Authored by 648540858
2 parents fa80ba6f 8f5bbfa5

Merge branch '2.6.8' into wvp-28181-2.0

src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
@@ -289,7 +289,7 @@ public class ZLMHttpHookListener { @@ -289,7 +289,7 @@ public class ZLMHttpHookListener {
289 @ResponseBody 289 @ResponseBody
290 @PostMapping(value = "/on_stream_changed", produces = "application/json;charset=UTF-8") 290 @PostMapping(value = "/on_stream_changed", produces = "application/json;charset=UTF-8")
291 public HookResult onStreamChanged(@RequestBody OnStreamChangedHookParam param) { 291 public HookResult onStreamChanged(@RequestBody OnStreamChangedHookParam param) {
292 - 292 + System.out.println(JSON.toJSONString(param));
293 if (param.isRegist()) { 293 if (param.isRegist()) {
294 logger.info("[ZLM HOOK] 流注册, {}->{}->{}/{}", param.getMediaServerId(), param.getSchema(), param.getApp(), param.getStream()); 294 logger.info("[ZLM HOOK] 流注册, {}->{}->{}/{}", param.getMediaServerId(), param.getSchema(), param.getApp(), param.getStream());
295 } else { 295 } else {
@@ -311,13 +311,11 @@ public class ZLMHttpHookListener { @@ -311,13 +311,11 @@ public class ZLMHttpHookListener {
311 311
312 List<OnStreamChangedHookParam.MediaTrack> tracks = param.getTracks(); 312 List<OnStreamChangedHookParam.MediaTrack> tracks = param.getTracks();
313 // TODO 重构此处逻辑 313 // TODO 重构此处逻辑
314 - boolean isPush = false;  
315 if (param.isRegist()) { 314 if (param.isRegist()) {
316 // 处理流注册的鉴权信息 315 // 处理流注册的鉴权信息
317 if (param.getOriginType() == OriginType.RTMP_PUSH.ordinal() 316 if (param.getOriginType() == OriginType.RTMP_PUSH.ordinal()
318 || param.getOriginType() == OriginType.RTSP_PUSH.ordinal() 317 || param.getOriginType() == OriginType.RTSP_PUSH.ordinal()
319 || param.getOriginType() == OriginType.RTC_PUSH.ordinal()) { 318 || param.getOriginType() == OriginType.RTC_PUSH.ordinal()) {
320 - isPush = true;  
321 StreamAuthorityInfo streamAuthorityInfo = redisCatchStorage.getStreamAuthorityInfo(param.getApp(), param.getStream()); 319 StreamAuthorityInfo streamAuthorityInfo = redisCatchStorage.getStreamAuthorityInfo(param.getApp(), param.getStream());
322 if (streamAuthorityInfo == null) { 320 if (streamAuthorityInfo == null) {
323 streamAuthorityInfo = StreamAuthorityInfo.getInstanceByHook(param); 321 streamAuthorityInfo = StreamAuthorityInfo.getInstanceByHook(param);
@@ -331,7 +329,7 @@ public class ZLMHttpHookListener { @@ -331,7 +329,7 @@ public class ZLMHttpHookListener {
331 redisCatchStorage.removeStreamAuthorityInfo(param.getApp(), param.getStream()); 329 redisCatchStorage.removeStreamAuthorityInfo(param.getApp(), param.getStream());
332 } 330 }
333 331
334 - if ("rtsp".equals(param.getSchema())) { 332 + if ("rtmp".equals(param.getSchema())) {
335 // 更新流媒体负载信息 333 // 更新流媒体负载信息
336 if (param.isRegist()) { 334 if (param.isRegist()) {
337 mediaServerService.addCount(param.getMediaServerId()); 335 mediaServerService.addCount(param.getMediaServerId());
@@ -363,6 +361,8 @@ public class ZLMHttpHookListener { @@ -363,6 +361,8 @@ public class ZLMHttpHookListener {
363 StreamInfo streamInfoByAppAndStream = mediaService.getStreamInfoByAppAndStream(mediaInfo, 361 StreamInfo streamInfoByAppAndStream = mediaService.getStreamInfoByAppAndStream(mediaInfo,
364 param.getApp(), param.getStream(), tracks, callId); 362 param.getApp(), param.getStream(), tracks, callId);
365 param.setStreamInfo(new StreamContent(streamInfoByAppAndStream)); 363 param.setStreamInfo(new StreamContent(streamInfoByAppAndStream));
  364 + // 如果是拉流代理产生的,不需要写入推流
  365 +
366 redisCatchStorage.addStream(mediaInfo, type, param.getApp(), param.getStream(), param); 366 redisCatchStorage.addStream(mediaInfo, type, param.getApp(), param.getStream(), param);
367 if (param.getOriginType() == OriginType.RTSP_PUSH.ordinal() 367 if (param.getOriginType() == OriginType.RTSP_PUSH.ordinal()
368 || param.getOriginType() == OriginType.RTMP_PUSH.ordinal() 368 || param.getOriginType() == OriginType.RTMP_PUSH.ordinal()
src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java
@@ -418,7 +418,7 @@ public class MediaServerServiceImpl implements IMediaServerService { @@ -418,7 +418,7 @@ public class MediaServerServiceImpl implements IMediaServerService {
418 } 418 }
419 final String zlmKeepaliveKey = zlmKeepaliveKeyPrefix + serverItem.getId(); 419 final String zlmKeepaliveKey = zlmKeepaliveKeyPrefix + serverItem.getId();
420 dynamicTask.stop(zlmKeepaliveKey); 420 dynamicTask.stop(zlmKeepaliveKey);
421 - dynamicTask.startDelay(zlmKeepaliveKey, new KeepAliveTimeoutRunnable(serverItem), (Math.getExponent(serverItem.getHookAliveInterval()) + 5) * 1000); 421 + dynamicTask.startDelay(zlmKeepaliveKey, new KeepAliveTimeoutRunnable(serverItem), (serverItem.getHookAliveInterval().intValue() + 5) * 1000);
422 publisher.zlmOnlineEventPublish(serverItem.getId()); 422 publisher.zlmOnlineEventPublish(serverItem.getId());
423 423
424 logger.info("[ZLM] 连接成功 {} - {}:{} ", 424 logger.info("[ZLM] 连接成功 {} - {}:{} ",