private void play(int canal) { bool canStop = DHClient.DHStopRealPlay(pRealPlayHandle[this.channel]); picPlayMain.Refresh(); // pRealPlayHandle[canal] = DHClient.DHRealPlay(pLoginID, canal, picPlayMain.Handle); //Seteo de calidad (mainstream) REALPLAY_TYPE emStreamType = REALPLAY_TYPE.DH_RType_RealPlay; if (comboBoxCalidad.SelectedIndex == 0) { emStreamType = REALPLAY_TYPE.DH_RType_RealPlay_0; } else { emStreamType = REALPLAY_TYPE.DH_RType_RealPlay_1; } pRealPlayHandle[canal] = DHClient.DHRealPlayEx(pLoginID, canal, emStreamType, picPlayMain.Handle); this.channel = canal; getAjustesVideo(); }
private void play(int canal) { bool canStop = DHClient.DHStopRealPlay(pRealPlayHandle[this.channel]); picPlayMain.Refresh(); pRealPlayHandle[canal] = DHClient.DHRealPlay(pLoginID, canal, picPlayMain.Handle); this.channel = canal; }
private void StopRealPlay(CarPlateDevice device) { if (device != null && device.m_nLoginID != 0 && device.m_realPlayH != 0) { //停止监视 DHClient.DHStopRealPlay(device.m_realPlayH); device.m_realPlayH = 0; this.pictureBoxImg.Image = null; } }
private void stop() { this.startButtons(true); for (int i = 0; i < pRealPlayHandle.Length; i++) { if (pRealPlayHandle[i] != 0) { bool pudo = DHClient.DHStopRealPlay(pRealPlayHandle[i]); /*int xxx = 0; * if (!pudo && xxx < 5) * { * pudo = DHClient.DHStopRealPlayEx(pRealPlayHandle[i]); * xxx++; * }*/ } pRealPlayHandle[i] = 0; } Thread.Sleep(800); for (int i = 0; i < cantidadVentanas; i++) { if (i < pantallas.Count) { pantallas[i].Refresh(); } } //groupBoxVentanas16.Visible = false; //groupBoxVentanas16.Visible = true; /*for (int i = 0; i < cantidadVentanas; i++) * { * if (i < pantallas.Count) pantallas[i].Refresh(); * * } * for (int i = 0; i < cantidadVentanas; i++) * { * if (i < pantallas.Count) pantallas[i].Refresh(); * * } * for (int i = 0; i < cantidadVentanas; i++) * { * if (i < pantallas.Count) pantallas[i].Refresh(); * * }*/ DHClient.DHLogout(pLoginID); //DHClient.DHCleanup(); //DHClient.DHStopService(pLoginID); pLoginID = 0; }
public override void Pause() { lock (_StatusLock) { if (VideoSource == null) { return; } if (m_realPlayH != 0) { DHClient.DHStopRealPlay(m_realPlayH); m_realPlayH = 0; } this._Status = VideoStatus.Paused; } }
public override void Close() { lock (_StatusLock) { if (VideoSource != null) { ////停止消息订阅句柄 //if (m_nRealLoadPic != 0) //{ // DHClient.DHStopLoadPic(m_nRealLoadPic); // m_nRealLoadPic = 0; //} //停止监视 if (m_realPlayH != 0) { DHClient.DHStopRealPlay(m_realPlayH); m_realPlayH = 0; } if (m_nLoginID != 0) { DHClient.DHLogout(m_nLoginID); m_nLoginID = 0; } if (initialized) { DaHuaSDKManager.GetInstance().DisConnectEventHandle -= disConnect; DaHuaSDKManager.GetInstance().OnlineMsgEventHandle -= onlineMsg; initialized = false; } } this._Status = VideoStatus.Disconnected; } if (!this.TitlePanel.InvokeRequired) { this.TitlePanel.Visible = false; this.video.BackColor = Color.Navy; this.video.Image = null; } }
private void RealPlay(bool a, int b) { if (a) { switch (b) { case 0: //通道0的实时监视 pRealPlayHandle = DHClient.DHRealPlay(pLoginID, 0, picRealPlay1.Handle); picRealPlay1.Visible = true; break; case 1: //通道1的实时监视 pRealPlayHandle = DHClient.DHRealPlay(pLoginID, 1, picRealPlay2.Handle); picRealPlay2.Visible = true; break; case 2: //通道2的实时监视 pRealPlayHandle = DHClient.DHRealPlay(pLoginID, 2, picRealPlay3.Handle); picRealPlay3.Visible = true; break; case 3: //通道3的实时监视 pRealPlayHandle = DHClient.DHRealPlay(pLoginID, 3, picRealPlay4.Handle); picRealPlay4.Visible = true; break; case 4: //通道4的实时监视 pRealPlayHandle = DHClient.DHRealPlay(pLoginID, 4, picRealPlay5.Handle); picRealPlay5.Visible = true; break; } } else { DHClient.DHStopRealPlay(pRealPlayHandle); picRealPlay1.Refresh(); } }
/// <summary> /// 设备断开连接处理 /// </summary> /// <param name="lLoginID"></param> /// <param name="pchDVRIP"></param> /// <param name="nDVRPort"></param> /// <param name="dwUser"></param> private void DisConnectEvent(int lLoginID, StringBuilder pchDVRIP, int nDVRPort, IntPtr dwUser) { try { for (int i = 0; i < deviceInfo.byChanNum; i++) { DHClient.DHStopRealPlay(pRealPlayHandle[i]); } DHClient.DHLogout(pLoginID); //pLoginID pLoginID = 0; while (pLoginID == 0) { Thread.Sleep(1000); RealPlay(); } //MessageBox.Show("设备用户断开连接", pMsgTitle); } catch (Exception ex) { Program.WriteLog("视频设备断开连接处理异常" + ex.ToString()); } }
/// <summary> /// 设备2停止实时监视处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStopReal2_Click(object sender, EventArgs e) { //停止监控:注意realPlayHandle2 DHClient.DHStopRealPlay(realPlayHandle2); picRealPlay2.Refresh(); }
/// <summary> /// 实时播放按钮按下 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnRealPlay_Click(object sender, EventArgs e) { string strStart = StringUtil.ConvertString("实时监视开始"); string strStop = StringUtil.ConvertString("实时监视结束"); if (btnRealPlay.Text.Equals(strStart)) { btnRealPlay.Text = strStop; pRealPlayHandle = new int[deviceInfo.byChanNum]; cmbChannelSelect.Items.Clear(); for (int i = 0; i < deviceInfo.byChanNum; i++) { cmbChannelSelect.Items.Add(i.ToString()); } cmbChannelSelect.SelectedIndex = 0; for (int i = 0; i < deviceInfo.byChanNum; i++) { switch (i) { case 0: //通道0的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay0.Handle); break; case 1: //通道1的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay1.Handle); break; case 2: //通道2的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay2.Handle); break; case 3: //通道3的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay3.Handle); break; case 4: //通道4的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay4.Handle); break; case 5: //通道5的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay5.Handle); break; case 6: //通道6的实时监视 pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay6.Handle); break; case 7: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay7.Handle); break; case 8: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay8.Handle); break; case 9: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay9.Handle); break; case 10: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay10.Handle); break; case 11: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay11.Handle); break; case 12: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay12.Handle); break; case 13: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay13.Handle); break; case 14: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay14.Handle); break; case 15: pRealPlayHandle[i] = DHClient.DHRealPlay(pLoginID, i, picRealPlay15.Handle); break; } } gpbPTZControl.Enabled = true; } else { btnRealPlay.Text = strStart; cmbChannelSelect.Items.Clear(); for (int i = 0; i < deviceInfo.byChanNum; i++) { DHClient.DHStopRealPlay(pRealPlayHandle[i]); } picRealPlay0.Refresh(); picRealPlay1.Refresh(); picRealPlay2.Refresh(); picRealPlay3.Refresh(); picRealPlay4.Refresh(); picRealPlay5.Refresh(); picRealPlay6.Refresh(); picRealPlay7.Refresh(); picRealPlay8.Refresh(); picRealPlay9.Refresh(); picRealPlay10.Refresh(); picRealPlay11.Refresh(); picRealPlay12.Refresh(); picRealPlay13.Refresh(); picRealPlay14.Refresh(); picRealPlay15.Refresh(); gpbPTZControl.Enabled = false; } }
private void TimePlay_Tick(object sender, EventArgs e) { DHClient.DHStopRealPlay(pRealPlayHandle); picRealPlay1.Refresh(); }