Merge branch 'refs/heads/2.7.1'

# Conflicts:
#	src/main/java/com/genersoft/iot/vmp/common/StreamInfo.java
#	src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java
#	src/main/java/com/genersoft/iot/vmp/service/impl/MediaServiceImpl.java
pull/1524/head
648540858 2024-06-25 09:45:34 +08:00
commit 57a230afb3
9 changed files with 66 additions and 18 deletions

View File

@ -87,6 +87,9 @@ public class StreamInfo implements Serializable, Cloneable{
@Schema(description = "产生源类型,包括 unknown = 0,rtmp_push=1,rtsp_push=2,rtp_push=3,pull=4,ffmpeg_pull=5,mp4_vod=6,device_chn=7") @Schema(description = "产生源类型,包括 unknown = 0,rtmp_push=1,rtsp_push=2,rtp_push=3,pull=4,ffmpeg_pull=5,mp4_vod=6,device_chn=7")
private int originType; private int originType;
@Schema(description = "转码后的视频流")
private StreamInfo transcodeStream;
public void setFlv(StreamURL flv) { public void setFlv(StreamURL flv) {
this.flv = flv; this.flv = flv;
} }
@ -533,6 +536,14 @@ public class StreamInfo implements Serializable, Cloneable{
this.transactionInfo = transactionInfo; this.transactionInfo = transactionInfo;
} }
public StreamInfo getTranscodeStream() {
return transcodeStream;
}
public void setTranscodeStream(StreamInfo transcodeStream) {
this.transcodeStream = transcodeStream;
}
@Override @Override
public StreamInfo clone() { public StreamInfo clone() {
StreamInfo instance = null; StreamInfo instance = null;

View File

@ -21,7 +21,7 @@ public class UserSetting {
private Boolean seniorSdp = Boolean.FALSE; private Boolean seniorSdp = Boolean.FALSE;
private Integer playTimeout = 18000; private Integer playTimeout = 10000;
private int platformPlayTimeout = 20000; private int platformPlayTimeout = 20000;

View File

@ -315,8 +315,8 @@ public class NotifyRequestForCatalogProcessor extends SIPRequestProcessorParent
} }
} }
@Scheduled(fixedRate = 10000) //每1秒执行一次 // @Scheduled(fixedRate = 10000) //每1秒执行一次
public void execute(){ // public void execute(){
logger.info("[待处理Notify-目录订阅消息数量]: {}", taskQueue.size()); // logger.info("[待处理Notify-目录订阅消息数量]: {}", taskQueue.size());
} // }
} }

View File

@ -188,8 +188,8 @@ public class NotifyRequestForMobilePositionProcessor extends SIPRequestProcessor
} }
taskQueue.clear(); taskQueue.clear();
} }
@Scheduled(fixedRate = 10000) // @Scheduled(fixedRate = 10000)
public void execute(){ // public void execute(){
logger.info("[待处理Notify-移动位置订阅消息数量]: {}", taskQueue.size()); // logger.debug("[待处理Notify-移动位置订阅消息数量]: {}", taskQueue.size());
} // }
} }

View File

@ -53,7 +53,7 @@ public interface CloudRecordServiceMapper {
" <if test= 'ids != null ' > and id in " + " <if test= 'ids != null ' > and id in " +
" <foreach collection='ids' item='item' open='(' separator=',' close=')' > #{item}</foreach>" + " <foreach collection='ids' item='item' open='(' separator=',' close=')' > #{item}</foreach>" +
" </if>" + " </if>" +
" order by start_time DESC" + " order by start_time ASC" +
" </script>") " </script>")
List<CloudRecordItem> getList(@Param("query") String query, @Param("app") String app, @Param("stream") String stream, List<CloudRecordItem> getList(@Param("query") String query, @Param("app") String app, @Param("stream") String stream,
@Param("startTimeStamp")Long startTimeStamp, @Param("endTimeStamp")Long endTimeStamp, @Param("startTimeStamp")Long startTimeStamp, @Param("endTimeStamp")Long endTimeStamp,

View File

@ -98,6 +98,9 @@ public class StreamContent {
@Schema(description = "文件下载地址(录像下载使用)") @Schema(description = "文件下载地址(录像下载使用)")
private DownloadFileInfo downLoadFilePath; private DownloadFileInfo downLoadFilePath;
@Schema(description = "转码后的视频流")
private StreamContent transcodeStream;
private double progress; private double progress;
public StreamContent(StreamInfo streamInfo) { public StreamContent(StreamInfo streamInfo) {
@ -179,6 +182,17 @@ public class StreamContent {
if (streamInfo.getDownLoadFilePath() != null) { if (streamInfo.getDownLoadFilePath() != null) {
this.downLoadFilePath = streamInfo.getDownLoadFilePath(); this.downLoadFilePath = streamInfo.getDownLoadFilePath();
} }
if (streamInfo.getTranscodeStream() != null) {
this.transcodeStream = new StreamContent(streamInfo.getTranscodeStream());
}
}
public StreamContent getTranscodeStream() {
return transcodeStream;
}
public void setTranscodeStream(StreamContent transcodeStream) {
this.transcodeStream = transcodeStream;
} }
public String getApp() { public String getApp() {

View File

@ -126,13 +126,32 @@ public class ApiStreamController {
resultJjson.put("ChannelID", code); resultJjson.put("ChannelID", code);
resultJjson.put("ChannelName", deviceChannel.getName()); resultJjson.put("ChannelName", deviceChannel.getName());
resultJjson.put("ChannelCustomName", ""); resultJjson.put("ChannelCustomName", "");
resultJjson.put("FLV", streamInfo.getFlv().getUrl()); if (streamInfo.getTranscodeStream() != null) {
if(streamInfo.getHttps_flv() != null) { resultJjson.put("FLV", streamInfo.getTranscodeStream().getFlv().getUrl());
resultJjson.put("HTTPS_FLV", streamInfo.getHttps_flv().getUrl()); }else {
resultJjson.put("FLV", streamInfo.getFlv().getUrl());
} }
resultJjson.put("WS_FLV", streamInfo.getWs_flv().getUrl()); if(streamInfo.getHttps_flv() != null) {
if (streamInfo.getTranscodeStream() != null) {
resultJjson.put("HTTPS_FLV", streamInfo.getTranscodeStream().getHttps_flv().getUrl());
}else {
resultJjson.put("HTTPS_FLV", streamInfo.getHttps_flv().getUrl());
}
}
if (streamInfo.getTranscodeStream() != null) {
resultJjson.put("WS_FLV", streamInfo.getTranscodeStream().getWs_flv().getUrl());
}else {
resultJjson.put("WS_FLV", streamInfo.getWs_flv().getUrl());
}
if(streamInfo.getWss_flv() != null) { if(streamInfo.getWss_flv() != null) {
resultJjson.put("WSS_FLV", streamInfo.getWss_flv().getUrl()); if (streamInfo.getTranscodeStream() != null) {
resultJjson.put("WSS_FLV", streamInfo.getTranscodeStream().getWss_flv().getUrl());
}else {
resultJjson.put("WSS_FLV", streamInfo.getWss_flv().getUrl());
}
} }
resultJjson.put("RTMP", streamInfo.getRtmp().getUrl()); resultJjson.put("RTMP", streamInfo.getRtmp().getUrl());
if (streamInfo.getRtmps() != null) { if (streamInfo.getRtmps() != null) {

View File

@ -2,4 +2,4 @@ spring:
application: application:
name: wvp name: wvp
profiles: profiles:
active: local active: local271

View File

@ -473,10 +473,14 @@ export default {
}, },
getUrlByStreamInfo() { getUrlByStreamInfo() {
console.log(this.streamInfo) console.log(this.streamInfo)
let streamInfo = this.streamInfo
if (this.streamInfo.transcodeStream) {
streamInfo = this.streamInfo.transcodeStream;
}
if (location.protocol === "https:") { if (location.protocol === "https:") {
this.videoUrl = this.streamInfo[this.player[this.activePlayer][1]] this.videoUrl = streamInfo[this.player[this.activePlayer][1]]
} else { } else {
this.videoUrl = this.streamInfo[this.player[this.activePlayer][0]] this.videoUrl = streamInfo[this.player[this.activePlayer][0]]
} }
return this.videoUrl; return this.videoUrl;