imos 学习笔记五 抓拍 c#
抓拍
/// <summary>
/// 抓拍
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tsButtonSnatch_Click(object sender, EventArgs e)
{
//检查用户登录状态
if (null == m_player.m_mainForm)
{
MessageBox.Show("请先登录!");
return;
}
//当前用户控制面板
selectedSubCtrl = m_player.m_mainForm.g_userCtrlList[m_player.m_mainForm.tabControl1.SelectedIndex];
if(null != selectedSubCtrl)
{
//当前播放通道
selectedPanel = selectedSubCtrl.imosPlayer.m_playerUnit[PlayerPanel.SelectedIndex];
}
//检查图片保存地址,默认为snatch
UInt32 ulRet = 0;
String picPath = LocalConfig.picSnatchLoc;
if (false == Directory.Exists(LocalConfig.picSnatchLoc))
{
Directory.CreateDirectory(LocalConfig.picSnatchLoc);
}
if(false ==LocalConfig.picSnatchLoc.EndsWith("\\"))
{
//这里要给路径后添加"\"
picPath = LocalConfig.picSnatchLoc.Insert(LocalConfig.picSnatchLoc.Length, "\\");
}
if(null != selectedPanel.channelCode)
{
//单次实时抓图
ulRet = IMOSSDK.IMOS_SnatchOnce(ref selectedSubCtrl.sdkManager.stLoginInfo.stUserLoginIDInfo,//用户登录标识
Encoding.Default.GetBytes(selectedPanel.channelCode),//频道号
Encoding.Default.GetBytes(picPath),//图像文件名
LocalConfig.picFormat);//图像格式
}
if (0 != ulRet)
{
log.Info("抓图失败,错误码为:" + ulRet.ToString());
MessageBox.Show("抓图失败,错误码为:" + ulRet.ToString());
}else
{
MessageBox.Show("抓图成功!图片保存在" + LocalConfig.picSnatchLoc);
}
}
调用sdk中的方法
/// <summary>
/// 单次实时抓拍
/// 图像文件名全部由用户指定
/// </summary>
/// <param name="stUserLoginInfo">用户标识信息</param>
/// <param name="szChannelCode">播放通道号</param>
/// <param name="szFileName">要保存的图像文件名</param>
/// <param name="ulPicFormat">图像格式</param>
/// <returns></returns>
[DllImport("xp_frame.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern UInt32 IMOS_SnatchOnceEx(ref USER_LOGIN_ID_INFO_S stUserLoginInfo, byte[] szChannelCode, byte[] szFileName, UInt32 ulPicFormat);
/// <summary>
/// 启动连续实时抓拍
/// </summary>
/// <param name="stUserLoginInfo">用户登录标识</param>
/// <param name="szChannelCode">播放通道号</param>
/// <param name="szFileName">图像文件存放路径,包括文件名(不带扩展名)</param>
/// <param name="ulPicFormat">图像文件的格式</param>
/// <param name="ulInterval">抓拍间隔,时间为毫秒</param>
/// <returns></returns>
[DllImport("xp_frame.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern UInt32 IMOS_StartSnatchSeries(ref USER_LOGIN_ID_INFO_S stUserLoginInfo, byte[] szChannelCode, byte[] szFileName, UInt32 ulPicFormat, UInt32 ulInterval);
/// <summary>
/// 停止连续实时抓拍
/// </summary>
/// <param name="stUserLoginInfo">用户标识</param>
/// <param name="szChannelCode">播放通道编码</param>
/// <returns></returns>
[DllImport("xp_frame.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern UInt32 IMOS_StopSnatchSeries(ref USER_LOGIN_ID_INFO_S stUserLoginInfo, byte[] szChannelCode);
imos 学习笔记五 抓拍 c#相关推荐
- python函数是一段具有特定功能的语句组_Python学习笔记(五)函数和代码复用
本文将为您描述Python学习笔记(五)函数和代码复用,具体完成步骤: 函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Pyth ...
- Ethernet/IP 学习笔记五
Ethernet/IP 学习笔记五 Accessing data within a device using a non-time critical message (an explicit mess ...
- StackExchange.Redis学习笔记(五) 发布和订阅
StackExchange.Redis学习笔记(五) 发布和订阅 原文:StackExchange.Redis学习笔记(五) 发布和订阅 Redis命令中的Pub/Sub Redis在 2.0之后的版 ...
- 吴恩达《机器学习》学习笔记五——逻辑回归
吴恩达<机器学习>学习笔记五--逻辑回归 一. 分类(classification) 1.定义 2.阈值 二. 逻辑(logistic)回归假设函数 1.假设的表达式 2.假设表达式的意义 ...
- 好程序员教程分析Vue学习笔记五
好程序员教程分析Vue学习笔记五,上次我们学习了Vue的组件,这次我们来学习一下路由的使用.在Vue中,所谓的路由其实跟其他的框架中的路由的概念差不多,即指跳转的路径. 注意:在Vue中,要使用路由, ...
- 【AngularJs学习笔记五】AngularJS从构建项目开始
为什么80%的码农都做不了架构师?>>> #0 系列目录# AngularJs学习笔记 [AngularJs学习笔记一]Bower解决js的依赖管理 [AngularJs学习笔 ...
- ROS学习笔记五:理解ROS topics
ROS学习笔记五:理解ROS topics 本节主要介绍ROS topics并且使用rostopic和rqt_plot命令行工具. 例子展示 roscore 首先运行roscore系列服务,这是使用R ...
- Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )
Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...
- Java学习笔记(五):一张图总结完JVM8基础概念
Java学习笔记(五):一张图总结完JVM8基础概念 引文 最近在学习JVM的相关内容,好不容易把基础概念全部都学了一遍,却发现知识网络是零零散散的.迫不得已,只好再来一次总的归纳总结.为了更好的理解 ...
最新文章
- Asp.Net 之 通过调用 WScript.Shell 启动本地 exe 程序时产生“ automation服务器不能创建对象 ”的错误...
- 云服务器怎么打开_香港云服务器怎么样?
- Linux mount: Structure needs cleaning 错误解决方法
- AcWing 1969. 品种邻近(滑动窗口+枚举)
- mac如何查看ssd寿命_固态硬盘ssd写入量剩余读写次数怎么查
- YOLOv3中Anchor理解
- 怎么把PDF转换成JPG图片?这个方法你了解吗
- 计算机的ps快捷键,ps快捷键常用表
- 面试题33:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 * 例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
- layim之刷新好友列表
- Unity3D for Android 纹理压缩支持
- FIR内插滤波器结构与代码实现
- **Django介绍 和 MVT 模式 MVC 模式对比**
- 《架构师》被孟岩表扬,心里高兴
- 欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。
- linux swift开发环境,Linux平台swift语言开发学习环境搭建
- 2022年双十一百亿补贴,2022年聚划算双11玩法解读
- python展开 c函数中的宏预处理_Linux C语言结构体-学习笔记
- C语言— —编程语言与Hello World!
- 2010破局,联想笔记本用AMD芯
热门文章
- C语言结构体与共用体(上篇) CSDN 花神生涯
- 免费在线PHP加密、解密、混淆源代码工具- toolfk.com
- chrome将html转成excel,怎样在Chrome浏览器中,直接让表格中的数据以Excel文件形式导出|网页转excel表格...
- PAT A1089 Insert or Merge ——秋水共长天一色
- 吐血分享一些优秀的 PDF2Word 工具
- 微信公众号进入H5页面之后,点击返回键一直报404
- 分享119个HTML个性简实模板,总有一款适合您
- SketchUp 2018 适用的联合推拉(超级推拉)扩展插件Joint Push Pull下载
- FBI 树【普及-】
- 虹膜识别论文1:Iris Recognition With Off-the-Shelf CNN Features: A Deep Learning Perspective 2017年 学习心得