WEB开发网      濠电姷鏁告繛鈧繛浣冲洤纾瑰┑鐘宠壘閻ょ偓銇勯幇鍫曟闁稿鍠愰妵鍕冀閵娧佲偓鎺楁⒒閸曨偄顏柡宀嬬畱铻e〒姘煎灡绗戦梻浣筋嚙濮橈箓顢氳濠€浣糕攽閻樿宸ュΔ鐘叉啞缁傚秹宕滆绾惧ジ寮堕崼娑樺缂佹宀搁弻鐔风暋閻楀牆娈楅梺璇″枓閺呯姴鐣疯ぐ鎺濇晝闁靛牆妫欓蹇旂節閻㈤潧浠﹂柛銊ョ埣楠炴劙骞橀鑲╋紱闂佽宕樼粔顔裤亹閹烘挸浜归梺缁樺灦閿曗晛螞閸曨垱鈷戦柟鑲╁仜婵″ジ鎮楀☉鎺撴珖缂侇喖顑呴鍏煎緞濡粯娅囬梻浣瑰缁诲倿寮绘繝鍥ㄦ櫇闁稿本绋撻崢鐢告煟鎼淬垻鈯曢柨姘舵煟韫囥儳绋荤紒缁樼箖缁绘繈宕橀妸褌绱濋梻浣筋嚃閸ㄤ即宕弶鎴犳殾闁绘梻鈷堥弫鍌炴煕閳锯偓閺呮瑧妲愬Ο琛℃斀闁绘劕妯婇崵鐔封攽椤旇棄鍔ら摶鐐烘煕閺囥劌澧柛娆忕箻閺屽秹宕崟顒€娅g紓浣插亾濠㈣泛顑囩粻楣冩煙鐎涙ḿ绠橀柨娑樼У椤ㄣ儵鎮欓鍕紙闂佽鍠栫紞濠傜暦閹偊妲诲┑鈩冨絻椤兘寮诲☉銏犖╅柕澶堝労閸斿绱撴担绋库偓鍝ョ矓瑜版帒鏋侀柟鍓х帛閺呮悂鏌ㄩ悤鍌涘 ---闂傚倸鍊烽悞锔锯偓绗涘厾娲煛閸涱厾顔嗛梺璺ㄥ櫐閹凤拷
开发学院软件开发C语言 C# 视频监控系列(7):服务器端——封装API(下) ... 阅读

C# 视频监控系列(7):服务器端——封装API(下) [DS40xxSDK.dll] (中)

 2009-04-08 08:23:50 来源:WEB开发网 闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�闂傚倸鍊风粈渚€骞夐敓鐘插瀭闁汇垹鐏氬畷鏌ユ煙閹殿喖顣奸柛搴$У閵囧嫰骞掗幋婵冨亾閻㈢ǹ纾婚柟鐐灱濡插牊绻涢崱妤冃℃繛宀婁簽缁辨捇宕掑鎵佹瀸闂佺懓鍤栭幏锟�濠电姷鏁告慨顓㈠箯閸愵喖宸濇い鎾寸箘閹规洟姊绘笟鈧ḿ褍煤閵堝悿娲Ω閳轰胶鍔﹀銈嗗笂閼冲爼鍩婇弴銏$厪闁搞儮鏅涙禒褏绱掓潏鈺佷槐闁轰焦鎹囬弫鎾绘晸閿燂拷闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�  闂傚倸鍊烽懗鑸电仚缂備胶绮〃鍛村煝瀹ュ鍗抽柕蹇曞У閻庮剟姊虹紒妯哄妞ゆ劗鍘ч埥澶娢熼柨瀣偓濠氭⒑瑜版帒浜伴柛鎾寸☉閳绘柨顫濋懜纰樻嫼闂佸憡绋戦オ鏉戔枔閺冣偓缁绘稓浠﹂崒姘瀳闂佸磭绮幑鍥嵁鐎n亖鏀介柟閭﹀墯椤斿倹淇婇悙顏勨偓鏍ь潖婵犳艾鍌ㄧ憸蹇涘箟閹绢喗鏅搁柨鐕傛嫹
核心提示: #region 3.2视频预览 #region 3.2.1 Overlay预览模式 // 释 义: overlay预览模式 //Overlay通常被称为重叠页面或者是覆盖层,是一种需要特定的硬件支持的页面,C# 视频监控系列(7):服务器端——封装API(下) [DS40xxSDK.dll] (中),通常 //被用

#region 3.2视频预览

        #region 3.2.1 Overlay预览模式
        //        释  义:  overlay预览模式
        //Overlay通常被称为重叠页面或者是覆盖层,是一种需要特定的硬件支持的页面,通常
        //被用于显示实时视频于主页面之上,而不需要Blit操作到主页面或用任何方法改变主页面的
        //内容。使用该方式进行预览可以提高预览的画质和降低CPU利用率。

        /// <summary>
        /// 3.2.1.1设置视频预览模式SetPreviewOverlayMode
        ///     说  明:  SDK自3.2版本起在部分显卡中实现了HC卡以overlay方式预览的功能(此功
        ///     能不支持与H卡混插的状态下),可以提高预览的画质和降低CPU利用率。当预览画面小
        ///     于704*576时,需要调用该函数来启动overlay模式,如不设置则自动切换到offscreen模式
        ///     进行预览显示,当预览画面大于704*576时,SDK自动切换到overlay模式
        ///
        /// int __stdcall SetPreviewOverlayMode(BOOL bTrue)
        /// </summary>
        /// <param name="bTrue">是否设置overlay预览方式,也适用于MD卡</param>
        /// <returns>0表示显卡支持板卡的overlay预览方式;其他值表示显卡不支持 </returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int SetPreviewOverlayMode(bool bTrue);

        /// <summary>
        /// 3.2.1.2设置overlay关键色SetOverlayColorKey
        ///     注意:需要在StartVideoPreview前调用该函数。
        ///     说  明:  板卡在显示范围小于704*576时,调用SetPreviewOverlayMode可以开启overlay
        ///     预览模式,需调用SetOverlayColorKey设置overlay关键色;当显示范围大于704*576时,
        ///     板卡自动切换到overlay预览模式,关键色默认设置为RGB(10,10,10),也可调用
        ///     SetOverlayColorKey修改关键色。在这两种情况下,都需要将显示窗口的底色设置为和关键
        ///     色相一致。否则图像将难以显示。
        ///    
        ///
        /// int __stdcall SetOverlayColorKey(COLORREF DestColorKey)
        /// </summary>
        /// <param name="DestColorKey">overlay关键色参数(RGB(*,*,*))</param>
        /// <returns>成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int SetOverlayColorKey(int DestColorKey);
        //public static extern int SetOverlayColorKey(Color DestColorKey);

        /// <summary>
        /// 3.2.1.3恢复当前丢失的表面RestoreOverlay
        ///     说  明:  恢复当前丢失的表面,例如:当系统按下CTRL+ALT+DEL时系统的OVERLAY
        ///     表面会被强制关闭,调用该函数可以恢复OVERLAY表面
        ///
        /// int __stdcall RestoreOverlay()
        /// </summary>
        /// <returns>成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int RestoreOverlay();

        #endregion

        #region 3.2.2 开启及停止视频预览

        /// <summary>
        /// 3.2.2.1开启视频预览StartVideoPreview
        ///     说  明:  启动视频预览,调用SetPreviewOverlayMode后,可进行overlay模式预览,否则,
        ///     将默认采用offscreen模式预览。当画面大于704*576时,SDK自动切换到overlay预览模式。
        ///
        /// int __stdcall StartVideoPreview(HANDLE hChannelHandle,HWND WndHandle,  RECT *rect,BOOLEAN bOverlay, int VideoFormat, int FrameRate)
        /// </summary>
        /// <param name="hChannelHandle">通道句柄</param>
        /// <param name="WndHandle">显示窗口句柄</param>
        /// <param name="rect">
        ///     显示窗口内的矩形区域
        ///     Rect.right  必须为8的倍数
        ///     Rect.bottom必须为16的倍数
        /// </param>
        /// <param name="bOverlay">是否启用Overlay预览模式</param>
        /// <param name="VideoFormat">视频预览格式(目前无效)</param>
        /// <param name="FrameRate">视频预览帧率(PAL:1-25,NTSC:1-30)</param>
        /// <returns>成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int StartVideoPreview(IntPtr hChannelHandle, IntPtr WndHandle, ref Rectangle rect, bool bOverlay, int VideoFormat, int FrameRate);
        //public static extern int StartVideoPreview(IntPtr hChannelHandle, IntPtr WndHandle, ref RECT rect, bool bOverlay, int VideoFormat, int FrameRate);

        /// <summary>
        /// 3.2.2.2停止视频预览StopVideoPreview
        ///     说  明:  停止视频预览
        ///
        /// int __stdcall StopVideoPreview(HANDLE hChannelHandle)
        /// </summary>
        /// <param name="hChannelHandle">通道句柄</param>
        /// <returns>成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int StopVideoPreview(IntPtr hChannelHandle);

        #endregion

        #region 3.2.3 视频参数的设置及获取

        /// <summary>
        /// 3.2.3.1设置视频参数SetVideoPara
        ///     说  明:  设置视频参数
        ///
        /// int __stdcall SetVideoPara(HANDLE hChannelHandle, int Brightness, int Contrast, int Saturation, int Hue)
        /// </summary>
        /// <param name="hChannelHandle">通道句柄</param>
        /// <param name="Brightness">亮度值(0-255)</param>
        /// <param name="Contrast">对比度(0-127)</param>
        /// <param name="Saturation">饱和度(0-127)</param>
        /// <param name="Hue">色调(0-255)</param>
        /// <returns>成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int SetVideoPara(IntPtr hChannelHandle, int Brightness, int Contrast, int Saturation, int Hue);

        /// <summary>
        /// 3.2.3.2获取视频参数GetVideoPara
        ///     说  明:  获取视频参数
        ///
        /// int __stdcall GetVideoPara(HANDLE hChannelHandle,  VideoStandard_t *VideoStandard, int*Brightness, int *Contrast, int *Saturation, int *Hue)
        /// </summary>
        /// <param name="hChannelHandle">通道句柄</param>
        /// <param name="VideoStandard">视频制式</param>
        /// <param name="Brightness">亮度指针值(0-255)</param>
        /// <param name="Contrast">对比度指针值(0-127)</param>
        /// <param name="Saturation">饱和度指针值(0-127)</param>
        /// <param name="Hue">色调指针值(0-255)</param>
        /// <returns>  成功返回0;失败返回错误号</returns>
        [DllImport("DS40xxSDK.dll")]
        public static extern int GetVideoPara(IntPtr hChannelHandle, VideoStandard_t VideoStandard, out int Brightness, out int Contrast, out int Saturation, out int Hue);

        #endregion

        #endregion

1 2 3 4  下一页

Tags:视频监控 系列 服务器

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接