优化点播后截图以及截图的展示
This commit is contained in:
parent
df9f6a8927
commit
66234dc288
@ -238,7 +238,9 @@ public class StreamInfo implements Serializable, Cloneable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setRtc(String host, int port, int sslPort, String app, String stream, String callIdParam) {
|
public void setRtc(String host, int port, int sslPort, String app, String stream, String callIdParam) {
|
||||||
callIdParam = Objects.equals(callIdParam, "") ? callIdParam : callIdParam.replace("?", "&");
|
if (callIdParam != null) {
|
||||||
|
callIdParam = Objects.equals(callIdParam, "") ? callIdParam : callIdParam.replace("?", "&");
|
||||||
|
}
|
||||||
String file = String.format("index/api/webrtc?app=%s&stream=%s&type=play%s", app, stream, callIdParam);
|
String file = String.format("index/api/webrtc?app=%s&stream=%s&type=play%s", app, stream, callIdParam);
|
||||||
if (port > 0) {
|
if (port > 0) {
|
||||||
this.rtc = new StreamURL("http", host, port, file);
|
this.rtc = new StreamURL("http", host, port, file);
|
||||||
|
@ -86,6 +86,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
|||||||
matchers.add("/swagger-resources/**");
|
matchers.add("/swagger-resources/**");
|
||||||
matchers.add("/v3/api-docs/**");
|
matchers.add("/v3/api-docs/**");
|
||||||
matchers.add("/js/**");
|
matchers.add("/js/**");
|
||||||
|
matchers.add("/api/device/query/snap/**");
|
||||||
matchers.addAll(userSetting.getInterfaceAuthenticationExcludes());
|
matchers.addAll(userSetting.getInterfaceAuthenticationExcludes());
|
||||||
// 可以直接访问的静态数据
|
// 可以直接访问的静态数据
|
||||||
web.ignoring().antMatchers(matchers.toArray(new String[0]));
|
web.ignoring().antMatchers(matchers.toArray(new String[0]));
|
||||||
|
@ -267,7 +267,7 @@ public class SIPCommander implements ISIPCommander {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.info("{} 分配的ZLM为: {} [{}:{}]", stream, mediaServerItem.getId(), mediaServerItem.getIp(), ssrcInfo.getPort());
|
logger.info("{} 分配的ZLM为: {} [{}:{}]", stream, mediaServerItem.getId(), mediaServerItem.getSdpIp(), ssrcInfo.getPort());
|
||||||
HookSubscribeForStreamChange hookSubscribe = HookSubscribeFactory.on_stream_changed("rtp", stream, true, "rtsp", mediaServerItem.getId());
|
HookSubscribeForStreamChange hookSubscribe = HookSubscribeFactory.on_stream_changed("rtp", stream, true, "rtsp", mediaServerItem.getId());
|
||||||
subscribe.addSubscribe(hookSubscribe, (MediaServerItem mediaServerItemInUse, JSONObject json) -> {
|
subscribe.addSubscribe(hookSubscribe, (MediaServerItem mediaServerItemInUse, JSONObject json) -> {
|
||||||
if (event != null) {
|
if (event != null) {
|
||||||
@ -368,7 +368,7 @@ public class SIPCommander implements ISIPCommander {
|
|||||||
SipSubscribe.Event okEvent, SipSubscribe.Event errorEvent) throws InvalidArgumentException, SipException, ParseException {
|
SipSubscribe.Event okEvent, SipSubscribe.Event errorEvent) throws InvalidArgumentException, SipException, ParseException {
|
||||||
|
|
||||||
|
|
||||||
logger.info("{} 分配的ZLM为: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getId(), mediaServerItem.getIp(), ssrcInfo.getPort());
|
logger.info("{} 分配的ZLM为: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getSdpIp(), mediaServerItem.getIp(), ssrcInfo.getPort());
|
||||||
String sdpIp;
|
String sdpIp;
|
||||||
if (!ObjectUtils.isEmpty(device.getSdpIp())) {
|
if (!ObjectUtils.isEmpty(device.getSdpIp())) {
|
||||||
sdpIp = device.getSdpIp();
|
sdpIp = device.getSdpIp();
|
||||||
@ -474,7 +474,7 @@ public class SIPCommander implements ISIPCommander {
|
|||||||
InviteStreamCallback inviteStreamCallback, InviteStreamCallback hookEvent,
|
InviteStreamCallback inviteStreamCallback, InviteStreamCallback hookEvent,
|
||||||
SipSubscribe.Event errorEvent,SipSubscribe.Event okEvent) throws InvalidArgumentException, SipException, ParseException {
|
SipSubscribe.Event errorEvent,SipSubscribe.Event okEvent) throws InvalidArgumentException, SipException, ParseException {
|
||||||
|
|
||||||
logger.info("{} 分配的ZLM为: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getId(), mediaServerItem.getIp(), ssrcInfo.getPort());
|
logger.info("{} 分配的ZLM为: {} [{}:{}]", ssrcInfo.getStream(), mediaServerItem.getSdpIp(), mediaServerItem.getIp(), ssrcInfo.getPort());
|
||||||
String sdpIp;
|
String sdpIp;
|
||||||
if (!ObjectUtils.isEmpty(device.getSdpIp())) {
|
if (!ObjectUtils.isEmpty(device.getSdpIp())) {
|
||||||
sdpIp = device.getSdpIp();
|
sdpIp = device.getSdpIp();
|
||||||
|
@ -266,7 +266,12 @@ public class PlayServiceImpl implements IPlayService {
|
|||||||
onPublishHandlerForPlay(mediaServerItemInuse, response, device.getDeviceId(), channelId);
|
onPublishHandlerForPlay(mediaServerItemInuse, response, device.getDeviceId(), channelId);
|
||||||
hookEvent.response(mediaServerItemInuse, response);
|
hookEvent.response(mediaServerItemInuse, response);
|
||||||
logger.info("[点播成功] deviceId: {}, channelId: {}", device.getDeviceId(), channelId);
|
logger.info("[点播成功] deviceId: {}, channelId: {}", device.getDeviceId(), channelId);
|
||||||
String streamUrl = String.format("rtsp://127.0.0.1:%s/%s/%s", mediaServerItemInuse.getRtspPort(), "rtp", ssrcInfo.getStream());
|
String streamUrl;
|
||||||
|
if (mediaServerItemInuse.getRtspPort() != 0) {
|
||||||
|
streamUrl = String.format("rtsp://127.0.0.1:%s/%s/%s", mediaServerItemInuse.getRtspPort(), "rtp", ssrcInfo.getStream());
|
||||||
|
}else {
|
||||||
|
streamUrl = String.format("http://127.0.0.1:%s/%s/%s.live.mp4", mediaServerItemInuse.getHttpPort(), "rtp", ssrcInfo.getStream());
|
||||||
|
}
|
||||||
String path = "snap";
|
String path = "snap";
|
||||||
String fileName = device.getDeviceId() + "_" + channelId + ".jpg";
|
String fileName = device.getDeviceId() + "_" + channelId + ".jpg";
|
||||||
// 请求截图
|
// 请求截图
|
||||||
|
Loading…
Reference in New Issue
Block a user