使用视屏捕获

使用视屏捕获
使用视屏捕获

3.2使用视频捕获

3.2.1创建捕获窗体

下面的例子通过使用capCreateCaptureWindow函数来创建一个捕获窗体hWndC = capCreateCaptureWindow (

(LPSTR) "My Capture Window", // 如果是Pop-up窗口的窗口名称

WS_CHILD | WS_VISIBLE, // 窗口类型

0, 0, 160, 120, // 窗口位置和尺寸

(HWND) hwndParent,

(int) nID /* child ID */);

3.2.2连接到一个捕获驱动器

下面举例,如何通过捕获窗口的句柄hWndC连接到MS VIDEO驱动程序上,同时还演示了如何断开连接。使用capDriverDisconnect:

fOK = SendMessage (hWndC, WM_CAP_DRIVER_CONNECT, 0, 0L);

// 或者使用宏连接:

// fOK = capDriverConnect(hWndC, 0);

// 关闭连接

capDriverDisconnect (hWndC);

3.2.3列举安装的捕获驱动程序

使用capGetDriverDescription函数来获得系统已经安装的所有捕获驱动程序的名称和版本。

char szDeviceName[80];

char szDeviceVersion[80];

for (wIndex = 0; wIndex < 10; wIndex++)

{

if (capGetDriverDescription (wIndex, szDeviceName,

sizeof (szDeviceName), szDeviceVersion,

sizeof (szDeviceVersion))

{

// 加入名字到一个已经安装的设备列表中

// 让用户选择一个使用。

}

}

3.2.4获得捕获驱动器的性能参数

WM_CAP_DRIVER_GET_CAPS消息可以返回捕获驱动程序以及其硬件的性能参数。这些信息存放在一个CAPDRIVERCAPS的数据结构中。当你的应用程序的捕获窗口连接到一个新的捕获驱动器后,都会刷新这个CAPDRIVERCAPS数据结构。下面将使用capDriverGetCaps宏来获得捕获设备的性能参数。

CAPDRIVERCAPS CapDrvCaps;

SendMessage (hWndC, WM_CAP_DRIVER_GET_CAPS,

sizeof (CAPDRIVERCAPS), (LONG) (LPVOID) &CapDrvCaps);

// 或者,使用宏来获得驱动器的新能参数

// capDriverGetCaps(hWndC, &CapDrvCaps, sizeof (CAPDRIVERCAPS));

3.2.5获得捕获窗口状态(Status)

下面例子使用SetWindowPos函数区设置捕获窗口的尺寸,这个尺寸的大小是基于输入的视频流大小的。输入视频流的尺寸大小由capGetStatus宏来获得,获得信息放在一个CAPSTATUS的数据结构体中。

CAPSTATUS CapStatus;

capGetStatus(hWndC, &CapStatus, sizeof (CAPSTATUS));

SetWindowPos(hWndC, NULL, 0, 0, CapStatus.uiImageWidth,

CapStatus.uiImageHeight, SWP_NOZORDER | SWP_NOMOVE);

3.2.6显示对话框区设置视频属性

每个捕获驱动器都可以提高3个以上的不同对话框来控制数字视频的特性和捕获处理。下面的例子示范如何显示这些对话框。在显示每个对话框前,该例会调用capDriverGetCaps宏并且检查返回的CAPDRIVERCAPS对象来查看是否可以能够显示特定的对话框。

CAPDRIVERCAPS CapDrvCaps;

capDriverGetCaps(hWndC, &CapDrvCaps, sizeof (CAPDRIVERCAPS));

// 视频源对话框

if (CapDriverCaps.fHasDlgVideoSource)

capDlgVideoSource(hWndC);

// 视频格式对话框

if (CapDriverCaps.fHasDlgVideoFormat)

{

capDlgVideoFormat(hWndC);

// 是否由新的图像尺寸?Are there new image dimensions?

capGetStatus(hWndC, &CapStatus, sizeof (CAPSTATUS));

// 如果有,发送通知给父窗口,告诉它尺寸改变了

}

// 视频显示对话框

if (CapDriverCaps.fHasDlgVideoDisplay)

capDlgVideoDisplay(hWndC);

3.2.7获得和设定视频格式

BITMAPINFO数据结构体可以实现长度可调节地去适应标准压缩的数据格式。因为它的长度可以变,所以在每次获得当前视频格式前,都必须去查询这个结构的长度以及分配的内存大小。该例子使用了capGetVideoFormatSize宏去获得缓存区大小,使用capGetVideoFormat宏区获得当前视频格式。

LPBITMAPINFO lpbi;

DWORD dwSize;

dwSize = capGetVideoFormatSize(hWndC);

lpbi = GlobalAllocPtr (GHND, dwSize);

capGetVideoFormat(hWndC, lpbi, dwSize);

// 访问视频格式,并且释放分配的内存。

应用程序使用capSetVideoFormat宏(WM_CAP_SET_VIDEOFORMAT),把一个BITMAPINFO结构发送给捕获窗口,显示修改。因为视频格式由设备指定的,你的应用程序可以去检查获得的返回值,来知道这个视频格式是不是公开的。

3.2.8预览视频

下面使用capPreviewRate宏来设置预览模式的帧频率为66毫秒/帧,使用capPreview宏在捕获窗口预览图像。

capPreviewRate(hWndC, 66); // 速度,微秒

capPreview(hWndC, TRUE); // 开始预览

capPreview(hWnd, FALSE); // 屏蔽预览

3.2.9允许视频覆盖(Overlay)

下面使用capDriverGetCaps宏去检测这个捕获驱动是否支持覆盖(Overlay)模式,如果支持,就允许视频覆盖模式;

CAPDRIVERCAPS CapDrvCaps;

capDriverGetCaps(hWndC, &CapDrvCaps, sizeof (CAPDRIVERCAPS));

if (CapDrvCaps.fHasOverlay)

capOverlay(hWndC, TRUE);

3.2.10捕获文件命名

下例使用capFileSetCaptureFile宏来指定一个要命名的文件名(mycap.avi),使用capFileAlloc宏去预分配5MB的文件。

char szCaptureFile[] = "MYCAP.AVI";

capFileSetCaptureFile( hWndC, szCaptureFile);

capFileAlloc( hWndC, (1024L * 1024L * 5));

3.2.11格式化音频捕获

下例使用capSetAudioFormat来设置音频格式为11-KHz PCM 8-bit,立体声。

WAVEFORMATEX wfex;

wfex.wFormatTag = WAVE_FORMAT_PCM;

wfex.nChannels = 2; // 使用立体声

wfex.nSamplesPerSec = 11025;

wfex.nAvgBytesPerSec = 22050;

wfex.nBlockAlign = 2;

wfex.wBitsPerSample = 8;

wfex.cbSize = 0;

capSetAudioFormat(hWndC, &wfex, sizeof(WAVEFORMATEX));

3.2.12改变视频捕获设置

下例使用capCaptureGetSetup和capCaptureSetSetup宏来改变捕获速度,从默认值(15帧/秒)到10帧/秒。

CAPTUREPARMS CaptureParms;

float FramesPerSec = 10.0;

capCaptureGetSetup(hWndC, &CaptureParms, sizeof(CAPTUREPARMS));

CaptureParms.dwRequestMicroSecPerFrame = (DWORD) (1.0e6 /

FramesPerSec);

capCaptureSetSetup(hWndC, &CaptureParms, sizeof (CAPTUREPARMS));

3.2.13捕获数据

下例使用capCaptureSequence宏开始视频捕获,使用capFileSaveAs宏从捕获文件拷贝数据到其他文件NEWFILE.AVI中。

char szNewName[] = "NEWFILE.AVI";

// Set up the capture operation.

capCaptureSequence(hWndC);

// Capture.

capFileSaveAs(hWndC, szNewName);

3.2.14加入信息块

如果你想添加其他信息(除了音视频),你可以建一个信息块并把它们插入到一个捕获文件中去。信息块可以包含这个方面的内容。比如版权信息,视频源的ID,外部显示的时间信息。下面的例子保存外部时间信息SMPTE()到一个信息块中,并加入使用capFileSetInfoChunk宏加入到捕获文件中。

// This example assumes the application controls

// the video source for preroll and postroll.

CAPINFOCHUNK cic;

// .

// .

// .

cic.fccInfoID = infotypeSMPTE_TIME;

cic.lpData = "00:20:30:12";

cic.cbData = strlen (cic.lpData) + 1;

capFileSetInfoChunk (hwndC, &cic);

3.2.15在程序中加入回调函数

应用程序可以注册捕获窗口的回调函数,这样就可以把下面的情况通知给应用程序:

●状态变化了

●错误发生了

●视频和音频的缓冲区的数据可以使用了

●在捕获期间,应用程序将yield

下面的例子将创建一个捕获窗口并在应用的消息循环中,注状态、错误、视频流、帧的回调函数。

case WM_CREATE:

{

char achDeviceName[80] ;

char achDeviceVersion[100] ;

char achBuffer[100] ;

WORD wDriverCount = 0 ;

WORD wIndex ;

WORD wError ;

HMENU hMenu ;

// 使用capCreateCaptureWindow宏创建一个捕获窗体.

ghWndCap = capCreateCaptureWindow((LPSTR)"Capture Window", WS_CHILD | WS_VISIBLE, 0, 0, 160, 120, (HWND) hWnd, (int) 0);

// 使用capSetCallbackOnError宏注册错误回调函数

capSetCallbackOnError(ghWndCap, fpErrorCallback);

// 使用capSetCallbackOnStatus宏注册状态回调函数

capSetCallbackOnStatus(ghWndCap, fpStatusCallback);

//使用capSetCallbackOnVideoStream宏注册视频流回调函数

capSetCallbackOnVideoStream(ghWndCap, fpVideoCallback);

//使用capSetCallbackOnFrame宏注册帧回调函数

capSetCallbackOnFrame(ghWndCap, fpFrameCallback);

// 连接到一个捕获驱动器上

break;

}

case WM_CLOSE:

{

//使用capSetCallbackOnFrame宏关闭帧回调函数

// 类似可调用其他存在的回调函数。

capSetCallbackOnFrame(hWndC, NULL);

break;

}

3.2.16创建一个状态回调函数

下面的例子是一个简单的状态回调函数,使用capSetCallbackOnStatus宏来注册这个回调函数。

// StatusCallbackProc: 状态回调函数

// hWnd: 捕获窗体句柄

// nID: 当前状态的状态码

// lpStatusText: 当前状态的文本字符

//

LRESULT PASCAL StatusCallbackProc(HWND hWnd, int nID,

LPSTR lpStatusText)

{

if (!ghWndMain)

return FALSE;

if (nID == 0) { // 清除旧的状态信息

SetWindowText(ghWndMain, (LPSTR) gachAppName);

return (LRESULT) TRUE;

}

// 显示状态ID和状态文本..

wsprintf(gachBuffer, "Status# %d: %s", nID, lpStatusText);

SetWindowText(ghWndMain, (LPSTR)gachBuffer);

return (LRESULT) TRUE;

}

3.2.17创建一个错误的回调函数

下面例子是一个简单的错误回调函数。通过capSetCallbackOnError宏来注册回调。

// ErrorCallbackProc: 错误回调函数

// hWnd: 捕获窗口句柄

// nErrID: 错误代码

// lpErrorText: 关于错误的文本信息

//

LRESULT PASCAL ErrorCallbackProc(HWND hWnd, int nErrID,

LPSTR lpErrorText)

{

if (!ghWndMain)

return FALSE;

if (nErrID == 0) // Starting a new major function.

return TRUE; // 清除旧的错误

// 显示错误ID和错误文本信息

wsprintf(gachBuffer, "Error# %d", nErrID);

MessageBox(hWnd, lpErrorText, gachBuffer,

MB_OK | MB_ICONEXCLAMATION);

return (LRESULT) TRUE;

}

3.2.18创建一个帧回调函数

下面是一个简单的帧回调函数。通过capSetCallbackFrame宏来注册回调函数。

// FrameCallbackProc: 帧回调函数

// hWnd: 捕获窗体句柄

// lpVHdr: 指向一个包含帧信息的数据结构体

//

LRESULT PASCAL FrameCallbackProc(HWND hWnd, LPVIDEOHDR lpVHdr) {

if (!ghWndMain)

return FALSE;

wsprintf(gachBuffer, "Preview frame# %ld ", gdwFrameNum++);

SetWindowText(ghWndMain, (LPSTR)gachBuffer);

return (LRESULT) TRUE ;

}

数字视频采集系统方案

预处理监控设备方案 概述 传统视频监控系统是通过摄像头等这些数据采集前端获取视频图片信息,仅提供视频的捕获、存储和回放等简单的功能;数据吞吐量大造成数据传输和服务器处理数据的压力大;需要大量的人力且准确度并不高;因此,智能视频监控系统应运而生。 本系统在视频采集前端搭建硬件平台,硬件平台中搭载图像处理算法,将摄像头传入的图片筛选出关键信息,通过物联网传入服务器中进行处理。利用算法提取关键信息可以减少传输的数据,从而能提高传输效率并且减小服务器的压力;同时在传输过程中把数据拆分成多个模块并行处理,也可大大提升传输处理速度,达到实时性、高效性的要求。 1硬件前端功能 1)采集图像信息; 2)实现算法对图像的灵活处理,并行高速传输; 3)提取、分类图像关键信息; 4)采用NB-IoT协议实现无线传输 2方案论述 2.1系统构成 图2.1是系统总体结构框图。

图2.1 系统总体结构框图 用CCD进行图像数据采集后,用视频解码芯片进行A/D转换,从模拟视频输入口输入的全电视信号在视频解码芯片内部经过钳位、抗混叠滤波、A/D转换、最后转换成BT.656视频数据流。 本系统中,对图像的处理分为两个阶段,第一个阶段为ZYNQ的双核ARM处理器部分通过算法对图像的处理;第二个阶段为ZYNQ的FPGA部分对数据的打包分类。为了尽可能提高性能并达到实时性要求,我们以ARM为中央处理核心,由FPGA实现系统控制。系统分为处理器模块、FPGA组模块和各总线接口模块等。其中处理器模块包含双核ARM、内存空间以及相应逻辑。处理器作为最小处理单元模块而存在,可以完成相应的处理子任务。 双核ARM作为从CPU做图像的处理(通过算法实现),两个处理模块在系统核心FPGA控制下并行运行。而FPGA作为系统中心,负责两个微处理器互相通信、互相协调以及它们与外界(通过主从总线和互连总线)的信息交换。同时,系统处理子任务可以由FPGA直接派发给处理器。灵活的FPGA体系结构设计是该系统有效性的保证。在实际应用中,可以根据系统的任务,通过配置FPGA控制两个微处理器按流水线方式运行,缩短系统的处理时间。另外,可以通过FPGA的配置扩展双ARM的工作方式,控制它们按MIMD方式并行处理同一输入图像。 最后经过处理过的图像通过NB-IoT协议发送到服务器端。 2.1.1 FIFO机制 为了加快ZYNQ的处理速度,本系统采用同步FIFO高速缓冲方案。FIFO即先进先出存储器, 也是一种专门用来做总线缓冲的特殊存储器。FIFO没有地址

WDM 视频捕获介绍

WDM 视频捕获介绍 -孙涛- 摘要:该文主要提供一些在Win98,win2K及以上操作系统中,进行Windows Driver Model(WDM)视频捕获的相关知识介绍。如果你对WDM视频捕获感兴趣,可以来看看这些东西。欢迎到我的博客https://www.360docs.net/doc/c812487999.html,/suntaoznz看其他文章! 目录 Windos下视频捕获简史 (1) WDM和视频捕获 (1) VfWWDM Mapper (2) WDM 视频捕获结构 (2) DirectShow应用程序 (3) DirectShow Filter Graph (3) WDM数据流 (4) 视频捕获Minidrivers (4) Pins, Streams, Formats (4) 视频流命名约定 (5) DirectShow 视频捕获的接口和属性 (5) 捕获数据流类型 (6) 流输出数据格式 (6) 结束语 Windos下视频捕获简史 VFW(Video For Windows)1.0版本在1992年11月发布,它是为在Windows3.1下将电影最优化地捕获到磁盘上而发布的。从那以后,视频捕获技术就越来越受到关注了。 VFW技术同样受到了很多批评,它捕获的数据保存到磁盘上会占用大量磁盘空间,每秒数据量超过20M,同时需要大量的客户端支撑软件,VFW体系架构上的不足在视频会议应用上和PC/TV应用上被暴露无遗,这样就要求一种新的视频捕获技术来弥补这些不足。 VFW的体系结构缺乏为视频会议,电视浏览,视频区域捕获和VBI(Vertical Blanking Interval)数据流提供强而有效的支持。一些视频卡等设备开发商在设计自己的产品时,针对这些缺陷,对VFW进行了功能扩展。由于没有统一的标准,我们的应用程序在使用这些扩充的功能时,就必须要写一些基于特定硬件的代码。这就意味着当要改变捕获驱动程序时,就必须要对显卡的驱动程序进行修改。 WDM和视频捕获 WDM 视频捕获设计就是为了来解决VFW体系结构中存在的这些问题。WDM视频捕获主要的好处体现在:

交通视频采集系统

交通视频采集系统 第一章建设背景 1.1 视频监控系统现状 1.1.1交通应急指挥中心系统职能 威海市交通运输局作为威海市重要的政府主管部门,主要负责:全市公路、水路和地方铁路交通行业管理和运输组织管理,协调道路、水路运输与其它运输方式的衔接;组织实施上级下达的重点物资运输、紧急客货运输和军事运输。作为市交通运输局下属事业单位,威海市交通应急指挥与信息服务中心将负责本次视频采集系统的建设,必将进一步改善城市整体交通环境,提高城市交通管理水平、提升城市形象和品味。 1.1.2 视频在应急指挥中的作用 威海市交通应急视频监控系统通过视频监控布局,可实时反馈监控区域的图像信息,有利于在执法工作中提高现场即时办公效率,提高事件处理的真实性、准确性、实时性及宏观调配能力。 威海市交通应急指挥与信息服务中心的视频采集系统主要负责通过统一视频监控系统对全市二级以上客运站、客运站周边违章行为高发区域、站外广场等客流密集地进行管理。工作人员可通过图像采集来了解各站点的实时状况,实时传输的图像要保证清晰度高、连贯性高,不能出现拖尾、马赛克等情况,保证交通各职能部门的管理员在第一时间掌握实时的、清晰的高品质视频图像。系统一方面要做到事件即时处理,另一方面也要为交通管理职能部门保留数据信息,这就要求在图像实时采集的同时,根据具体需求进行录像存储。 1.2 视频监控系统存在的问题 部署分散,监控系统资源共享性差。交通、公安、交警、公

路、港航等相关部门的各类监控设备部署较为分散,由于之前缺乏实现信息互联互通的技术手段,加之跨域查阅视频的审批手续繁冗,视频信息共享性差,不能对应急事件即时处理、即时响应。 覆盖面广,但仍存在监控的“死角”。在汽车客运站、码头、机场、旅游集散地、景区景点等违章行为高发地、其他人员密集地仍存在诸多应急指挥监控死角,存在打击黑车黑导、即时处理应急事件的隐患,需增加相应监控点位,以确保应急事件的即时指挥与处理。 1.3 视频监控系统升级建设的必要性 1.3.1信息共享缺乏可信验证技术支持 通过最新的高清识别及可信验证技术,较好地解决部署分散,信息共享性差问题,盘活视频监控系统的存量资产,发挥投资建设的应有效应。本次视频采集系统将通过与公安、交警、公路、港航等相关部门协调,计划接入920路视频资源,主要包括市区主要路段、重点路口、治超点、主要道路、高速公路等,进一步提高各系统视频监控资源在交通应急指挥中心中的作用。 1.3.2 监控死角需自建视频设备扫除 为进一步扫除安全隐患,规交通运营秩序,威海市交通应急指挥中心将增加部分自建视频,解决监控死角问题,进一步提升“文明城市”形象的含金量。威海市交通应急指挥中心计划新增视频80路,主要分布在全市二级以上汽车客运站,包括威海站、荣成站、文登站、乳山站、石岛站以及威海北站汽车站,监控点位包括安检、进站口、出站口、站外广场、车站周边等违章行为高发地、其他人员密集地。本次主要建设容有:社会监控的接入、新建前端设备、立杆(含基础施工、路面开挖恢复等)、借杆、防雷地网施工、取电工程等,根据技术功能要求来进行整体综合

视频捕获

目录 一. 视频捕获快速入门 2 二.基本的捕获设置3 1.设置捕获速度:3 2.设置终止捕获 4 3.捕获的时间限制4 三.关于捕获窗口 4 1.创建一个A VICAP捕获窗口5 2.将一个捕获窗口连接至捕获设备5 3.父窗口与子窗口的交互 5 4.捕获窗口的状态6 四.视频捕获驱动和音频驱动 6 1.视频捕获驱动的性能: 6 2.视频对话框: 6 3.PREVIEW 和OVERLAY模式: 7 4.视频格式7 5.视频捕获设置7 6.声频格式8 五.使用视频捕获8 1.创建捕获窗口(CREATING A CAPTURE WINDOW) 8 2.连接到捕获驱动(CONNECTING TO A CAPTURE DRIVER) 9 3.列举所有已安装的捕获驱动(ENUMERATING INSTALLED CAPTURE DRIVERS) 9

4.得到捕获驱动的性能(OBTAINING THE CAPABILITIES OF A CAPTURE DRIVER) 9 5.得到捕获窗口的状态(OBTAINING THE STATUS OF A CAPTURE WINDOW) 10 6.显示对话框设置视频特征(DISPLAYING DIALOG BOXES TO SET VIDEO CHARACTERISTICS) 10 7.得到和设置视频格式(OBTAINING AND SETTING THE VIDEO FORMA T) 11 8. 预览视频(PREVIEWING VIDEO) 12 9.将视频设置为OVERLAY模式(ENABLING VIDEO OVERLAY) 12 10.命名捕获文件(NAMING THE CAPTURE FILE) 12 11.格式化声频捕获(FORMATTING AUDIO CAPTURE) 12 12.改变视频捕获设置(CHANGING A VIDEO CAPTURE SETTING) 13 13.捕获数据(CAPTURING DA TA) 13 14.增加一个信息块(ADDING AN INFORMA TION CHUNK) 14 15.在程序中加入一个回调函数(ADDING CALLBACK FUNCTIONS TO AN APPLICATION) 14 16.创建一个状态回调函数(CREATING A STATUS CALLBACK FUNCTION) 16 17.创建一个错误回调函数( CREATING AN ERROR CALLBACK FUNCTION) 17 18.创建一个框架回调函数(CREATING A FRAME CALLBACK FUNCTION) 18 六.将四个标准对话框改成函数调用形式18 AUDIOFORMAT对话框19 VIDEOFORMA T对话框19 VIDEOSOURCE对话框20 VIDEO COMPRESSION对话框20

数字化视频采集技术

摘要: 介绍了视频的模式、数字化视频的采样方式以及各种压缩算法。 关键词:视频模型;数字化视频,信号采集;压缩算法 中图分类号:TP37 文献标识码:B 文章编号:1004-373X(2003)09-012-03 随着信息技术的不断发展,人们将计算机技术引入视频采集、制作领域,传统的视频领域正面临着模拟化向数字化的变革,过去需要用大量的人力和昂贵的设备去处理视频图像,如今已经发展到在家用计算机上就能够处理。用计算机处理视频信息和用数字传输视频信号在很多领域有着广泛的应用前景。 1 视频模型 中国和欧洲采用的电视制式是PAL制(逐行倒相制),美国和日本采用的NTSC制,一个PAL信号有25fb/s 的帧率,一个NTSC制信号有30fb/s的帧率。视频信号在质量上可区分为复合视频(Composite),S-Vide,YUV和数字(Digital)4个级别。复合视频,VHS,VHS-C和VideO8都是把亮度、色差和同步信号复合到一个信号中,当把复合信号分离时,滤波器会降低图像的清晰度,亮度滤波时的带宽是有限的,否则就会无法分离亮度和色差,这样亮度的分离受到限制,对色差来讲也是如此。因此复合信号的质量比较一般,但他的硬件成本较低,目前普遍用于家用录像机。S-Vide,S-VHS,S-VHS-C和Hi8都是利用2个信号表现视频信号,即利用Y表现亮度同步,C信号是编码后的色差信号,现在很多家用电器(电视机,VCD,SHVCD,DVD)上的S端子,是在信号的传输中,采用了Y/C独立传输的技术,避免滤波带来的信号损失,因此图像质量较好。YUV视频信号是3个信号Y,U,V组成的,Y是亮度和同步信号,U,V是色差信号,由于无需滤波、编码和解码,因而图像质量极好,主要应用于专业视频领域。数字及同步信号利用4个信号:红、绿、蓝及同步信号加于电视机的显像管,因此图像质量很高。还有一种信号叫射频信号,他取自复合视频信号,经过调制到VHF或UHF(UltraHigh Frequency),这种信号可长距离发送。现在电视台就采用这种方式, 通过使用不同的发射频率同时发送多套电视节目。 模拟视频信号携带了由电磁信号变化而建立的图像信息,可用电压值的不同来表示,比如黑白信号,0 V表示黑,0.7V表示白,其他灰度介于两者之间;数字视频信号是通过把视频帧的每个象素表现为不连续的颜色值来传送图像资料,并且由计算机使用二进制数据格式来传送和储存象素值,也就是对模拟信号进行A/D 转换后得到的数字化视频信号。数字视频信号的优点很多: (1)数字视频信号没有噪声,用0和1表示,不会产生混淆,而模拟信号要求屏蔽以减少噪声。 (2)数字视频信号可利用大规模集成电路或微处理器进行各类运算处理,而模拟信号只能简单地对亮度、对比 度和颜色等进行调整。 (3)数字视频信号可以长距离传输而不产生损失,可以通过网络线、光纤等介质传输,很方便地实现资源共享, 而模拟信号在传输过程中会产生信号损失。 2 数字化视频采集 NTSC和PAL视频信号是模拟信号,但计算机是以数字方式显示信息的,因此NTSC和PAL信号在能被计算机使用之前,必须被数字化(或采样)。一个视频图形适配器(通常叫做抓帧器或视频采集卡)经常被用来数字化视频模拟信号,并将之转换为计算机图形信号。视频信号的数字记录需要大量的磁盘空间,例如,一幅640X480中分辨率的彩色图像(24b/pixel),其数据量约为0.92Mb/s,如果存放在650MB的光盘中,在不考虑音频信号的情况下,每张光盘也只能播放24s,使用如此巨大的磁盘空间存储数字视频,是大多数计算机用户所无法接受的。在这种情况下,将视频带到计算机上,以有效的帧率播放存储信息,是使用计算机处理视频能力的最大障碍,鉴于此种情况,我们采用数据压缩系统和帧尺寸、色彩深度和图像精度折衷的办法,对视频数据进行压缩,以节省磁盘存储空间,数字化视频采集技术也就变成了现实。 数字化视频的过程,通常被叫做数字化视频采集。模拟信号到数字信号的转换中通常用8b来表示,对于专业或广播级的信号转换等级会更高。对于彩色信号,无论是RGB还是YUV方式,只需用24b来表示。因此采样频率的高低是决定数字化视频图像质量的重要指标,如表1所示。

多路视频数据实时采集系统设计与实现

多路视频数据实时采集系统设计与实现 常永亮王霖萱常馨蓉 ( 中国飞行试验研究院陕西西安 710089) ( 贵州省贵阳市花溪区贵州大学贵州省贵阳市 550025) ( 陕西省榆林市榆阳区榆林学院陕西省榆林市 719000) 摘要面对越来越多的实时视频采集、播放的应用,如何能更加方便的操控视频采集,保证流畅的播放效果,成为近几年实时媒体流的一个重要研究方向。本文介绍了视频数据的采集、记 录、编解码、多路视频数据间的切换,基于多网络协议组合下的多媒体流传输,动态切换四路视 频数据实时传输与播放,从而使远端操控、优质播放有了很大的提高。 关键词视频编解码、媒体流、RTP/RTCP协议、组播协议、TCP协议 0.引言 随着信息技术的不断发展,人们将计算机技术引入视频采集、视频处理领域,用计算机处理视频信息和网络传输数字视频数据在很多领域已有广泛的应用,飞机试飞中现如今也大量的应用。 针对目前分散在多处试飞现场视频传入监控大厅后监测设备多而分散的问题,提出了将多处试飞现场视频引入监控大厅后用一台高性能服务器管控,客户端通过网络请求服务器端检测关心的现场场景,达到集中管理优化监控的目的。 视频图像采集的方法较多,基本可分为2大类:数字信号采集和模拟信号采集。前者采用图像采集芯片组完成图像的采集、帧存储器地址生成以及图像数据的刷新;除了要对采集模式进行设定外,主处理器不参与采集过程,我们只要在相应的帧存储器地址取出采集到的视频数据即可得到相应的视频数据,这种方法,无论在功能、性能、可靠性、速度等各方面都得到了显著的提高,但成本高。后者采用通用视频采集卡实现图像的采集,并用软件进行实时编码,其特点是数据采集CPU占用率较高,对处理器的速度要求高,成本低、易于实现,能够满足某些图像采集系统的需要。此系统使用第二类视频采集方法。 如何将各处试飞现场视频信号通过VGA持续接收?传统方式是将模拟的VGA信号引到指定显示器显示,这样即浪费资源且多占空间。多路视频实时采集使用的是VisionRGB- PRO板卡(英国Datapath公司),此卡可同时实时采集两路视频数据,基本达到了本系统的要求,再用一台VGA矩阵切换器将前端数据源的四路视频数据进行人为切换采集,用H.264格式编解码,保存为H.264格式,通过RTP/RTCP 与组播协议将编码后视频流传输给请求客户端,而且可在客户端通过TCP协议选择关心的VGA采集通道。

基于DirectShow视频及图片捕获软件的开发

基于DirectShow视频及图片捕获软件的开发 我们知道目前很多工业相机的图像数据采集都是基于DirectShow的,常见的有映美精等。DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。DirectShow为多媒体流的捕捉和回放提供了强有力的支持。运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。它广泛地支持各种媒体格式,包括Asf、Mpeg、Avi、Dv、Mp3、Wave等等,使得多媒体数据的回放变得轻而易举。另外,DirectShow还集成了DirectX其它部分(比如DirectDraw、DirectSound)的技术,直接支持DVD的播放,视频的非线性编辑,以及与数字摄像机的数据交换。更值得一提的是,DirectShow提供的是一种开放式的开发环境,我们可以根据自己的需要定制自己的组件。 笔者使用visual studio 2005 来开发了基于DirectShow的视频捕获软件,并用开发的软件对映美精相机进行了测试。本软件不但可以实现对相机的视频捕获,而且还可以抓取图像帧。软件运行时自动搜索所连接的相机,预览后可以对相机参数进行设置。下面是软件的主界面。 预览视频后可以对视频格式和图像参数进行设置。开始预览时,捕获的视频是黑白的,我们将颜色空间设置为UYVY即可捕获彩色视频。

下面是捕获的一帧图像,图像质量虽然没有映美精自带的软件效果好,但已经实现了所需各项基本功能,接下来的工作将会进一步提高软件性能。 另外我们还可以捕获视频,点击“捕获视频”按钮,输入要保持的文件名,注意要以.avi后缀结尾,点确定就开始捕获视频。 从我们开发的软件可以看到,映美精的相机能够很好的支持DirectShow的驱动,我们的软件对映美精相机的识别是如此的容易。接下来我们将继续开发基于其它驱动的图像捕获软件,为最终实现在一个软件中识别各种相机而努力。我们将逐步开放我们的源代码,以便更多的同行一起来探讨相机的图像采集技术。 下面是详细的软件开发过程。 一、安装DirectShow和visual studio 2005 首先我们安装DirectShow SDK,它有许多版本,作者使用的是2003年发布的dx90bsdk.exe,安装在D盘的DXSDK下。软件下载地址为 https://www.360docs.net/doc/c812487999.html,/download/b/6/a/b6ab32f3-39e8-4096-9445-d38e6675de85/dx90bsdk.exe。 然后安装好visual studio 2005。安装完以后我们将进行开发环境的配置。 二、开发环境配置

数字视频素材的采集

一、数字视频素材的采集 要实现对节目的非线性编辑,首先必须将记录在录像带上的视音频信号转换成计算机硬盘上存贮的文件,这就是素材的第二次采集,也是进行非线性编辑的第一步。在这个采集过程中必须注意到以下事项: 1.接好硬件设备。 这里的硬件设备即我们所说的实验器材。具体包括以下几个方面的工作:a)将非线性编辑机电源打开,进入 windows 操作系统。 b)把录像机的电源打开,并将录像带(素材带)放置到录像机中。如果用摄像机作为录像播放机使用,请将摄像机置于 VTR 工作模式,即 PLAY 放像状态。 c)用视音频连接线将编辑机和录像机连接起来。如果播放机使用的是 1394 接口,那么请用 1394 线,以达到最好的图像信号质量。如果不是请用复合视音频线。这两种视音频连接线如下图所示。在连接时注意计算机和录像机的接线面板上只有唯一的接口与之对应。 图 1 复合视音频线 图 2 1394 线 2. 采集并保存数字素材。 在设备连接好后,即可进行采集。具体步骤如下:

a)打开编辑编辑软件平台:Premiere。 可以在计算机的桌面上找到如下图标(图 3),双击打开。或者可以在开始菜单中,通过:程序 >> adobe >> premiere6.0 下单击 adobe premiere 6.0 打开。 图 3 桌面上的 premiere 快捷方式 打开 premiere 后,程序会弹出一个对话框,该对话框是让你选择自己的视音频采样和编辑模式。如图4所示。在这其中,我们可以选择Canopus DV–PAL >> standard 44.1KHz 或 48KHz。 需要说明的有几点: 第一、选择 CanopusDV 的原因。我们实验所用到的机器中使用的编辑卡是Canopus 公司生产的 DVStorm 卡,之所以选择这一项是因为它可以使采集到的数字视音频素材能更好的支持编辑机,发挥该机器的整体性能。 第二、选择 PAL 的原因。目前世界上电视节目信号的有两大制式: PAL 和NTSC。N 制主要适用于北美、日本、南美等国家。而 P 制适用于中国、西欧、亚洲、澳大利亚、非洲和南美的一些国家。 第三、选择 44.1KHz 或 48KHz 的原因。首先,这里的 44.1KHz 和 48KHz 是指在信号采集时采样的频率,频率越高,声音的保真度越高,但同时所需的硬盘空间也就越大。其次,人耳能听到的声音频率在 20HZ~20KHz 范围之间,选择44.1KHz 或 48KHz 足以保证声音不失真。 图 4 节目采样和编辑工作模式选择对话框

基于DirectShow视频及图片捕获软件的开发

我们知道目前很多工业相机的图像数据采集都是基于DirectShow的,常见的有映美精等。DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。DirectShow为多媒体流的捕捉和回放提供了强有力的支持。运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。它广泛地支持各种媒体格式,包括Asf、Mpeg、Avi、Dv、Mp3、Wave等等,使得多媒体数据的回放变得轻而易举。另外,DirectShow还集成了DirectX其它部分(比如DirectDraw、DirectSound)的技术,直接支持DVD的播放,视频的非线性编辑,以及与数字摄像机的数据交换。更值得一提的是,DirectShow提供的是一种开放式的开发环境,我们可以根据自己的需要定制自己的组件。 笔者使用visual studio 2005 来开发了基于DirectShow的视频捕获软件,并用开发的软件对映美精相机进行了测试。本软件不但可以实现对相机的视频捕获,而且还可以抓取图像帧。软件运行时自动搜索所连接的相机,预览后可以对相机参数进行设置。下面是软件的主界面。 预览视频后可以对视频格式和图像参数进行设置。开始预览时,捕获的视频是黑白的,我们将颜色空间设置为UYVY即可捕获彩色视频。 下面是捕获的一帧图像,图像质量虽然没有映美精自带的软件效果好,但已经实现了所需各项基本功能,接下来的工作将会进一步提高软件性能。 另外我们还可以捕获视频,点击“捕获视频”按钮,输入要保持的文件名,注意要以.avi后缀结尾,点确定就开始捕获视频。 从我们开发的软件可以看到,映美精的相机能够很好的支持DirectShow的驱动,我们的软件对映美精相机的识别是如此的容易。接下来我们将继续开发基于其它驱动的图像捕获软件,为最终实现在一个软件中识别各种相机而努力。我们将逐步开放我们的源代码,以便更多的同行一起来探讨相机的图像采集技术。 下面是详细的软件开发过程。 一、安装DirectShow和visual studio 2005 首先我们安装DirectShow SDK,它有许多版本,作者使用的是2003年发布的,安装在D盘的DXSDK下。软件下载地址为。 然后安装好visual studio 2005。安装完以后我们将进行开发环境的配置。 二、开发环境配置

视频采集系统

数字图象处理技术在电子通信与信息处理领域得到了广泛的应用,设计一种功能灵活、使用方便、便于嵌入到监控系统中的视频信号采集电路具有重要的实用意义。 在研究基于DSP的视频监控系统时,考虑到高速实时处理及实用化两方面的具体要求,需要开发一种具有高速、高集成度等特点的视频图象信号采集监控系统,为此监控系统采用专用视频解码芯片和复杂可编程逻辑器件(CPLD)构成前端图象采集部分。设计上采用专用视频解码芯片,以CPLD器件作为控制单元和外围接口,以FIFO为缓存结构,能够有效地实现视频信号的采集与读取的高速并行,具有整体电路简单、可靠性高、集成度高、接口方便等优点,无需更改硬件电路,就可以应用于各种视频信号处理监控系统中。使得原来非常复杂的电路设计得到了极大的简化,并且使原来纯硬件的设计,变成软件和硬件的混合设计,使整个监控系统的设计增加柔韧性。 1 监控系统硬件平台结构 监控系统平台硬件结构如图1所示。整个监控系统分为两部分,分别是图象采集监控系统和基于DSP主监控系统。前者是一个基于SAA7110A/SAA7110视频解码芯片,由复杂可编程逻辑芯片CPLD实现精确采样的高速视频采集监控系统;后者是通用数字信号处理监控系统,它主要包括:64K WORD程序存储器、64K WORD数据存储器、DSP、时钟产生电路、串行接口及相应的电平转换电路等。 监控系统的工作流程是,首先由图象采集监控系统按QCIF格式精确采集指定区域的视频图象数据,暂存于帧存储器FIFO中;由DSP将暂存于FIFO中的数据读入DSP的数据存储器中,与原先的几帧图象数据一起进行基于H.263的视频数据压缩;然后由DSP将压缩后的视频数据平滑地从串行接口输出,由普通MODEM或ADSL MODEM传送到远端的监控中心,监控中心的PC机收到数据后进行相应的解码,并将还原后的视频图象进行显示或进行基于WEB的广播。 2 视频信号采集监控系统 2.1 视频信号采集监控系统的基本特性 一般的视频信号采集监控系统一般由视频信号经箝位放大、同步信号分离、亮度/色度信号分离和A/D变换等部分组成,采样数据按照一定的时序和总线要求,输出到数据总线上,从而完成视频信号的解码,图中的存储器作为帧采样缓冲存储器,可以适应不同总线、输出格式和时序要求的总线接口。 视频信号采集监控系统是高速数据采集监控系统的一个特例。过去的视频信号采集监控系统采用小规模数字和模拟器件,来实现高速运算放大、同步信号分离、亮度/色度信号分离、高速A/D变换、锁相环、时序逻辑控制等电路的功能。但由于监控系统的采样频率和工作时钟高达数十兆赫兹,且器件集成度低,布线复杂,级间和器件间耦合干扰大,因此开发和调试都十分困难;另一方面,为达到精确采样的目的,采样时钟需要和输人的视频信号构成同步关系,因而,利用分离出来的同步信号和监控系统采样时钟进行锁相,产生精确同步的采样时钟,成为设计和调试过程中的另一个难点。同时,通过实现亮度、色度、对比度、视频前级放大增益的可编程控制,达到视频信号采集的智能化,又是以往监控系统难以完成的。关于这一点,在监控系统初期开发过程中已有深切体会[1]。 基于以上考虑,本监控系统采用了SAA7110A作为视频监控系统的输入前端视频采样处理器。 2.2 视频图象采集监控系统设计 SAA7110/SAA7110A是高集成度、功能完善的大规模视频解码集成电路[2]。它采用PLCC68封装,内部集成了视频信号采样所需的2个8bit模/数转换器,时钟产生电路和亮度、对比度、饱和度控制等外围电路,用它来替代原来的分立电路,极大地减小监控系统设计的工作量,并通过内置的大量功能电路和控制寄存器来实现功能的灵活配置。

C++摄像头视频捕捉程序

Visual C++编程实现摄像头视频捕捉 摘要:本文主要讲述用Directshow进行视频捕捉(捕捉静态图像)的编程思路,并提供针对摄像头编程的一个视频捕捉类CcaptureVideo和一个示例。 前言 DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。DirectShow为多媒体流的捕捉和回放提供了强有力的支持。用DirectShow开发应用程序,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据, 并且进行相应的后期处理乃至存储到文件中。 DirectShow是基于COM的,为了编写DirectShow应用程序,需要了解COM客户程序编写的基础知识。DirectShow提供了大量的接口,但在编程中发现还是不够方便,如果能构 建一个视频捕捉类把常用的一些动作封装起来,那么就更方便了。 编程思路 为了更加容易建立视频捕捉应用程序,DirectShow提供了一个叫做Capture Graph Builder的对象,Capture Graph Builder提供IcaptureGraphBuilder2接口,该接口可以建立和控制Capture Graph。 建立视频捕捉程序,必须首先获取并初始化IcaptureGraphBuilder2接口,然后选择一个适当的视频捕捉设备。选择好设备后,为该设备创建Capture filter,然后调用AddFilter 把Capture filter添加到Filter Graph。 如果仅仅希望用摄像头来进行实时监控的话,只需要在上面的基础上调用ICaptureGraphBuilder2::RenderStream就可以了: ICaptureGraphBuilder2 *pBuild; // Capture Graph Builder //省略初始化部分代码 IBaseFilter *pCap; // Video capture filter. //省略初始化和添加到Filter Graph部分代码 pBuild->RenderStream(&PIN_CATEGORY_PREVIEW, &MEDIATYPE_Video, pCap, NULL, NULL); DirectShow提供了一个捕捉静态图像的方法:使用Sample Grabber filter。依次按照以下三个步骤就可以了: 第一步, 定义一个类实现Sample Grabber的回调接口IsampleGrabberCB: class CSampleGrabberCB : public ISampleGrabberCB { //在后面提供的类中具体完成 }

从HDMI源捕获实时视频

Epiphan的耐用型,便携式,易于使用的视频采集器系列让您可以捕捉实时视频,无论其来源如何。凭借VGA,DVI / HDMI和SDI 的专用输入,我们的外部USB视频采集卡和内置PCIe视频采集卡可以胜任于任何工作。 支持HDMI捕获,DVI2USB 3.0通过USB 3.0运行,并且向后兼容USB 2.0。我们的PCIe卡DVI2PCIe Duo提供最快的捕获率并支持全高或半高的安装。 高分辨率的HDMI视频捕获 HDMI连接是各种产品的标准配置,从高清电视和蓝光光盘播放器到多媒体电脑,游戏系统等。HDMI设备的视频质量优于过去的模拟设备。 便携式媒体播放器,数码相机,电视,电脑,手机,平板电脑和数码摄像机正在推动HDMI的普及。由于HDMI现在已成为提供视频和音频的大量计算机,相机和移动设备的主要接口,因此用户需要拥有值得信赖的解决方案,以便他们能够从这些设备上的视频源执行HDMI视频捕获。

使用带有HDMI到DVI适配器或电缆的DVI2USB 3.0和DVI2PCIe Duo,可以从所有这些HDMI视频设备进行无损图像捕获。(使用Epiphan Frame Grabbers无法捕获受HDCP保护或加密的受版权保护的知识产权内容)。 将HDMI视频源连接到Epiphan视频采集卡(适配器随DVI2USB 3.0和DVI2PCIe Duo一起提供)后,系统会将视频采集卡识别为应用程序作为高分辨率摄像机。这种方法可以在捕获图像和视频时使用第三方视频编辑,流媒体和录制软件。或者,使用Epiphan的免费捕获工具或SDK,您可以将视频采集器捕获集成到自定义解决方案中,以满足特定应用程序的需求。 HDMI能够承载完整的1080p视频和多声道音频。HDMI和DVI2USB3.0以及DVI2PCIe Duo支持内嵌音频捕获。 DVI2USB 3.0 DVI2USB 3.0是一款高性能USB视频采集卡,可通过HDMI,DVI 或VGA输出端口从任何设备进行无损视频采集。

视频交通流采集系统解决方案

视频交通流信息采集系统解决方案 1概述 视频交通流信息采集系统主要包括视频图像采集设备、视频传输网络、交通流视频检测器等。视频检测器采用虚拟线圈技术,利用边缘信息作为车辆的检测特征,实时自动提取和更新背景边缘,受环境光线变化和阴影的影响较小;同时采用动态窗的方式来进行车辆计数,解决了采用以往固定窗方式进行车辆计数时由于车辆变道而导致的错误、重复计数问题。视频检测器能对视频图像采集设备或交通电视监视系统的视频信号自动进行检测,主要采集道路的微观交通信息如流量、速度、占有率、车辆间距、排队长度等,适用于近景监控模式。 2系统功能及特点介绍 2.1数据接口设计 视频交通流信息采集系统可以通过调用本项目提供的交通流数据统一接入接口,或由本项目提供数据格式标准化及上传程序,将采集到的交通流数据共享给本项目相关系统,以实现视频交通流数据的采集功能。 图1 数据接口设计 2.2系统功能 交通流信息视频检测系统的主要功能如下: (1)车辆检测 系统能够对输入的视频流图像进行车型、车牌等特征检测。

(2)交通流数据采集功能 系统可以采集交通流数据包括交通流量、平均车速、车道占有率、车型、平均车头间距、车辆排队长度、车辆密度、交通流状态等,交通流数据采集时间间隔在1~60分钟任意可调。 图 2 视频交通流检测模块 (3)视频图像跟踪功能 系统能对单路监控前端设备在不同预置位采集的视频图像进行不同区域不同事件的自动检测。一旦检测到特定的交通事件,事件检测器应具有该交通事件的视频图像目标自动跟踪、记录、分析功能。 当输入的视频图像不为设定的预置位的视频图像,系统应能自动不进行事件检测。一旦监控前端设备恢复至设定的预置位,系统应能自动进行事件检测。 (4)事件图像抓拍、录像功能 系统可以根据用户的设置,完成相应的录像和图片抓拍功能。 事件录像可以按摄像机、按事件类型、按时间归档存储在系统的预录像子系统中,由系统服务器进行统一的管理调用。 系统循环进行录像,当发生交通异常事件时,系统能够提供事发之前和之后的3分钟间的录像(可设置)。 系统可通过多种组合查询条件对视频交通流检测所采集的数据进行统计,包括时间-流量统计、时间-平均车速统计、时间-占有率统计、速度-流量统计等;统计结果可导出为

视频采集系统功能手册

关于建筑工地DS-9000视频采集系统操作介绍

(一)建筑工地监控主要操作功能介绍: 本地监控: a.1/4/6/8/9/16画面预览,预览通道顺序可调 b.预览分组切换、手动切换、或自动轮巡预览,自动轮巡周期可 设置 c.预览电子放大 d.屏蔽指定的预览通道 e.视频移动侦测、视频丢失检测、视频遮档检测、视频输入异常 检测 f.视频隐私遮盖 g.云台控制、预置点、巡航、轨迹设置、3D跟踪控制 录像与回放设置: a.录像触发:手动、定时、报警、移动侦测报等 b.按事件(报警输入、移动侦测、智能报警)查询录像文件 c.按通道号、录像类型、文件类型、起止时间等条件进行录像资 料的检索和回放 d.录像文件倒放、暂停、快放、慢放、前跳、后跳鼠标拖动定位 e.同步回放 资料备份: https://www.360docs.net/doc/c812487999.html,B 、eSATA盘进行备份 b.按文件进行批量备份 c.回放时进行剪辑备份 d.报警与异常管理: e.统一管理设备与IP通道的视频遮挡报警、视频移动侦测、视 频丢失报警 f.各种报警可触发弹出报警画面、声音警告等 g.系统运行异常时自恢复 其它功能: a.三级权限用户管理,管理员可创建多个操作用户并设定其权限,

权限可细化到通道 权限说明 “本地配置” 本地查看日志:查看系统的日志、系统信息。 本地参数设置:设置参数、恢复默认参数、导入/导出参数。 本地通道管理:可以“启用”/“禁用”模拟通道,增加/删除IP通道。 本地高级管理:可以进行硬盘管理(初始化、设置硬盘属性)、升级系统程序、清除IO报警输出。 本地关机/重启:可以进行重启/关机操作。 “远程配置” 远程查看日志:远程查看记录在硬盘录像机上的日志。 远程参数设置:远程设置参数、恢复默认参数、导入/导出参数。 远程通道管理:远程“启用”/“禁用“模拟通道,增加/删除IP通道。 远程控制串口:建立透明通道,发送/接收RS232/RS485端口的数据。 远程控制本地输出:可以发送远程按键。 语音对讲:可发起对硬盘录像机的语音对讲。 远程请求报警上传、报警输出:远程可以布防(即要求将报警/异常状态发送给远程客户端)和控制设备报警输出。 远程高级管理:远程进行硬盘管理(初始化、设置硬盘属性)、升级系统程序、清除IO报警输出。 远程关机/重启:远程进行重启/关机操作。 “通道配置” 远程预览:远程预览各通道的现场画面,此权限细化到每一个通道。 本地手动录像:本地手动启动/停止录像,此权限细化到每一个通道。 远程手动录像:远程手动启动/停止录像,此权限细化到每一个通道。 本地回放:本地回放硬盘录像机上记录的录像文件,此权限细化到每一个通道。 远程回放:远程回放、下载硬盘录像机上记录的录像文件,此权限细化到每一个通道。 本地云台控制:本地控制云台,此权限细化到每一个通道。 远程云台控制:远程控制云台,此权限细化到每一个通道。 本地备份:本地备份硬盘录像机上记录的录像文件,此权限细化到每一个通道。具有本地备份权限的通道一定具有本地回放权限。 b.完备的操作、报警、异常及信息日志记录和检索 客户端应用网络功能: a.分级用户管理(二级),管理员可创建多个操作用户并设定其 权限,权限可细化到通道 权限说明: 1)网络预览——权限可细化到通道 2)云镜控制——权限可细化到通道 3)视频调节——权限可细化到通道

反应罐视频采集系统的制作技术

本技术公开了工厂生产技术领域的反应罐视频采集系统,包括反应釜本体、安装于所述反应釜本体视窗上方的IP摄像头、位于IP摄像头一侧的摄像光源以及用于对视窗表面清理的视窗刮刷;所述IP摄像头用于对反应釜本体视窗内部进行拍摄;所述摄像光源用于给所述IP摄像头拍摄时提供辅助光源,本技术通过利用IP摄像头对反应釜内反应过程的拍摄,实现了便捷、按需灵活拍摄,并存储在指定服务器内,后期访问、分析便捷。 技术要求 1.反应罐视频采集系统,其特征在于:包括反应釜本体(1)、安装于所述反应釜本体(1)视 窗上方的IP摄像头(2)、位于IP摄像头(2)一侧的摄像光源(3)以及用于对视窗表面清理的视 窗刮刷(4);所述IP摄像头(2)用于对反应釜本体(1)视窗内部进行拍摄;所述摄像光源(3)用于给所述IP摄像头(2)拍摄时提供辅助光源。 2.根据权利要求1所述的反应罐视频采集系统,其特征在于:所述IP摄像头(2)固定有用于对所述IP摄像头(2)距离视窗高度进行调节的安装架(5)。

3.根据权利要求2所述的反应罐视频采集系统,其特征在于:所述安装架(5)包括与反应釜本体(1)连接的安装法兰(6)、固定在所述安装法兰(6)上的第一丝杆(7)和与所述IP摄像头(2)相固定的连接座(8),所述连接座(8)的底部一侧可转动卡接有第一调节丝帽(9),所述第一调节丝帽(9)螺纹连接在所述第一丝杆(7)表面,且所述第一丝杆(7)的上端贯穿所述连接座(8)的上下两侧。 4.根据权利要求3所述的反应罐视频采集系统,其特征在于:所述摄像光源(3)固定在灯座(10)的一端上,且所述灯座(10)的另一端与所述连接座(8)相固定。 5.根据权利要求3所述的反应罐视频采集系统,其特征在于:所述安装法兰(6)的表面与所述第一丝杆(7)对应设置有第二丝杆(11),所述第二丝杆(11)上插接有电机座(12),所述第二丝杆(11)上螺纹连接有第二调节丝帽(13),所述第二调节丝帽(13)与所述电机座(12)的底部可转动卡接,所述电机座(12)的底部依次固定有齿轮箱(14)和伺服电机(15),所述齿轮箱(14)的底部一侧设置有与所述视窗刮刷(4)相匹配的连接接头(16)。 6.根据权利要求1所述的反应罐视频采集系统,其特征在于:所述视窗刮刷(4)包括可转动夹持在视窗中部的连接轴杆(17)以及贴附在视窗表面的刮片(18),所述刮片(18)的一端与所述连接轴杆(17)相固定。 7.根据权利要求1所述的反应罐视频采集系统,其特征在于:所述IP摄像头(2)连接有开关信号采集模块(19),所述IP摄像头(2)通过开关信号采集模块(19)分别与视频采集软件(20)以及摄像光源(3)相连接。 技术说明书 反应罐视频采集系统 技术领域 本技术涉及工厂生产技术领域,特别是涉及反应罐视频采集系统。 背景技术

Visual C++编程实现摄像头视频捕捉要点

前言 DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。DirectShow为多媒体流的捕捉和回放提供了强有力的支持。用DirectShow开发应用程序,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。 DirectShow是基于COM的,为了编写DirectShow应用程序,需要了解COM客户程序编写的基础知识。DirectShow提供了大量的接口,但在编程中发现还是不够方便,如果能构建一个视频捕捉类把常用的一些动作封装起来,那么就更方便了。 编程思路 为了更加容易建立视频捕捉应用程序,DirectShow提供了一个叫做Capture Graph Builder的对象,Capture Graph Builder提供IcaptureGraphBuilder2接口,该接口可以建立和控制Capture Graph。 建立视频捕捉程序,必须首先获取并初始化IcaptureGraphBuilder2接口,然后选择一个适当的视频捕捉设备。选择好设备后,为该设备创建Capture filter,然后调用AddFilter把Capture filter添加到Filter Graph。 如果仅仅希望用摄像头来进行实时监控的话,只需要在上面的基础上调用 DirectShow提供了一个捕捉静态图像的方法:使用Sample Grabber filter。依次按照以下三个步骤就可以了: 第一步, 定义一个类实现Sample Grabber的回调接口IsampleGrabberCB:

相关文档
最新文档