Ejemplo n.º 1
0
 /// <summary>
 /// 实时预览扩展接口。
 /// </summary>
 /// <param name="iUserID"> NET_DVR_Login()或NET_DVR_Login_V30()的返回值 </param>
 /// <param name="lpPreviewInfo"> 预览参数 </param>
 /// <param name="fRealDataCallBack_V30"> 码流数据回调函数 </param>
 /// <param name="pUser"> 用户数据 </param>
 /// <returns></returns>
 public static int NET_DVR_RealPlay_V40(int iUserID, ref SDKTypes.NET_DVR_PREVIEWINFO lpPreviewInfo, SDKTypes.REALDATACALLBACK fRealDataCallBack_V30, IntPtr pUser)
 {
     if (IsLinux())
     {
         return(NET_DVR_RealPlay_V40_LINUX(iUserID, ref lpPreviewInfo, fRealDataCallBack_V30, pUser));
     }
     else
     {
         return(NET_DVR_RealPlay_V40_WIN(iUserID, ref lpPreviewInfo, fRealDataCallBack_V30, pUser));
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 启动实时预览(支持多码流)。
 /// </summary>
 /// <param name="userId"> 用户id </param>
 /// <param name="previewInfo"> 预览参数 </param>
 /// <param name="realPlayHandle"> 预览句柄 </param>
 /// <param name="userPtr"> 用户数据 </param>
 /// <param name="fRealDataCallBack_V30"></param>
 /// <returns></returns>
 public static KeyValuePair <bool, string> RealPlay_V40(int userId, ref SDKTypes.NET_DVR_PREVIEWINFO previewInfo, ref IntPtr realPlayHandle, IntPtr userPtr, SDKTypes.REALDATACALLBACK fRealDataCallBack_V30 = null)
 {
     try
     {
         int handle = NET_DVR_RealPlay_V40(userId, ref previewInfo, fRealDataCallBack_V30, userPtr);
         if (handle == -1)
         {
             return(new KeyValuePair <bool, string>(false, string.Format("启动实时预览失败,错误消息:{0}", GetLastErrorMsg())));
         }
         else
         {
             realPlayHandle = new IntPtr(handle);
             return(new KeyValuePair <bool, string>(true, string.Format("启动实时预览成功,预览句柄:{0}", handle)));
         }
     }
     catch (Exception ex)
     {
         return(new KeyValuePair <bool, string>(false, string.Format("启动实时预览失败,异常消息:{0}", ex.Message)));
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// 启动实时预览
        /// </summary>
        /// <returns></returns>
        public override KeyValuePair <bool, string> StartRealPlay()
        {
            if (!this.IsLogin)
            {
                return(new KeyValuePair <bool, string>(false, "未登录!"));
            }
            if (this.IsRealPlay)
            {
                this.StopRealPlay();
            }
            try
            {
                SDKTypes.NET_DVR_PREVIEWINFO previewInfo = this.PreviewInfo;

                previewInfo.hPlayWnd = this.RealPlayWnd;

                return(SDKWrap.RealPlay_V40(this.userId, ref previewInfo, ref this.realPlayHandle, IntPtr.Zero));
            }
            catch (Exception e)
            {
                return(new KeyValuePair <bool, string>(false, e.Message));
            }
        }
Ejemplo n.º 4
0
 private static extern int NET_DVR_RealPlay_V40_LINUX(int iUserID, ref SDKTypes.NET_DVR_PREVIEWINFO lpPreviewInfo, SDKTypes.REALDATACALLBACK fRealDataCallBack_V30, IntPtr pUser);