修复云端录像seek不准确的问题

This commit is contained in:
lin
2025-04-14 12:43:05 +08:00
parent 59c6243338
commit f2e3016a48
15 changed files with 41 additions and 24 deletions

View File

@@ -60,7 +60,7 @@ public interface ICloudRecordService {
*/
void loadRecord(String app, String stream, String date, ErrorCallback<StreamInfo> callback);
void seekRecord(String mediaServerId,String app, String stream, Integer seek);
void seekRecord(String mediaServerId,String app, String stream, Double seek);
void setRecordSpeed(String mediaServerId, String app, String stream, Integer speed);

View File

@@ -15,52 +15,52 @@ public class CloudRecordItem {
* 主键
*/
private int id;
/**
* 应用名
*/
private String app;
/**
* 流
*/
private String stream;
/**
* 健全ID
*/
private String callId;
/**
* 开始时间
*/
private long startTime;
/**
* 结束时间
*/
private long endTime;
/**
* ZLM Id
*/
private String mediaServerId;
/**
* 文件名称
*/
private String fileName;
/**
* 文件路径
*/
private String filePath;
/**
* 文件夹
*/
private String folder;
/**
* 收藏,收藏的文件不移除
*/
@@ -70,16 +70,16 @@ public class CloudRecordItem {
* 保留,收藏的文件不移除
*/
private Boolean reserve;
/**
* 文件大小
*/
private long fileSize;
/**
* 文件时长
*/
private long timeLen;
private double timeLen;
/**
* 所属服务ID
@@ -96,7 +96,7 @@ public class CloudRecordItem {
cloudRecordItem.setFileSize(param.getRecordInfo().getFileSize());
cloudRecordItem.setFilePath(param.getRecordInfo().getFilePath());
cloudRecordItem.setMediaServerId(param.getMediaServer().getId());
cloudRecordItem.setTimeLen((long) param.getRecordInfo().getTimeLen() * 1000);
cloudRecordItem.setTimeLen(param.getRecordInfo().getTimeLen() * 1000);
cloudRecordItem.setEndTime((param.getRecordInfo().getStartTime() + (long)param.getRecordInfo().getTimeLen()) * 1000);
Map<String, String> paramsMap = MediaServerUtils.urlParamToMap(param.getRecordInfo().getParams());
if (paramsMap.get("callId") != null) {

View File

@@ -321,7 +321,7 @@ public class CloudRecordServiceImpl implements ICloudRecordService {
}
@Override
public void seekRecord(String mediaServerId,String app, String stream, Integer seek) {
public void seekRecord(String mediaServerId,String app, String stream, Double seek) {
MediaServer mediaServer = mediaServerService.getOne(mediaServerId);
if (mediaServer == null) {
throw new ControllerException(ErrorCode.ERROR100.getCode(), "媒体节点不存在: " + mediaServerId);