From 9d37b411ec6f0eea32b7d659d62f31bee4d93dbb Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期日, 06 三月 2022 00:09:34 +0800
Subject: [PATCH] Merge pull request #375 from MeBetterMan/wvp-28181-2.0
---
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/ByeRequestProcessor.java | 31 +++++++++++++++++--------------
1 files changed, 17 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/ByeRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/ByeRequestProcessor.java
index 9b6e727..deda783 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/ByeRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/ByeRequestProcessor.java
@@ -2,6 +2,7 @@
import com.genersoft.iot.vmp.common.StreamInfo;
import com.genersoft.iot.vmp.gb28181.bean.Device;
+import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
import com.genersoft.iot.vmp.gb28181.bean.SendRtpItem;
import com.genersoft.iot.vmp.gb28181.transmit.SIPProcessorObserver;
import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommander;
@@ -90,29 +91,31 @@
int totalReaderCount = zlmrtpServerFactory.totalReaderCount(mediaInfo, sendRtpItem.getApp(), streamId);
if (totalReaderCount == 0) {
logger.info(streamId + "鏃犲叾瀹冭鐪嬭�咃紝閫氱煡璁惧鍋滄鎺ㄦ祦");
- cmder.streamByeCmd(sendRtpItem.getDeviceId(), channelId);
+ cmder.streamByeCmd(sendRtpItem.getDeviceId(), channelId, streamId);
}else if (totalReaderCount == -1){
logger.warn(streamId + " 鏌ユ壘鍏跺畠瑙傜湅鑰呭け璐�");
}
}
// 鍙兘鏄澶囦富鍔ㄥ仠姝�
Device device = storager.queryVideoDeviceByChannelId(platformGbId);
- if (device != null) {
- if (sendRtpItem.isPlay()) {
- StreamInfo streamInfo = redisCatchStorage.queryPlayByDevice(device.getDeviceId(), channelId);
- if (streamInfo != null) {
- redisCatchStorage.stopPlay(streamInfo);
+ if (device != null) {
+ StreamInfo streamInfo = redisCatchStorage.queryPlayByDevice(device.getDeviceId(), channelId);
+ if (sendRtpItem != null) {
+ if (sendRtpItem.isPlay()) {
+ if (streamInfo != null) {
+ redisCatchStorage.stopPlay(streamInfo);
+ }
+ }else {
+ if (streamInfo != null) {
+ redisCatchStorage.stopPlayback(streamInfo);
+ }
}
- }else {
- StreamInfo streamInfo = redisCatchStorage.queryPlaybackByDevice(device.getDeviceId(), channelId);
- if (streamInfo != null) {
- redisCatchStorage.stopPlayback(streamInfo);
- }
- }
- storager.stopPlay(device.getDeviceId(), channelId);
- mediaServerService.closeRTPServer(device, channelId);
+ storager.stopPlay(device.getDeviceId(), channelId);
+ mediaServerService.closeRTPServer(device.getDeviceId(), channelId, streamInfo.getStream());
+ }
}
+
}
} catch (SipException e) {
e.printStackTrace();
--
Gitblit v1.8.0