调整录像进度获取流程

This commit is contained in:
648540858
2024-05-28 16:06:08 +08:00
parent 5a70a4742d
commit bec35ebf94
5 changed files with 27 additions and 7 deletions

View File

@@ -60,4 +60,6 @@ public interface IMediaNodeServerService {
void startSendRtpPassive(MediaServer mediaServer, SendRtpItem sendRtpItem, Integer timeout);
void startSendRtpStream(MediaServer mediaServer, SendRtpItem sendRtpItem);
Long updateDownloadProcess(MediaServer mediaServer, String app, String stream);
}

View File

@@ -151,4 +151,6 @@ public interface IMediaServerService {
String app, String stream, String channelId, boolean tcp, boolean rtcp);
MediaServer getMediaServerByAppAndStream(String app, String stream);
Long updateDownloadProcess(MediaServer mediaServerItem, String app, String stream);
}

View File

@@ -921,4 +921,14 @@ public class MediaServerServiceImpl implements IMediaServerService {
}
return null;
}
@Override
public Long updateDownloadProcess(MediaServer mediaServer, String app, String stream) {
IMediaNodeServerService mediaNodeServerService = nodeServerServiceMap.get(mediaServer.getType());
if (mediaNodeServerService == null) {
logger.info("[updateDownloadProcess] 失败, mediaServer的类型 {},未找到对应的实现类", mediaServer.getType());
throw new ControllerException(ErrorCode.ERROR100.getCode(), "未找到mediaServer对应的实现类");
}
return mediaNodeServerService.updateDownloadProcess(mediaServer, app, stream);
}
}

View File

@@ -384,4 +384,14 @@ public class ZLMMediaNodeServerService implements IMediaNodeServerService {
throw new ControllerException(jsonObject.getInteger("code"), jsonObject.getString("msg"));
}
}
@Override
public Long updateDownloadProcess(MediaServer mediaServer, String app, String stream) {
MediaInfo mediaInfo = getMediaInfo(mediaServer, app, stream);
if (mediaInfo == null) {
logger.warn("[获取下载进度] 查询进度失败, 节点Id {} {}/{}", mediaServer.getId(), app, stream);
return null;
}
return mediaInfo.getDuration();
}
}