Browse Source

修复 流已经关闭后,再次调用关闭流的接口,返回超时

pull/93/head
panlinlin 4 years ago
parent
commit
c5f2aba9b2
  1. 1
      src/main/java/com/genersoft/iot/vmp/gb28181/session/VideoStreamSessionManager.java
  2. 3
      src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
  3. 4
      src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/play/PlayController.java

1
src/main/java/com/genersoft/iot/vmp/gb28181/session/VideoStreamSessionManager.java

@ -44,5 +44,6 @@ public class VideoStreamSessionManager {
sessionMap.remove(deviceId + "_" + channelId);
SsrcUtil.releaseSsrc(ssrcMap.get(deviceId + "_" + channelId));
ssrcMap.remove(deviceId + "_" + channelId);
streamIdMap.remove(deviceId + "_" + channelId);
}
}

3
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java

@ -581,8 +581,9 @@ public class SIPCommander implements ISIPCommander {
if (transaction == null) {
StreamInfo streamInfo = redisCatchStorage.queryPlayByDevice(deviceId, channelId);
if (streamInfo != null) {
redisCatchStorage.stopPlay(streamInfo);
}
okEvent.response(null);
return;
}

4
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/play/PlayController.java

@ -99,8 +99,8 @@ public class PlayController {
StreamInfo streamInfo = redisCatchStorage.queryPlayByDevice(deviceId, channelId);
if (streamInfo == null) {
RequestMessage msg = new RequestMessage();
msg.setId(DeferredResultHolder.CALLBACK_CMD_PlAY + uuid);
msg.setData("streamId not found");
msg.setId(DeferredResultHolder.CALLBACK_CMD_STOP + uuid);
msg.setData("点播未找到");
resultHolder.invokeResult(msg);
}else {
redisCatchStorage.stopPlay(streamInfo);

Loading…
Cancel
Save