コード例 #1
0
        public void Preview()
        {
            if (App.DataCamera[this.postion].m_lRealHandle >= 0)
            {
                CHCNetSDK.NET_DVR_StopRealPlay(App.DataCamera[this.postion].m_lRealHandle);
            }
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            lpClientInfo.lChannel     = App.DataCamera[this.postion].channel;
            lpClientInfo.lLinkMode    = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            // App.DataCamera[this.postion].m_iPreviewType = 1;
            lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
            m_ptrRealHandle       = pictureBox1.Handle;
            m_fRealData           = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
            IntPtr pUser = new IntPtr();

            App.DataCamera[this.postion].m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(App.DataCamera[this.postion].m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);

            if (App.DataCamera[this.postion].m_lRealHandle == -1)
            {
                uint nError = CHCNetSDK.NET_DVR_GetLastError();
                MessageBox.Show("Lỗi không thể truy cập camera");
                return;
            }
        }
コード例 #2
0
 public void Preview()
 {
     CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
     lpClientInfo.lChannel     = this.Camera.channel;
     lpClientInfo.lLinkMode    = 0x0000;
     lpClientInfo.sMultiCastIP = "";
     if (this.Camera.m_iPreviewType == 0)     // use by callback
     {
         lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
         m_ptrRealHandle       = pictureBox1.Handle;
         m_fRealData           = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
         IntPtr pUser = new IntPtr();
         this.Camera.m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(this.Camera.m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);
     }
     else if (1 == this.Camera.m_iPreviewType)
     {
         m_ptrRealHandle = pictureBox1.Handle;
         IntPtr pUser = new IntPtr();
         this.Camera.m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(this.Camera.m_lUserID, ref lpClientInfo, null, pUser, 1);
     }
     if (this.Camera.m_lRealHandle == -1)
     {
         uint nError = CHCNetSDK.NET_DVR_GetLastError();
         MessageBox.Show("Lỗi không thể truy cập camera");
         return;
     }
 }
コード例 #3
0
        public void Preview()
        {
            if (App.DataCamera[this.postion].m_lRealHandle >= 0)
            {
                CHCNetSDK.NET_DVR_StopRealPlay(App.DataCamera[this.postion].m_lRealHandle);
            }
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            lpClientInfo.lChannel = App.DataCamera[this.postion].channel;
            lpClientInfo.lLinkMode = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            // App.DataCamera[this.postion].m_iPreviewType = 1;
            lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
            m_ptrRealHandle = pictureBox1.Handle;
            m_fRealData = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
            IntPtr pUser = new IntPtr();
            App.DataCamera[this.postion].m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(App.DataCamera[this.postion].m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);

            if (App.DataCamera[this.postion].m_lRealHandle == -1)
            {
                uint nError = CHCNetSDK.NET_DVR_GetLastError();
                MessageBox.Show("Lỗi không thể truy cập camera");
                return;
            }


        }
コード例 #4
0
        private void btnPreview_Click()
        {
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();

            int channel = 1;

            lpClientInfo.lChannel     = channel;
            lpClientInfo.lLinkMode    = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            if (m_iPreviewType == 0)                 // use by callback
            {
                lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
                m_ptrRealHandle       = pictureBox1.Handle;
                m_fRealData           = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
                IntPtr pUser = new IntPtr();
                m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);
            }
            else if (1 == m_iPreviewType)
            {
                lpClientInfo.hPlayWnd = pictureBox1.Handle;
                IntPtr pUser = new IntPtr();
                m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, null, pUser, 1);
            }
            if (m_lRealHandle == -1)
            {
                // uint nError = CHCNetSDK.NET_DVR_GetLastError();
                // DebugInfo("NET_DVR_RealPlay fail %d!");
                return;
            }
        }
コード例 #5
0
        public async void Preview()
        {
           // if (App.DataCamera[this.Postion].m_lRealHandle > 0)
            
                CHCNetSDK.NET_DVR_StopRealPlay(App.DataCamera[this.Postion].m_lRealHandle);
                await Task.Delay(50);
            
            //LocationMedia media = new LocationMedia(App.DataCamera[this.Postion].rtsp);
           // media.ParsedChanged += media_ParsedChanged;
           // this.myVlcControl.Media = media;
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            lpClientInfo.lChannel = App.DataCamera[this.Postion].channel;
            lpClientInfo.lLinkMode = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
            m_ptrRealHandle = pictureBox1.Handle;
            m_fRealData = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
            IntPtr pUser = new IntPtr();
            App.DataCamera[this.Postion].m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(App.DataCamera[this.Postion].m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);

            if (App.DataCamera[this.Postion].m_lRealHandle == -1)
            {
                uint nError = CHCNetSDK.NET_DVR_GetLastError();
                MessageBox.Show("Lỗi không thể truy cập camera");
                return;
            }


        }
コード例 #6
0
        public async void Preview()
        {
            // if (App.DataCamera[this.Postion].m_lRealHandle > 0)

            CHCNetSDK.NET_DVR_StopRealPlay(App.DataCamera[this.Postion].m_lRealHandle);
            await Task.Delay(50);

            //LocationMedia media = new LocationMedia(App.DataCamera[this.Postion].rtsp);
            // media.ParsedChanged += media_ParsedChanged;
            // this.myVlcControl.Media = media;
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            lpClientInfo.lChannel     = App.DataCamera[this.Postion].channel;
            lpClientInfo.lLinkMode    = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            lpClientInfo.hPlayWnd     = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
            m_ptrRealHandle           = pictureBox1.Handle;
            m_fRealData = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
            IntPtr pUser = new IntPtr();

            App.DataCamera[this.Postion].m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(App.DataCamera[this.Postion].m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);

            if (App.DataCamera[this.Postion].m_lRealHandle == -1)
            {
                uint nError = CHCNetSDK.NET_DVR_GetLastError();
                MessageBox.Show("Lỗi không thể truy cập camera");
                return;
            }
        }
コード例 #7
0
ファイル: frmVideoTime.cs プロジェクト: wollfman/ToolsManage
        private void VideoInitAndPriview()
        {
            if (sbtnLook.Text == "预览")
            {
                m_bInitSDK = CHCNetSDK.NET_DVR_Init();
                if (m_bInitSDK == false)
                {
                    //MessageBox.Show("设备初始化失败!");
                    return;
                }

                m_lUserID = CHCNetSDK.NET_DVR_Login_V30(DVRIPAddress, DVRPortNumber, DVRUserName, DVRPassword, ref m_struDeviceInfo);
                if (m_lUserID == -1)
                {
                    MessageBox.Show("登录失败!");
                    return;
                }
                else
                {
                    //MessageBox.Show("登录成功!");
                    TimerStart();
                    //StartAlarmVideo();

                    CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();                         //摄像头 配置信息结构
                    lpClientInfo.lChannel     = 1;
                    lpClientInfo.lLinkMode    = 0x0000;                                                                     //最高位(31)为0表示主码流,为1表示子码流,0-30位表示码流连接方式: 0:TCP方式,1:UDP方式,2:多播方式,3 - RTP方式,4-音视频分开(TCP)
                    lpClientInfo.sMultiCastIP = "";                                                                         //多播组地址
                    if (m_iPreviewType == 0)                                                                                // use by callback
                    {
                        lpClientInfo.hPlayWnd = IntPtr.Zero;                                                                //播放窗口的句柄,为NULL表示不播放图象
                        m_ptrRealHandle       = RealPlayWnd.Handle;                                                         //获取控件绑定到的窗口句柄。 RealPlayWnd显示界面
                        m_fRealData           = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);                           // 预览回调
                        IntPtr pUser = new IntPtr();
                        m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1); //实时预览
                    }
                    else if (1 == m_iPreviewType)
                    {
                        lpClientInfo.hPlayWnd = RealPlayWnd.Handle;
                        IntPtr pUser = new IntPtr();
                        m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, null, pUser, 1);
                    }
                    if (m_lRealHandle == -1)
                    {
                        uint nError = CHCNetSDK.NET_DVR_GetLastError();
                        VideoRetErrorDis(nError);
                        //DebugInfo("NET_DVR_RealPlay fail %d!");
                        return;
                    }
                    sbtnLook.Text = "停止预览";
                    //this.btnPriview.Image = global::HikHelp.Properties.Resources.停止预览;
                }
            }
            else if (sbtnLook.Text == "停止预览")
            {
                sbtnLook.Text = "预览";
                //btnPriview.Image = global::HikHelp.Properties.Resources.预览;
                StopPriview();
            }
        }
コード例 #8
0
        public static int RealPlay(CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo)
        {
            CHCNetSDK.REALDATACALLBACK RealData = new CHCNetSDK.REALDATACALLBACK(SDKCommon.RealDataCallBack);
            IntPtr pUser = new IntPtr();

            m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, RealData, pUser, 1);
            return(m_lRealHandle);
        }
コード例 #9
0
        /// <summary>
        /// 预览硬盘录像机视频
        /// </summary>
        /// <param name="lpClientInfo">预览参数 </param>
        /// <returns></returns>
        public static int RealPlay(int ilChannel, System.Windows.Forms.PictureBox RealPlayWnd)
        {
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = GetRealPlay(ilChannel, RealPlayWnd);
            CHCNetSDK.REALDATACALLBACK   RealData     = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
            IntPtr pUser = new IntPtr();

            m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, RealData, pUser, 1);
            return(m_lRealHandle);
        }
コード例 #10
0
 /// <summary>
 /// 设置硬盘录像机客户端设置
 /// </summary>
 /// <param name="ilChannel"></param>
 /// <returns></returns>
 public static CHCNetSDK.NET_DVR_CLIENTINFO GetRealPlay(int ilChannel, System.Windows.Forms.PictureBox RealPlayWnd)
 {
     CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
     lpClientInfo.hPlayWnd     = RealPlayWnd.Handle;
     lpClientInfo.lChannel     = ilChannel;
     lpClientInfo.lLinkMode    = 0x0000;
     lpClientInfo.sMultiCastIP = "";
     return(lpClientInfo);
 }
コード例 #11
0
 /// <summary>
 /// 启用实时预览
 /// </summary>
 public void SDKRealPlay()
 {
     //登录
     int m_UserID = DVRLogin(DVRIP,DVRPort,DVRUserName,DVRPassword);
     //实时预览
     CHCNetSDK.NET_DVR_CLIENTINFO clientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
     clientInfo.lChannel = 1;
     clientInfo.lLinkMode = 0;
     int iRealPlayHandle= CHCNetSDK.NET_DVR_RealPlay_V30(m_UserID,ref clientInfo,null,IntPtr.Zero,0);
     //注册回调函数
   //  if(realDataCallBackEvent==null)  realDataCallBackEvent = new SETREALDATACALLBACK(iRealPlayHandle,2,);
 }
コード例 #12
0
        private void StartPlay()
        {
            if (m_lRealPlayHandle != -1)
            {
                return;
            }

            CHCNetSDK.NET_DVR_CLIENTINFO struClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            struClientInfo.hPlayWnd  = PreViewBox.Handle;
            struClientInfo.lChannel  = 1;
            struClientInfo.lLinkMode = 0;
            IntPtr ptrUser = new IntPtr();

            m_lRealPlayHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref struClientInfo, null, ptrUser, 1);
            if (m_lRealPlayHandle == -1)
            {
                uint   iLastErr = CHCNetSDK.NET_DVR_GetLastError();
                string strTemp  = "NET_DVR_RealPlay_V30 failed, error code= " + iLastErr;
                g_formList.AddLog(m_iDevIndex, AcsDemoPublic.OPERATION_FAIL_T, strTemp);
            }
            Marshal.FreeHGlobal(ptrUser);
        }
コード例 #13
0
 /// <summary>
 /// 实时视频信息
 /// </summary>
 private void GetRealPlay()
 {
     try
     {
         IntPtr pUser = new IntPtr();
         CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO()
         {
             lChannel     = Common.Channel,
             lLinkMode    = 0,
             sMultiCastIP = "",
             hPlayWnd     = Controls.Find("pictureBox1", true)[0].Handle
         };
         m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, null, pUser, 0);
         if (this.m_lRealHandle == -1)
         {
             uint nError = CHCNetSDK.NET_DVR_GetLastError();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
コード例 #14
0
ファイル: frmVideoTime.cs プロジェクト: wollfman/ToolsManage
 private bool StartVideo(ref string info)
 {
     try
     {
         if (FileSavePath != "")
         {     //保存路径存在
             if (m_lRealHandle != -1)
             { //有预览的录像
                 if (CHCNetSDK.NET_DVR_SaveRealData(m_lRealHandle, FileSavePath))
                 {
                     m_IsStartVideo = true;
                     return(true);
                 }
                 else
                 {
                     m_IsStartVideo = false;
                     uint nError = CHCNetSDK.NET_DVR_GetLastError();
                     info = VideoRetErrorDis(nError);
                     return(false);
                 }
             }
             else
             {//不带预览的录像  这样可以不用监控就可以预览
                 CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
                 lpClientInfo.lChannel     = 1;
                 lpClientInfo.lLinkMode    = 0x0000;
                 lpClientInfo.sMultiCastIP = "";
                 //lpClientInfo.hPlayWnd = RealPlayWnd.Handle;
                 IntPtr pUser = new IntPtr();
                 m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(m_lUserID, ref lpClientInfo, null, pUser, 1);
                 if (m_lRealHandle == -1)
                 {
                     //MessageBox.Show("录像失败!");
                     info = "录像失败!";
                     return(false);
                 }
                 else
                 {
                     if (CHCNetSDK.NET_DVR_SaveRealData(m_lRealHandle, FileSavePath))
                     {
                         m_IsStartVideo = true;
                         return(true);
                     }
                     else
                     {
                         m_IsStartVideo = false;
                         uint nError = CHCNetSDK.NET_DVR_GetLastError();
                         info = VideoRetErrorDis(nError);
                         return(false);
                     }
                 }
             }
         }
         else
         {
             info = "保存路径不正确!";
             return(false);
         }
     }
     catch (Exception ex)
     {
         info = ex.Message;
         return(false);
     }
 }
コード例 #15
0
        public void Preview()
        {
            CHCNetSDK.NET_DVR_CLIENTINFO lpClientInfo = new CHCNetSDK.NET_DVR_CLIENTINFO();
            lpClientInfo.lChannel = this.Camera.channel;
            lpClientInfo.lLinkMode = 0x0000;
            lpClientInfo.sMultiCastIP = "";
            if (this.Camera.m_iPreviewType == 0) // use by callback
            {
                
                lpClientInfo.hPlayWnd = IntPtr.Zero; // todo!!! 这边应该做2中情况考虑去编写代码
                m_ptrRealHandle = pictureBox1.Handle;
                m_fRealData = new CHCNetSDK.REALDATACALLBACK(RealDataCallBack);
                IntPtr pUser = new IntPtr();
                this.Camera.m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(this.Camera.m_lUserID, ref lpClientInfo, m_fRealData, pUser, 1);
            }
            else if (1 == this.Camera.m_iPreviewType)
            {
                m_ptrRealHandle = pictureBox1.Handle;
                IntPtr pUser = new IntPtr();
                this.Camera.m_lRealHandle = CHCNetSDK.NET_DVR_RealPlay_V30(this.Camera.m_lUserID, ref lpClientInfo, null, pUser, 1);
            }
            if (this.Camera.m_lRealHandle == -1)
            {
                uint nError = CHCNetSDK.NET_DVR_GetLastError();
                MessageBox.Show("Lỗi không thể truy cập camera");
                return;
            }
           

        }