/// <summary> /// 初始化窗口信息 /// </summary> public void initInfo() { logger.Info("初始化窗口[" + _index + "]信息"); if (!onePlayerPanel.Visible) { onePlayerPanel.Visible = true; } VideoPlayModel v = messageModel.videoData; tittleLibel.Text = v.theme; //视频主题 if (!v.isCamera) { tittleLibel.Text = messageModel.videoData.title == null || "".Equals(messageModel.videoData.title) ? messageModel.videoData.liveMemberName : messageModel.videoData.title; } if (v.isCamera && messageModel.watchSubordinateLiveMessageBean.isThisPlatform && v.terminalMemberType == "TERMINAL_PAD_VEHICULAR") { cameraSwitch.Visible = true; } else { cameraSwitch.Visible = false; } }
private void TagContainer_TagClick(TagBase arg1, RoutedEventArgs arg2) { RealtimePlayWindow realPlayWindow = new RealtimePlayWindow(400, 300); realPlayWindow.Loaded += (s, e) => { VideoPlayModel playModel = new VideoPlayModel { Ip = "192.168.28.136", Port = 8000, Channel = 1, UserName = "******", Password = "******", StreamType = 0 }; realPlayWindow.RealPlayer.PlayHelper = new VideoPlayHelper(); Task.Factory.StartNew(() => { Thread.Sleep(1000); Dispatcher.Invoke(() => { realPlayWindow.RealPlayer.StartPlay(playModel); }); }); }; realPlayWindow.Show(); }
public void closeRtsp(bool isLeave) { logger.Info("将要关闭窗口[" + key + "]上的流"); try { VideoPlayModel v = messageModel.videoData; if (isLeave) { if (v.isCamera && !messageModel.watchSubordinateLiveMessageBean.isThisPlatform) { mainForm.tcpServerService.notifyHangupVideoChild(v.liveMemberNo, v.isCamera, messageModel.watchSubordinateLiveMessageBean); } else if (v.streamType == "RTSP") { mainForm.tcpServerService.notifyHangupVideo(v); } } //关闭视频 int ret = PlayerSdk.EasyPlayer_CloseStream(channelId); logger.Info("关闭视频是否成功:" + ret); if (ret == 0) { //关闭音频 int audioStatus = PlayerSdk.EasyPlayer_PlaySound(channelId); logger.Info("关闭音频是否成功:" + audioStatus); channelId = 0; videoPlayStatus = false; audioPlayedStatus = false; //关闭后隐藏 onePlayerPanel.Visible = false; titlePanel.Visible = false; comBtnPanel.Visible = false; ptzPanel.Visible = false; //清空保存的播放参数 this.messageModel = null; this.key = ""; //全屏播放窗口关闭后,还原窗口 if (mainForm.checkFullScreenWinByKey(key)) { mainForm.changeFullScreen(null); } } } catch (Exception e) { logger.Error("", e); } }
public void notifyHangupVideo(VideoPlayModel videoData) { Dictionary <string, object> parameter = new Dictionary <string, object>(); parameter.Add("memberNo", videoData.liveMemberNo); parameter.Add("videoMessageType", "stop"); parameter.Add("videoData", videoData); string content = JsonConvert.SerializeObject(parameter); sendMessage(content); }
private void MainWindow_Loaded(object sender, RoutedEventArgs e) { VideoPlayModel playModel = new VideoPlayModel { Ip = "192.168.28.136", Port = 8000, Channel = 1, UserName = "******", Password = "******", StreamType = 0 }; realtimeMonitorView.Player?.StartPlay(playModel); }
private void Pushbutton_Click(object sender, EventArgs e) { VideoPlayModel v = messageModel.videoData; if (!v.isCamera) { //mainForm.tcpServerService.notifyPush(v.liveMemberNo, v.isCamera, v.rtspUrl, v.callId,v.streamType, null); mainForm.tcpServerService.notifyPush(v); } else { //mainForm.tcpServerService.notifyPush(v.liveMemberNo, v.isCamera, null, null, v.streamType,messageModel.watchSubordinateLiveMessageBean); mainForm.tcpServerService.notifyPush(v); } }
public void setMessageModel(MessageModel messageModel) { this.messageModel = messageModel; VideoPlayModel videoPlayModel = messageModel.videoData; string callId = messageModel.videoData.callId; if (videoPlayModel.isCamera) { string platName = messageModel.watchSubordinateLiveMessageBean.liverPlatform; this.key = messageModel.memberNo + "_" + callId + "_" + platName; } else { this.key = messageModel.memberNo + "_" + callId; } }
//推送到分屏 public void notifyPush2Split(VideoPlayModel videoData) { if (videoData == null) { return; } Dictionary <string, object> parameter = new Dictionary <string, object>(); parameter.Add("memberNo", videoData.liveMemberNo); parameter.Add("uniqueNo", videoData.liveMemberUniqueNo); parameter.Add("videoMessageType", "push2Split"); parameter.Add("videoData", videoData); string content = JsonConvert.SerializeObject(parameter); sendMessage(content); }
//主窗体推送 public void notifyPush(List <VideoPlayModel> videoPlays) { if (videoPlays == null || videoPlays.Count == 0) { return; } VideoPlayModel videoData = videoPlays[0]; Dictionary <string, object> parameter = new Dictionary <string, object>(); parameter.Add("memberNo", videoData.liveMemberNo); parameter.Add("uniqueNo", videoData.liveMemberUniqueNo); parameter.Add("videoMessageType", "pushMany"); parameter.Add("videoDataList", videoPlays); string content = JsonConvert.SerializeObject(parameter); sendMessage(content); }
public long StartPlay(IPlayModel playParam) { VideoPlayModel playModel = playParam as VideoPlayModel; return(SMClient.Instance.StartPreview(playModel.ScreenHandle, playModel.Ip, playModel.Port, playModel.UserName, playModel.Password, playModel.Channel, playModel.StreamType)); }