优化云端录像转化

pull/1242/head
648540858 2023-10-23 17:59:27 +08:00
parent daac0010b1
commit 16c056e338
6 changed files with 10 additions and 23 deletions

View File

@ -282,7 +282,7 @@ create table wvp_cloud_record (
collect bool default false,
reserve bool default false,
file_size integer,
time_len integer,
time_len float,
constraint uk_stream_push_app_stream_path unique (app, stream, file_path)
);

View File

@ -80,15 +80,9 @@ public class MediaServerItem{
@Schema(description = "是否是默认ZLM")
private boolean defaultServer;
@Schema(description = "录像存储路径")
private String recordPath;
@Schema(description = "录像存储时长")
private int recordDate;
public MediaServerItem() {
}
@ -306,14 +300,6 @@ public class MediaServerItem{
this.sendRtpPortRange = sendRtpPortRange;
}
public String getRecordPath() {
return recordPath;
}
public void setRecordPath(String recordPath) {
this.recordPath = recordPath;
}
public int getRecordDate() {
return recordDate;
}

View File

@ -14,7 +14,7 @@ public class OnRecordMp4HookParam extends HookParam{
private String url;
private String vhost;
private long start_time;
private long time_len;
private double time_len;
public String getApp() {
return app;
@ -88,11 +88,11 @@ public class OnRecordMp4HookParam extends HookParam{
this.start_time = start_time;
}
public long getTime_len() {
public double getTime_len() {
return time_len;
}
public void setTime_len(long time_len) {
public void setTime_len(double time_len) {
this.time_len = time_len;
}

View File

@ -80,14 +80,14 @@ public class CloudRecordItem {
CloudRecordItem cloudRecordItem = new CloudRecordItem();
cloudRecordItem.setApp(param.getApp());
cloudRecordItem.setStream(param.getStream());
cloudRecordItem.setStartTime(param.getStart_time());
cloudRecordItem.setStartTime(param.getStart_time()*1000);
cloudRecordItem.setFileName(param.getFile_name());
cloudRecordItem.setFolder(param.getFolder());
cloudRecordItem.setFileSize(param.getFile_size());
cloudRecordItem.setFilePath(param.getFile_path());
cloudRecordItem.setMediaServerId(param.getMediaServerId());
cloudRecordItem.setTimeLen(param.getTime_len());
cloudRecordItem.setEndTime(param.getStart_time() + param.getTime_len());
cloudRecordItem.setTimeLen((long) param.getTime_len() * 1000);
cloudRecordItem.setEndTime((param.getStart_time() + (long)param.getTime_len()) * 1000);
return cloudRecordItem;
}

View File

@ -780,11 +780,12 @@ public class PlayServiceImpl implements IPlayService {
} else {
String startTime = inviteInfo.getStreamInfo().getStartTime();
String endTime = inviteInfo.getStreamInfo().getEndTime();
// 此时start和end单位是秒
long start = DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(startTime);
long end = DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(endTime);
BigDecimal currentCount = new BigDecimal(duration);
BigDecimal totalCount = new BigDecimal(end - start);
BigDecimal totalCount = new BigDecimal((end - start) * 1000);
BigDecimal divide = currentCount.divide(totalCount, 2, RoundingMode.HALF_UP);
double process = divide.doubleValue();
inviteInfo.getStreamInfo().setProgress(process);

View File

@ -89,7 +89,7 @@ public class DateUtil {
* yyyy_MM_dd
*/
public static String timestampTo_yyyy_MM_dd(long timestamp) {
Instant instant = Instant.ofEpochSecond(timestamp);
Instant instant = Instant.ofEpochMilli(timestamp);
return DateFormatter.format(LocalDateTime.ofInstant(instant, ZoneId.of(zoneStr)));
}