修复云端录像seek问题

This commit is contained in:
lin
2025-04-16 18:07:04 +08:00
parent 1a9307003a
commit 3b4a6018cb
14 changed files with 67 additions and 103 deletions

View File

@@ -1,7 +1,9 @@
package com.genersoft.iot.vmp.media.bean;
import com.genersoft.iot.vmp.media.zlm.dto.hook.OnRecordMp4HookParam;
import lombok.Data;
@Data
public class RecordInfo {
private String fileName;
private String filePath;
@@ -24,70 +26,6 @@ public class RecordInfo {
return recordInfo;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public String getFilePath() {
return filePath;
}
public void setFilePath(String filePath) {
this.filePath = filePath;
}
public long getFileSize() {
return fileSize;
}
public void setFileSize(long fileSize) {
this.fileSize = fileSize;
}
public String getFolder() {
return folder;
}
public void setFolder(String folder) {
this.folder = folder;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public long getStartTime() {
return startTime;
}
public void setStartTime(long startTime) {
this.startTime = startTime;
}
public double getTimeLen() {
return timeLen;
}
public void setTimeLen(double timeLen) {
this.timeLen = timeLen;
}
public String getParams() {
return params;
}
public void setParams(String params) {
this.params = params;
}
@Override
public String toString() {
return "RecordInfo{" +

View File

@@ -72,7 +72,7 @@ public interface IMediaNodeServerService {
void loadMP4File(MediaServer mediaServer, String app, String stream, String datePath);
void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp);
void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp, String schema);
void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed);
void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed, String schema);
}

View File

@@ -162,7 +162,7 @@ public interface IMediaServerService {
StreamInfo loadMP4File(MediaServer mediaServer, String app, String stream, String datePath);
void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp);
void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp, String schema);
void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed);
void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed, String schema);
}

View File

@@ -983,22 +983,22 @@ public class MediaServerServiceImpl implements IMediaServerService {
}
@Override
public void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp) {
public void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp, String schema) {
IMediaNodeServerService mediaNodeServerService = nodeServerServiceMap.get(mediaServer.getType());
if (mediaNodeServerService == null) {
log.info("[seekRecordStamp] 失败, mediaServer的类型 {},未找到对应的实现类", mediaServer.getType());
throw new ControllerException(ErrorCode.ERROR100.getCode(), "未找到mediaServer对应的实现类");
}
mediaNodeServerService.seekRecordStamp(mediaServer, app, stream, stamp);
mediaNodeServerService.seekRecordStamp(mediaServer, app, stream, stamp, schema);
}
@Override
public void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed) {
public void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed, String schema) {
IMediaNodeServerService mediaNodeServerService = nodeServerServiceMap.get(mediaServer.getType());
if (mediaNodeServerService == null) {
log.info("[setRecordSpeed] 失败, mediaServer的类型 {},未找到对应的实现类", mediaServer.getType());
throw new ControllerException(ErrorCode.ERROR100.getCode(), "未找到mediaServer对应的实现类");
}
mediaNodeServerService.setRecordSpeed(mediaServer, app, stream, speed);
mediaNodeServerService.setRecordSpeed(mediaServer, app, stream, speed, schema);
}
}

View File

@@ -126,7 +126,6 @@ public class ZLMHttpHookListener {
@ResponseBody
@PostMapping(value = "/on_stream_changed", produces = "application/json;charset=UTF-8")
public HookResult onStreamChanged(@RequestBody OnStreamChangedHookParam param) {
MediaServer mediaServer = mediaServerService.getOne(param.getMediaServerId());
if (mediaServer == null) {
return HookResult.SUCCESS();

View File

@@ -562,8 +562,8 @@ public class ZLMMediaNodeServerService implements IMediaNodeServerService {
}
@Override
public void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp) {
JSONObject jsonObject = zlmresTfulUtils.seekRecordStamp(mediaServer, app, stream, stamp, "ts");
public void seekRecordStamp(MediaServer mediaServer, String app, String stream, Double stamp, String schema) {
JSONObject jsonObject = zlmresTfulUtils.seekRecordStamp(mediaServer, app, stream, stamp, schema);
if (jsonObject == null) {
throw new ControllerException(ErrorCode.ERROR100.getCode(), "请求失败");
}
@@ -573,8 +573,8 @@ public class ZLMMediaNodeServerService implements IMediaNodeServerService {
}
@Override
public void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed) {
JSONObject jsonObject = zlmresTfulUtils.setRecordSpeed(mediaServer, app, stream, speed, "ts");
public void setRecordSpeed(MediaServer mediaServer, String app, String stream, Integer speed, String schema) {
JSONObject jsonObject = zlmresTfulUtils.setRecordSpeed(mediaServer, app, stream, speed, schema);
if (jsonObject == null) {
throw new ControllerException(ErrorCode.ERROR100.getCode(), "请求失败");
}

View File

@@ -424,7 +424,6 @@ public class ZLMRESTfulUtils {
param.put("stream", stream);
param.put("file_path", datePath);
param.put("file_repeat", "0");
param.put("auto_close", "1");
return sendPost(mediaServer, "loadMP4File",param, null);
}