DirectShow之接口实战篇

DirectShow之接口实战篇
DirectShow之接口实战篇

在正确安装好DirectX SDK后,我们必须设置DirectX SDK的头文件和库文件,使其在Visual Studio的搜索路径内。对于Visual Studio .NET 2003可如下进行设置:菜单→工具→选项→项目→VC++目录,在包含文件中加入D:\DXSDK\Include,在库文件中加入

D:\DXSDK\lib(我的SDK的安装路径是D:\DXSDK):

头文件

文件名称描述

Dshow.h所有的DirectShow应用都必须包含库文件

文件名称描述

Strmiids.lib此库文件中导出类标识(CLSID)和接口标识

(IID),所有的DirectShow应用都必须包含此

文件。

Quartz.lib此库文件中导出函数AMGetErrorText,如果

你的程序中调用了此函数,则必须包含此库

文件。

DirectShow之接口实战篇(一)

现今自己编程做一个多媒体播放工具是一件很令人开心愉悦的事情,但如果使用MediaPlay 控件开发则会受到很多限制,自己的很多好的创意想法都无法或者很难实现,如果利用微软的DirectX接口开发则可以充分的将作者的独特想法付诸于实现,何乐而不为呢!!不过关于DirectShow接口的开发说明文档实在是少之又少,仅有的一些不是英文的就是一些关于理论方面的,真正关于接口实战编程而且是用Delphi开发工具实现的更是凤毛麟角,使很多人都望而却步。在这里,我把我应用Directshow开发的心得以及我搜集到一些资料重新整理编辑出来公布,希望对所有由此兴趣的同仁有所帮助,就算达到了我的目的。废话少说,进入正文。

既然是接口实战篇,就先把一些常用的接口列出来,让大家有一些基本的认识,都是用来做什么的,什么时候我们会需要用到此接口。

IFilterGraph 过滤通道接口

IFilterGraph2 增强的IFilterGraph

IGraphBuilder 最为重用的COM接口,用于手动或者自动构造过滤通道Filter Graph Manager

IMediaControl 用来控制流媒体,例如流的启动和停止暂停等,播放控制接口

IMediaEvent 播放事件接口,该接口在Filter Graph发生一些事件时用来创建事件的标志信息并传送给应用程序

IMediaEventEx 扩展播放事件接口

IMediaPosition 播放的位置和速度控制接口(控制播放位置只能为设置时间控制方式)

IMediaSeeking 另一个播放的位置和播放速度控制接口,在位置选择方面功能较强.设置播放格式,多种控制播放方式.常用的有:(1)TIME_FORMAT_MEDIA_TIME单位100纳秒。(2)TIME_FORMAT_FRAME按帧播放

IBasicAudio 声音控制接口

IBasicVideo 图像控制接口(波特率,宽度,长度等信息)

IVideoWindow 显示窗口控制接口(有关播放窗口的一切控制,包括caption显示,窗口位置控制等)

ISampleGrabber 捕获图象接口(可用于抓图控制)

IVideoFrameStep 控制单帧播放的接口

好了,熟悉了应用DirectShow应用开发常用的接口后,我们就通过一个实例媒体播放器来熟悉掌握这些接口,实例的代码虽然简单,但五脏俱全,功能强大,同时也了解一下应用DirectShow开发一般常用的步骤。

附2:

EC_ACTIVATE 视频窗口被激活或者转为非激活状态

EC_BUFFERING_DATA 过滤图形包含缓冲数据

EC_CLOCK_CHANGED 参考时钟被改变

EC_CLOCK_UNSET 时钟提供者被断开

EC_COMPLETE 所有数据被渲染完毕

EC_DEVICE_LOST 一个即插即用设备被移除或者变为有效.

EC_DISPLAY_CHANGED 显示模式被改变

EC_END_OF_SEGMENT 到达段的末尾.

EC_ERROR_STILLPLAYING 一个异步命令失败

EC_ERRORABORT 一个操作被放弃

EC_EXTDEVICE_MODE_CHANGE 不支持

EC_FULLSCREEN_LOST 一个视频渲染窗口被切换出全屏模式.

EC_GRAPH_CHANGED 过滤器图被改变

EC_LENGTH_CHANGED 源的长度被改变.

EC_NEED_RESTART 过滤器请求过滤图重新开始.

EC_NOTIFY_WINDOW 通报一个视频渲染窗口的过滤器

EC_OLE_EVENT 过滤器传递一个字符串给应用程序。.

EC_OPENING_FILE 过滤图打开一个文件,或者已经完成了打开文件操作

EC_PALETTE_CHANGED 视频调色板被改变.

EC_PAUSED 一个暂停请求被处理.

EC_QUALITY_CHANGE 过滤图为了质量控制丢桢

EC_REPAINT 一个视频渲染器要求重绘.

EC_SEGMENT_STARTED 一个新段开始

EC_SHUTTING_DOWN 过滤器图被关闭

EC_SNDDEV_IN_ERROR 一个音频设备的输入引脚错误.

EC_SNDDEV_OUT_ERROR 一个音频设备的输出引脚错误.

EC_STARVATION 过滤器没有得到足够的数据.

EC_STATE_CHANGE 过滤器图状态改变

EC_STEP_COMPLETE 一个过滤器执行了单桢渐进

EC_STREAM_CONTROL_STARTED 流控制开始命令产生效果.

EC_STREAM_CONTROL_STOPPED 一个流控制的停止命令产生效果

EC_STREAM_ERROR_STILLPLAYING 在流中产生了一个错误,但流还是在运行中.

EC_STREAM_ERROR_STOPPED 一个流因错误而停止

EC_TIMECODE_AVAILABLE 不支持

EC_USERABORT 用户中断回放.

EC_VIDEO_SIZE_CHANGED 本地视频尺寸改变.

EC_WINDOW_DESTROYED 视频渲染器被销毁,或者从过滤器图中移除.

DirectShow之接口实战篇(二)

大体说来,一般使用DirectShow接口编程无非3个步骤,初始化接口,利用接口中的控制函数使用控制操作,最后释放接口。(当然这里假定你已经拥有了directshow.pas等必须单元,如果没有的话请在网上查找或者向我索要)(注:以下变量没有定义,需自己定义使用)1)初始化接口部分

首先,需要定义需要使用的接口变量

GraphBuilder: IGraphBuilder;

MediaControl: IMediaControl;

MediaSeeking: IMediaSeeking;

MediaPosition: IMediaPosition;

MediaEventEx: IMediaEvent;

BasicAudio: IBasicAudio;

BasicVideo: IBasicVideo;

VideoWindow: IVideoWindow;

SampleGrabber: ISampleGrabber;

VideoFrameStep: IVideoFrameStep;

(1)然后需要使用CoCreateInstance函数创建一个Filter Graph Manager 实例,CoCreateInstance(TGUID(CLSID_FilterGraph),nil, CLSCTX_INPROC_SERVER,

TGUID(IID_IGraphBuilder),GraphBuilder)

因为需要抓图使用IsampleGrabber接口,需要创建SampleGrabber实例,var Filter: IBaseFilter; CoCreateInstance(CLSID_SampleGrabber, nil, CLSCTX_INPROC_SERVER,IID_IBaseFilter, Filter); (2) 调用QueryInterface函数获取来获取指针,好以后操作控制

Filter.QueryInterface(IID_ISampleGrabber, SampleGrabber);

GraphBuilder.AddFilter(Filter, 'Grabber');

GraphBuilder.QueryInterface(IID_IMediaControl, MediaControl);

GraphBuilder.QueryInterface(IID_IMediaPosition, MediaPosition);

GraphBuilder.QueryInterface(IID_IMediaSeeking, MediaSeeking);

GraphBuilder.QueryInterface(IID_IMediaEventEx, MediaEventEx);

GraphBuilder.QueryInterface(IID_IVideoFrameStep, VideoFrameStep);

GraphBuilder.QueryInterface(IID_IBasicAudio, BasicAudio);

GraphBuilder.QueryInterface(IID_IBasicVideo, BasicVideo);

GraphBuilder.QueryInterface(IID_IVideoWindow, VideoWindow);

当然为了安全起见,可以对以上每个过程进行是否成功判断,给出信息,否则很有可能出现问题找不到头绪。好了,一切准备成功,就可以进入第三步,开始我们的控制操作了。(3)通过接口提供的函数开始控制

哦,差点忘记一件重要的事情,在上面调用QueryInterface之前,还有两件重要的事情要做,第一,要建立一个Unicode(wide character)字符串,保存文件名。

var _wfile: array[0..MAX_PATH - 1] of wchar;

MultiByteToWideChar(CP_ACP, 0, pChar(播放文件名), -1, @_wfile, MAX_PATH);

然后需要成功RenderFile才可以控制操作GraphBuilder.RenderFile(_wfile, nil);

XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />

当然在显示的时候要把显示窗体和控件关连起来,这里需要通过IvideoWindow接口方法,VideoWindow. put_Owner(Edit1.Handle);

VideoWindow. put_Windows tyle(DSVIDEO_WINDOW_CHILD_STYLE);

VideoWindow.SetWindowPosition(0,0, Edit1.ClientWidth, Edit1.ClientHeight);

得到图象的一些必要信息,使用IbasicVideo接口中的方法,一些变量自己定义,

BasicVideo.GetVideoSize(VideoWidth, VideoHeight);

BasicVideo.get_BitRate(VideoBitRate);

BasicVideo.get_AvgTimePerFrame(PerFrame);

得到当前文件的总时间以及播放时间,需要使用ImediaSeeking接口方法,

MediaSeeking.GetDuration(Duration);//得到总时间

MediaSeeking.GetCurrentPosition(CurrentPos);//得到当前播放时间

也可以通过IMediaSeeking::SetPositions方法设置开始和结束时间。

哦,这里得到的单位好像是毫米级的,可以自己转化为秒级的.

还有,如果想以后能够单帧控制播放,在这里也需要设定播放格式为按帧播放。

MediaSeeking.SetTimeFormat(Time_Format_Frame);

播放,停止,暂停等控制

这些需要使用ImediaControl接口的方法,控制起来很简单,分别为

MediaControl.Play;

MediaControl.Stop;

MediaControl.Pause;

DirectShow之接口实战篇(三)

播放速度的设定

需要使用ImediaPosition的方法。

MediaPosition.put_Rate(1);//正常

MediaPosition.put_Rate(0.25);//慢速

MediaPosition.put_Rate(2);//快速

单帧播放控制

需要使用IvideoFrameStep的方法

VideoFrameStep.Step(1, nil);

音量控制

需要使用IbasicAudio的方法

增加音量:

BasicAudio.get_Volume (&volume);//得到音量

volume:= volume +volumestep;

BasicAudio.put_Volume (volume);//增加一定的音量的分贝

减小音量:

BasicAudio.get_Volume (&volume); //得到音量

volume:= volume -volumestep;

BasicAudio.putVolume (volume); //减小一定音量的分贝

显示放大缩小控制

只需改变Edit1的大小,然后使用IvideoWindow接口方法即可

VideoWindow.SetWindowPosition(0, 0, Edit1.Width, Edit1.Height);

单帧捕获,抓图

其实很多接口都提供了此功能,但是我更倾向于使用IsampleGrabber接口来实现,相对来说,效率高些。

这个控制起来做的工作稍微多些,首先,在打开文件的时候

var MediaType: TAM_MEDIA_TYPE;

ZeroMemory(@MediaType, SizeOf(TAM_MEDIA_TYPE));

MediaType.majortype := MEDIATYPE_Video;//视频流

MediaType.subtype := MEDIASUBTYPE_RGB24;//24位图象

MediaType.formattype := FORMAT_VideoInfo;

SampleGrabber.SetMediaType(MediaType);//关联接口

SampleGrabber.SetBufferSamples(True);

然后在抓图按钮事件中如下操作

var

MediaType: TAM_MEDIA_TYPE;

VideoInfoHeader: TVideoInfoHeader;

BitmapInfo: TBitmapInfo;

Bitmap: HBitmap;

Buffer: Pointer;

BufferSize: Integer;

begin

SampleGrabber.GetConnectedMediaType(MediaType);

ZeroMemory(@VideoInfoHeader, SizeOf(TVideoInfoHeader));

CopyMemory(@VideoInfoHeader, MediaType.PB Format, SizeOf(VideoInfoHeader));

ZeroMemory(@BitmapInfo, SizeOf(TBitmapInfo));

CopyMemory(@BitmapInfo, @VideoInfoHeader.bmiHeader, SizeOf(VideoInfoHeader.bmiHeader));

Bitmap:=CreateDIBSection(0, BitmapInfo, DIB_RGB_COLORS, Buffer, 0, 0); SampleGrabber.GetCurrentBuffer(BufferSize, Buffer);

Image1.Picture.Bitmap.Handle:=Bitmap

end;

即可。

在这里,先总结这么多,希望对大家有所帮助,这些只是DirectX的一个皮毛,它可以实现的功能十分强大,我也只是把我在实际中的遇到的问题总结出来供大家参考,后面的工作还

很多,我想我会逐步的更深入的总结这方面的经验发表出来与大家分享,好了,DirectShow 接口施展篇到这里该完结了,如果大家有补充或者想法,请发表出来以便我总结整理,谢谢大家。

DXGraph.h

DXGraph.cpp

DirectShow之接口实战篇

在正确安装好DirectX SDK后,我们必须设置DirectX SDK的头文件和库文件,使其在Visual Studio的搜索路径内。对于Visual Studio .NET 2003可如下进行设置:菜单→工具→选项→项目→VC++目录,在包含文件中加入D:\DXSDK\Include,在库文件中加入 D:\DXSDK\lib(我的SDK的安装路径是D:\DXSDK): 头文件 文件名称描述 Dshow.h所有的DirectShow应用都必须包含库文件 文件名称描述 Strmiids.lib此库文件中导出类标识(CLSID)和接口标识 (IID),所有的DirectShow应用都必须包含此 文件。 Quartz.lib此库文件中导出函数AMGetErrorText,如果 你的程序中调用了此函数,则必须包含此库 文件。 DirectShow之接口实战篇(一) 现今自己编程做一个多媒体播放工具是一件很令人开心愉悦的事情,但如果使用MediaPlay 控件开发则会受到很多限制,自己的很多好的创意想法都无法或者很难实现,如果利用微软的DirectX接口开发则可以充分的将作者的独特想法付诸于实现,何乐而不为呢!!不过关于DirectShow接口的开发说明文档实在是少之又少,仅有的一些不是英文的就是一些关于理论方面的,真正关于接口实战编程而且是用Delphi开发工具实现的更是凤毛麟角,使很多人都望而却步。在这里,我把我应用Directshow开发的心得以及我搜集到一些资料重新整理编辑出来公布,希望对所有由此兴趣的同仁有所帮助,就算达到了我的目的。废话少说,进入正文。 既然是接口实战篇,就先把一些常用的接口列出来,让大家有一些基本的认识,都是用来做什么的,什么时候我们会需要用到此接口。 IFilterGraph 过滤通道接口 IFilterGraph2 增强的IFilterGraph IGraphBuilder 最为重用的COM接口,用于手动或者自动构造过滤通道Filter Graph Manager IMediaControl 用来控制流媒体,例如流的启动和停止暂停等,播放控制接口 IMediaEvent 播放事件接口,该接口在Filter Graph发生一些事件时用来创建事件的标志信息并传送给应用程序 IMediaEventEx 扩展播放事件接口 IMediaPosition 播放的位置和速度控制接口(控制播放位置只能为设置时间控制方式) IMediaSeeking 另一个播放的位置和播放速度控制接口,在位置选择方面功能较强.设置播放格式,多种控制播放方式.常用的有:(1)TIME_FORMAT_MEDIA_TIME单位100纳秒。(2)TIME_FORMAT_FRAME按帧播放 IBasicAudio 声音控制接口

电脑主板接口图解

主板内存插槽、扩展插槽及磁盘接口: DDR2内存插槽 DDR3内存插槽 内存规范也在不断升级,从早期的SDRAM到DDR SDRAM,发展到现在的DDR2与DDR3,每次升级接口都会有所改变,当然这种改变在外型上不容易发现,如上图第一副为DDR2,第二幅为DDR3,在外观上的区别主要是防呆接口的位置,很明显,DDR2与DDR3是不能兼容的,因为根本就插不下。内存槽有不同的颜色区分,如果要组建双通道,您必须使用同样颜色的内存插槽。

目前,DDR3正在逐渐替代DDR2的主流地位,在这新旧接替的时候,有一些主板厂商也推出了Combo主板,兼有DDR2和DDR3插槽。 主板的扩展接口,上图中蓝色的为PCI-E X16接口,目前主流的显卡都使用该接口。白色长槽为传统的PCI接口,也是一个非常经典的接口了,拥有10多年的历史,接如电视卡之类的各种各样的设备。最短的接口为PCI-E X1接口,对于普通用户来说,基于该接口的设备还不多,常见的有外置声卡。

有些主板还会提供迷你PCI-E接口,用于接无线网卡等设备 SATA2与IDE接口

横向设计的IDE接口,只是为了方便理线和插拔 SATA与IDE是存储器接口,也就是传统的硬盘与光驱的接口。现在主流的Intel主板都不提供原生的IDE接口支持,但主板厂商为照顾老用户,通过第三方芯片提供支持。新装机的用户不必考虑IDE设备了,硬盘与光驱都有SATA版本,能提供更高的性能。 SATA3接口 SATA已经成为主流的接口,取代了传统的IDE,目前主流的规范还是SATA 3.0Gb/s,但已有很多高端主板开始提供最新的SATA3接口,速度达到6.0Gb/s。如上图,SATA3接口用白色与SATA2接口区分。 主板其他内部接口介绍:

大金空调接口板用户手册

Dkcom 大金空调机远程监控板 (一拖二) 用 户 手 册 2013年9月修订

大金空调机远程监控板说明书 大金空调机监控接口板是为实现大金空调机计算机监控功能而设计的专门化部件,该接口板向用户提供一个计算机监控接口(RS232/RS485),通过该监控接口用户可获取大金空调机的数据,控制空调机。通过建设空调机集中监控系统,用户可对空调机进行四遥(遥测、遥信、遥调、遥控),实现远程维护。 1、主要功能 (1) 遥信功能 提供空调机的运行状态,包括工作方式、风量设置等; 提供空调机的告警信息。 (2)遥测功能 提供空调机的工作温度设置值; 提供空调机内温度传感器的温度值。 (3)遥调功能 远程设置空调机的工作方式、风量设置、工作温度等。 (4)遥控功能 控制空调机的开机与关机。 (5)本地操作与远程操作并行 用户可通过空调机控制面板的按键操作控制空调机,所有控制结果都能通过监控接口获取;用户还可通过空调机监控接口下达控制命令来控制空调机,所有控制结果同步地在空调机遥控器的LCD上显示出来。 2、监控板端口说明 监控板外形如图一所示: 第1 页共4页

大金空调机远程监控板说明书 RX/B TX/A GND VIN2 VIN1 P2 P1 P2 P1 图一监控板外形及端口示意图 3、通信口连接: ①控制器的通信接口有RS232和RS485两种,用户可以根据实际 需要通过跳线J4、J5自行选择其中一种使用; ②连接方法: 1、VIN2和VIN1接空调室内板的X35插线端子,没有极性。(也可外部供电,8—15V,AC、DC均可) 2、P1、P2接空调机室内外板通信端子座,没有极性。(本控制器为一拖二型,可以接两台空调,地址为连续的两个地址来区分,如控制器板地址设置1时,另一台的地址则为2,如控制器板地址设置2时,另一台的地址则为3,依次类推) 3、RS485通信: RX/B为RS485的(-),TX/A为RS485的(+) 第2 页共4页

利用DirectShow开发自己的filter

学习directshow已经有几天了,下面将自己的学习心得写下来,希望对其他的人有帮助。Filter实质是个COM组件,所以学习开发Filter之前你应该对com的知识有点了解。Com组件的实质是一个实现了纯虚指针接口的C++对象。关于com的东西,这里不多讲。 一给vc配置DirectShow的开发环境 无论开发Filter还是开发Dshow的应用程序都要配置一下开发环境的,其实就是包含一下dshow用到的头文件和动态库。选择Tools菜单下面的Options。在弹出的Option对话框配置如下 图1 添加头文件 选择动态库文件添加到工程中

图2 添加动态库 二创建工程以及Filter的入口函数 创建工程 一般情况下,创建Filter使用一个普通的Win32 DLL项目。而且,一般Filter项目不使用MFC。这时,应用程序通过CoCreateInstance函数Filter实例;Filter与应用程序在二进制级别的协作。另外一种方法,也可以在MFC的应用程序项目中创建Filter。 在vc里新建一个工程,选择win32动态库,如下图 图3 图4

这样生成了一个简单的DLL,只有一个Dllmain入口函数。 下面我要给这个filter添加入口函数了。 Filter是个基于DLL的com组件,所以一般的Filter都要实现下面几个入口函数 首先定义导出函数 要导出这些函数有两种方法,一是在定义函数时使用导出关键字_declspec(dllexport),另外一种方法是在创建DLL文件时使用模块定义文件.Def。使用导出函数关键字_declspec(dllexport)创建MyDll.dll就是在 .h文件中定义定义函数如下: 为了用.def文件创建DLL,往该工程中加入一个文本文件,命名为MyDll.def,再在该文件中加入如下代码: LIBRARY MyFilter.ax EXPORTS DllMain PRIVATE DllGetClassObject PRIVATE DllCanUnloadNow PRIVATE DllRegisterServer PRIVATE DllUnregisterServer PRIVATE 其中LIBRARY语句说明该def文件是属于相应DLL的,EXPORTS语句下列出要导出的函数名称。我们可以在.def文件中的导出函数后加@n,如Max@1,Min@2,表示要导出的函数顺序号,在进行显式连时可以用到它。该DLL编译成功后,打开工程中的Debug目录,同样也会看到MyDll.dll和MyDll.lib文件。 然后要定义这些函数的实现了,其实这些工作dshow的基类里都已经替我们做好了,我们所要做的就拿来用就是了,最重要的三个函数的实现一般如下

35配置管理办法

配置管理办法 文件名称:配置管理管理办法 文件编号:ZHWH-CM-01-2017 文件类别:技术管理 编制部门:北京中航鼎成科技有限公司质量管理部 版本号: A 文件密级:秘密 受控标识:受控 拟制/日期:黄妙然 2017年09月27日 审核/日期:刘晔 2017年10月15日 会签: 批准/日期:杨成 2017年11月1日

修订页

目录 第1章目的和范围 (1) 第2章角色和职责 (1) 第3章定义和术语 (2) 第4章配置库管理及规划 (2) 第5章配置管理流程图及活动说明 (2) 5.1 研发配置管理流程图及活动说明 (2) 第6章度量数据收集 (6) 第7章相关文件和记录 (6)

北京中航鼎成科技有限公司配置管理管理办法 第1章目的和范围 为规范北京中航鼎成科技有限公司在项目生命周期过程中的配置管理活动,确保在项目的整个生命周期中建立和维护项目产品的完整性、正确性、可追溯性和一致性,保证项目过程中配置管理相关工作满足公司质量体系要求,特制定北京中航鼎成科技有限公司配置管理规范。 本文档适用于北京中航鼎成科技有限公司所有项目的配置管理活动。 第2章角色和职责

注1:“配置变更控制”参见《TDCS/CTC综合维护平台产品变更实施细则》,本文不再说明,配置项拟审批原则参见《北京中航鼎成科技有限公司配置项清单》。 第3章定义和术语 (1)基线:BaseLine,就是经过正式评审和认可的工作产品,它是以后进一步开发的基础。基线分为过程基线和交付基线。 (2)配置项:配置是指在项目生命周期各个阶段所产生的各种形式和各种版本的文档、程序及其数据的集合,该集合中的每一个元素称为该配置中的一个配置项。配置项分为基线配置项和非基线配置项。(3)基线配置项:一般组成产品元素的配置项均要定义成基线配置项,如产品需求、设计文件、源代码、测试文件等均要定义成基线配置项,基线发布后所有的变更都要严格按照《北京中航鼎成科技有限公司产品变更实施细则》执行。 (4)非基线配置项:一般非产品组成元素的配置项可以定义为非基线配置项,如项目计划、评审类等。 非本项目控制的工作产品,但为了共享和最新版本的获取,该类元素作为非基线配置项也纳入配置管理库,如外部文件、标准、参考文件、会议纪要、工作报告、过程记录等。 第4章配置库管理及规划 配置库管理及规划如下: 1)研发项目(含工程项目的定制开发):按照产品线进行规划管理; 2)工程项目:按项目管理、工程实施过程两大块进行规划管理; 第5章配置管理流程图及活动说明 5.1 研发配置管理流程图及活动说明 5.1.1研发配置管理流程图

DirectX+9.0b+sdk和OpenCV_1.0和VC6.0配置

OpenCV环境配置步骤 首先声明:我是在WindowsXP下,使用VC++6.0 + sp6编译器,其他的版本我没有试过。 安装DirectX 9.0b sdk和OpenCV_1.0,这是我的搭配,实践过肯定可以说没问题,以后OpenCV肯定会再更新,届时有什么注意的再说。安装最好选择默认的安装目录(另选目录的话环境变量和别人的不一样,工程拷贝给别人的话可能需要调整),directX sdk要带Sample一起安装,因为其中的一些文件在配置OpenCV的时候要用到。 1、安装directX sdk。 2、进入C:\DXSDK\Samples\C++\DirectShow\BaseClasses目录,把这个工程在Debug和Release下编译后,将生成的STRMBASE.lib和strmbasd.lib复制到C:\DXSDK\Lib下面。 1、安装OpenCV后系统变量一般会自动设置,不过还是检查一下,没有的话就要在操作系统环境变量path下添加 C:\Program files\OpenCV\bin。加入后需要注销当前Windows用户(或重启)后重新登陆才生效。(可以在任务管理器里重启explorer.exe) 2、只要在cvaux\include文件夹下的cvaux.h文件,在文件中搜到foreground_regions所在的行,将 CvMemStorage* storage; /*storage for 揻oreground_regions?/ \ CvSeq* foreground_regions /*foreground object contours*/ 中的?改为*就可以了 3、到OpenCV安装目录\_make下找到opencv.dsw并打开 菜单Tools->Options->Directories 选择Library files,在下方填入路径: C:\Program Files\DXSDK\Lib 选择include files,在下方填入路径: C:\Program Files\DXSDK\Include C:\PROGRAM FILES\DXSDK\SAMPLES\C++\DIRECTSHOW\BASECLASSES 选择source files,在下方填入路径: 然后在Debug和Release下全部编译,选择build-> batch build. 在OpenCV/Lib生成所有库文件。 1、配置VC的环境全局设置 菜单Tools->Options->Directories 选择Library files,在下方填入路径: C:\Program Files\OpenCV\lib 选择include files,在下方填入路径: C:\Program Files\OpenCV\cxcore\include C:\Program Files\OpenCV\cv\include C:\Program Files\OpenCV\cvaux\include C:\Program Files\OpenCV\ml\include C:\Program Files\OpenCV\otherlibs\highgui C:\Program Files\OpenCV\otherlibs\cvcam\include 选择source files,在下方填入路径: C:\Program Files\OpenCV\cv\src C:\Program Files\OpenCV\cxcore\src C:\Program Files\OpenCV\cvaux\src C:\Program Files\OpenCV\otherlibs\highgui C:\Program Files\OpenCV\otherlibs\cvcam\src\windows 2、项目设置

实现DirectShow技术开发准备

C#实现DirectShow技术开发准备 时间:2009-10-21 23:45 点击:73次字体:[大中小] DirectShow组件在“C:WINDOWSsystem32”目录下的Quartz.dll动态库中,要使C#代码引用COM对象和接口,必须将COM类型库转换为.NET框架元数据,从而有效地创建一个可以从任何托管语言调用的托管包装。在转换过程中需要使用FrameWork SDK自带的TlbImp命令工具,该命令工具在“D:Program FilesMicrosoft Visual Studio 8SDKv2.0BinTlbImp.exe”目录下(取决于Visual Studio 2005的安装路径)。该命令的使用方法为: TlbImp C:WINDOWSsystem32quartz.dll out:C:WINDOWSsystem32quartzDriectShow.dll 在DOS命令下执行转换成功。 转换完成后需在应用程序引用quartzDriectShow,引用quartzDriectShow.dll组件步骤如下: (1)在Visual Studio 2005开发环境中,选择菜单“项目”/“添加引用”命令,弹出“添加引用”对话框。 (2)选择“浏览”选项卡,通过浏览找到引用quartzDriectShow.dll所在的位置,并引用到程序中来。 (3)最后引入using quartzDriectShow,在程序中可以开发相关多媒体程序了。 开发人员还可以通过编写自己的过滤器扩展DirectShow多媒体支持。下面是DirectShow组件的接口。 l IFilterGraph:过滤通道接口。 l IFilterGraph2:增强的IfilterGraph。 l IGraphBuilder:最为重用的COM接口,用于手动或者自动构造过滤通道Filter Graph Manager。 l IMediaControl:用来控制流媒体(如流的启动和停止暂停等)播放控制接口。 l IMediaEvent:播放事件接口,该接口在FilterGraph发生一些事件时用来创建事件的标志信息并传送给应用程序。 l IMediaEventEx:扩展播放事件窗口。 l IMediaPosition:播放的位置和速度控制接口(控制播放放置只能为设置时间控制方式)。 l IMediaSeeking:另一个播放的位置和播放速度控制接口,在位置选择方面功能较强,设置播放格式。常用的控制播放方式有:TIME_FORMAT_MEDIA_TIME单位100纳秒;TIME_FORMAT_FRAME按帧播放。 l IBasicAudio:声音控制接口。

三维重建模型内窥镜图像综合分析软件产品技术要求

三维重建模型/内窥镜图像综合分析软件产品技术要求 结构组成:产品为单机架构;版本号:V1.0; 本软件以光盘形式交付(光盘包括软件安装包、产品说明书); 软件主要由模型导入模块、患者信息查看模块、器官分类模块、姿态控制模块、摄录模块、操作教程模块组成。 适用范围:适用于符合DICOM标准的CT图像以.rx3d格式存储的三维模型数据和内窥镜影像的导入、显示、叠加查看的操作。 1.1 软件型号规格:RXFQJMR-I 1.2 发布版本 软件发布版本:V1.0 1.3 版本命名规则 软件的完整版本命名由四部分组成,完整版本型号:VX.Y.Z.B ,分类描述如下: 字母V为版本Version的缩写; * X:主版本号,也是发布版本号,表示重大增强类软件更新,初始值为1,当软件进行了重大增强类软件更新,该号码加1; * Y:子版本号,表示轻微增强类软件更新,初始值为0,当软件进行了轻微增强类软件更新,该号码加1; * Z:修正版本号,表示纠正类软件更新,初始值为0,当软件进行了纠正类软件更新,该号码加1; * B:构建号,表示软件编译生成一个工作版本,符合软件更新的定义,初始值为0,当软件进行了构建更新,该号码加1。 2.1 通用要求 2.1.1 处理对象 软件针对腹腔镜影像、软件定义的.rx3d格式的三维数据进行处理。 2.1.2 最大并发数 软件运行的网络环境为单机环境,支持读取影像数据的最大用户数为1。 2.1.3 数据接口 软件通过高清数字视频信号DVI、SDI、VGA接口,与医疗设备进行影像传输,支持模拟视频信号接口。

2.1.4特定软硬件 特定硬件:广播级视频采集卡,支持SDI、VGA、DVI接口,对于非DICOM标准的视频输出的医疗设备,选用支持DirectShow的视频采集卡。 2.1.5 临床功能 登录界面功能: 1)显示登录用户名,密码。 2)密码隐藏功能,点击输入框后面显示按钮可查看登陆密码。 3)点击登录或按键盘Enter键,均可登录。 操作界面功能: 1)文件导入模块:在软件菜单栏点击模型导入按钮,在软件右侧功能栏即显示患者三维模型信息的导入按钮列表。点击三维模型信息按钮可导入相应的三维模型。 2)患者信息录入模块:在软件菜单栏点击患者信息按钮,在软件右侧功能栏即显示三维模型中已存的患者信息(包括姓名、性别、入院编号、主治医师、病例诊断和手术类型),亦可在此对患者信息进行修改或重新录入。 3)三维模型器官分类模块:在软件菜单栏点击器官分类按钮,在软件右侧功能栏即显示器官分类。在此模块中,亦可通过点击代表各器官、组织的各色按钮来控制三维模型各器官、组织的显示或隐藏,以及拖动滑动条调整各器官、组织的透明度。 4)三维模型姿态调整模块:在软件菜单栏点击姿态调整按钮,在软件右侧功能栏即显示三维模型位置操作按钮,含上、下、左、右移动4个按键,远、近移动2个按键和三个可控制X/Y/Z轴的滑动按钮。在此模块可控制三维模型的姿态变换。 5)摄录模块:在软件的菜单栏点击摄录按钮,在软件右侧功能栏即显示录像和截屏按钮,点击录像按钮可录制手术的操作过程,点击截屏按钮可随时截屏,为后期的视频教学保存相关资料。 6)软件使用帮助模块:在软件的菜单栏点击软件使用帮助按钮,在右侧功能栏即显示鼠标和键盘操作的示意图,在主窗口显示操作视频,可观看学习软件快速上手视频。

it运维年终工作总结

it运维年终工作总结 作为整个企业的IT“管家”,首先应该对管理的资产情况了然于胸。比如说: 现在的IT规模是怎样的?网络链路总长是多少?网络设备和服务器的数量、类型各是什么?都是什么品牌的?还有每个服务器上运行的数据库、中间件的类型和数量等等,这些情况都应该一个不漏、有条理地梳理清楚。 搞清楚“有什么”的问题以后,还应该做个比较,目前的资产情况和历年相比有什么变化,是增加还是减少了,这些变动都体现在哪里?这些数据整理出来,一张清晰的“资产图”便被轻松地“绘制”出来了 二、业务构成及分析 一个企业里,最重要的应该就是业务系统的稳定运行和增效。所以IT运维管理员的总结里,必然不能缺少对业务系统保障情况的描述。 首先也应该勾勒出“业务”的大体形象:目前我们所有的业务系统有哪些?哪些是核心的业务,它们在解决何种问题,为用户提供了哪些服务?这些业务又运行在哪些服务器上,它们的运行状态如何…?这样我们先直观地把“业务系统”介绍给大家。 接下来我们可以深入地去剖析一下这些业务的运行状况,比如:我们的业务系统一年中平均每月主干链路的总流量达到了多少?将这些业务流量排名,前几位的是哪些?这些高流量的业务有多少人次在

访问?这些业务的平均无故障运行时间是多少?根据其设计,这些业务的可用性指标达到多少?是远未达到使用预设,差一些到满负荷,还是已经超负荷…等等。还有“变化”的视角是应该一直具备的,还需要与往年比,哪些业务是新增的,这些新增业务的使用情况如何,是用得较多还是较少? 三、事件处理情况 对一年中所做的事件处理情况进行汇总。你是否能说清楚IT部门这一年处理的事件数量有多少?这些事件分类有哪些?哪些是重大事件?这一年里产生过哪些重大的事件?这些重大事件对整个IT系统的影响是什么?是否针对此进行过全面的分析,并给到过改进的意见?采取了哪些措施保障了核心业务的SLA?这些数据也有助于对全年的运维工作进行了解。 四、未来工作开展建议 一份年终总结,除了要说清楚这一年发生的事儿,还应该能对下一年乃至未来几年的工作开展提供客观依据。并且作为一个合格的IT运维管理员,眼界应该更宽一些,除了着眼于本职工作,也应该不断地关注业界的新技术、新趋势,并去分析这些新技术对本企业的IT规划是否会产生影响,可能产生的影响又是什么?结合之前对业务使用情况的统计和分析,你就可以为决策者提供出一些更有意义的信息和建议:未来企业上马一些什么样的IT业务能为企业可持续发展带来先机,哪些IT系统需要改进以满足未来不断增长的需要等等。

基于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下。软件下载地址为 /download/b/6/a/b6ab32f3-39e8-4096-9445-d38e6675de85/dx90bsdk.exe。 然后安装好visual studio 2005。安装完以后我们将进行开发环境的配置。 二、开发环境配置

BL2000-HXK显示接口板使用说明书(SHXK-01.6-0608)

显示接口板使用说明书编码:SHXK-01.6-0606 2006-06-08

目录 一、通用程序507-11.MHX (1) 二、通用程序507-12.MHX (2) 三、广州永日电梯配套程序532_01.MHX/533_01.mhx (3) 四、1位七段码显示接口板程序507_14.MHX (4) 五、上海贝斯特配套程序507_06.MHX (5) 六、江苏康力电梯配套程序507_05.MHX (6) 七、上海贝斯特配套程序514_06.MHX (7) 八、通用程序507_17.MHX (8) 九、江苏康力电梯配套程序507_18.MHX (9) 十、七段码显示接口板[程序507_21.MHX] (10) 十一、通用程序[程序507_22.MHX] (11) 十二、广州永日电梯澳门配套程序533_00.mhx (12) 十三、显示接口板外型尺寸及安装尺寸 (13)

1.1 输出:继电器输出 1.2 端口定义 1.3 设置层站按钮(AN) 系统连接正常后,连续按设置层站按钮,5秒钟后进入设置状态,此时系 统显示部分显示本板的层站地址值。按一次层站按钮,层站地址值加1或连续 按下层站按钮1秒后层站地址值依次加1。松开层站按钮,2秒后写设置并自动 进入正常工作状态。 设置范围为0到64,设置值 = 0,此板为操纵盘显示板,设置值 = 1-64时,此板为呼梯显示板。 1.4 拨码开关

2.1 输出:继电器输出 2.2 端口定义 * 作呼梯显示时为本层到站输出,作操纵盘显示时为到站钟输出 2.3 设置层站按钮(AN) 系统连接正常后,连续按设置层站按钮,5秒钟后进入设置状态,此时系 统显示部分显示本板的层站地址值。按一次层站按钮,层站地址值加1或连续 按下层站按钮1秒后层站地址值依次加1。松开层站按钮,2秒后写设置并自动 进入正常工作状态。 设置范围为0到64,设置值 = 0,此板为操纵盘显示板,设置值 = 1-64时,此板为呼梯显示板。 2.4 拨码开关未用

软件项目管理年度工作总结范文

( 工作总结 ) 单位:_________________________ 姓名:_________________________ 日期:_________________________ 精品文档 / Word文档 / 文字可改 软件项目管理年度工作总结范 文 Annual work summary model of software project management

软件项目管理年度工作总结范文 软件项目管理已经到了学期的最后,我们seed小组的软件项目也已完工,这一个学期真的是获益匪浅! 礼平老师曾经说我既可以走技术路线也可以走管理路线,一切都看我自己。真的很是佩服老师的看人眼光,很犀利。我知道,现在的我不是没有能力去做好,只是自己没有去做,一直在殿外徘徊,不肯付出努力向前迈进。从大一到现在,我的专业技术一直都是我的短板,理由么,很简单,就是因为自己懒,不肯花时间去做。从以前不知道自己想做什么,到现在明确目标,可以说,软件项目管理课程给了我很多灵感,让我从自己纷乱的思绪中看清楚了自己最想要的东西。一直自己很喜欢管理,我会花费很多时间在这上面,从大一到现在一直都是,一直没有改变过。在技术上,我总是给自

己找借口,总是偷懒,但我现在明确了一点,没有技术,就没有管理!脱离技术的管理是不可能的,也是不现实的。在这个行业里,技术是一切的基本,想作工程师也好,想作管理者也好,技术都是起步的根基。而我这次所经历的项目更让我明确了这一点。在这个小项目里,虽然我们两个星期就开发完成了这个软件,并交付使用,但是问题还是很多的。在这么一个小项目里,由于需求、设计、代码、文档产生的问题,每一个看似容易,却都需要实实在在的经验在里面,都需要对业务的熟悉,有语言功底作根基。 在这个项目里,我负责软件配置管理工作,在文档的整理过程中,我仔细看了他们的需求分析,概要设计,数据库设计,模块设计等文档,也参与了风险分析文档的编写,承担了用户手册和项目成本估算的编写。在这个过程中,我明确了技术的实在意义,明确了技术对我的指导作用,同时也明确了自己的学习道路应该怎么走下去! 整个项目进行的过程中,我一直在努力从中学习,我旁听开发组的会议,为组长提供管理意见,为会议、文档制定标准,整个过

基于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。安装完以后我们将进行开发环境的配置。 二、开发环境配置

接口设计模板

<系统名称>接口设计说明书 ****科技有限公司

修改历史

目录 1概述 (1) 2子系统说明1 (1) 2.1接口名NO.1 (1) 2.2接口名NO.2 (1)

1概述 [概述说明本文档的描述的内容、目的、使用场合等。] 2子系统说明1 2.1接口名NO.1 示例如下: 接口功能: 验证用户是否合法。 除部分特别说明不需要用户验证的接口外,此接口必须首先调用,否则会出现“未授权”的异常错误。在验证成功之后才能成功调用其它接口,该接口验证通过的用户信息将保存到IHDUserSession类的实例中,作为其它接口调用的用户信息。 此接口在内部需要通过以下几点的验证: 1.CA验证,验证USBKey是否合法(只有系统策略中设置了需要CA验证选项后才 会进行CA的验证); 2.域用户验证,验证登录用户名和密码是否是域用户,通过Windows集成身份验证 实现; 3.用户数据库合法性验证,验证登录用户是否存在于USERS表中; 4.计算机合法性验证,验证登录计算机是否存在于COMPUTER表中,计算机的验证 通过计算机名,硬盘序列号,网卡物理地址,IP地址这四项的组合进行验证,具 体组合可以系统策略中配置; 5.如果验证未通过,返回false,并在客户端日志中记录登录失败的原因 接口声明: *** 相关数据表: **** 输入参数: **** 输出参数: *** 返回值及异常: 参见错误!未找到引用源。错误!未找到引用源。 返回值不变。 捕获到异常,请对异常进行分析。如果异常类型是***。 2.2接口名NO.2

接口功能: 接口声明: 相关数据表:输入参数: 输出参数: 返回值及异常:

运维项目工作总结参考

运维项目工作总结参考-CAL-FENGHAI.-(YICAI)-Company One1

xxxx运维服务工作总结

目录

1概述 2011年对于XXXX来说是具有历史意义的一年,XXXX成功上线到接入第一个业务系统:集团采购门户系统,揭开了XXXXXXXX认证的一个新的篇章,XXXX 公司作为XXXX的运维服务方,在历史的一年即将过去,通过对XXXX运维工作进行年度总结,从中发现工作中的不足,在以后的工作中逐渐改善。 2运维项目背景 3运维目标 XXXX公司为XXXX系统提供运行维护服务包括,XXXX软件系统、系统相关的主机设备、操作系统、数据库和存储设备的运行维护服务,保证XXXX系统整体的正常运行,降低整体管理成本,提高XXXX系统的整体服务水平。同时根据日常维护的数据和记录,提供XXXX系统的整体建设规划和建议,更好的为XXXX发展提供有力的支持。 同时XXXX公司为XXXX系统提供业务协维服务,包括业务系统接入前期业务支撑、业务系统接入后期业务支撑,为业务系统提供专业的业务指引、开发指引,方便各业务系统快速接入XXXX系统。 XXXX系统的组成主要可分为两类:硬件设备和软件系统。硬件设备包括网络设备、安全设备、主机设备、存储设备等;软件设备可分为操作系统软件、典型应用软件(如:数据库软件、中间件软件等)、业务应用软件等。 XXXX公司通过运行维护服务的有效管理来提升XXXX系统的服务效率,结合用户现有的环境、组织结构、IT资源和管理流程的特点,从流程、人员和技术三方面来规划用户的网络信息系统的结构。将用户的运行目标、业务需求与IT服务的相协调一致。 XXXX公司提供的服务的目标是,对用户现有的XXXX系统基础资源进行监控和管理,及时掌握网络信息系统资源现状和配置信息,反映XXXX系统资源的可用性情况和健康状况,创建一个可知可控的IT环境,从而保证XXXX系统的各类业务应用系统的可靠、高效、持续、安全运行。 4运维人员配备 XXXX运维人员梯队结构 人的因素是决定运维服务好坏的最重要的因素,合理的人力配置能够提高运维的质量和效率,保障运维工作的顺利开展, XXXX公司通过人力资源的整合

可编程器实验板使用说明

可编程实验板使用说明 该可编程器件实验板是以Altera公司的MAX II系列可编程器件 EPM1270T144C5为核心芯片,是一款具有多种外部接口和显示器件的通用数字电路实验平台。直接连接计算机的USB接口即可对其进行编程开发并可以完成普通数字电路实验及数字可编程电路实验。 实验板长24.3CM,宽12.95CM采用FR4玻纤材料制成,环保无公害。实验板底层安装有机玻璃板方便观察实验现象并能有效避免学生在试验中因不慎将PCB板底面接触导电物体而造成的设备损坏。实验板底面的有机玻璃板还能防止学生在实验时不小心被PCB板底面的插接件针脚划伤手。 实验板采用双路电源供电方式,提供DC电源插座供电(满足7~12V直流输入)和USB-B接口电源供电。具有过流、过压和极性反转保护保护功能。 全局时钟提供9种频率可选,具体的频率值可以根据用户需求进行现场设置。输出的频率可以在板子上进行实时选择,并能通过8个LED灯的状态指示当前选择的时钟。 实验板上提供USB-Blaster下载电路。对外接口为USB-B接口。该下载电路可以直接被QuartusII软件提供的驱动程序驱动,并可以直接采用QuartusII 软件下载。提供下载所需的USB连接线。 实验板上包含16路高亮LED灯,这16路LED灯中红、黄、绿、蓝4色LED 灯每种4个交替排列,方便完成十字路口交通灯实验。 实验板包含8个7段数码管并通过扫描接口方式控制,包含1个8×8红绿双色点阵,1602字符液晶模块,包含发声器件模块,可调节声音大小,可关闭声音输出,包含8个独立按键、8个拨码开关和1个4x4矩阵键盘(扫描接口方式)。提供1个PS2 接口支持PS2键盘操作、两个独立的9针串口(DB9)、1个15针VGA接口(DB15)。 实验板包含I2C总线模块,含有I2C接口的温度传感器DS1775模块、E2PROM 模块AT24C02、实时时钟模块DS1338。 实验板提供AD模块和DA模块。AD模块采样12bit分辨率的ADS7816芯片,速度大于200KHz。DA模块采用具有2路模拟电压输出的DA芯片TLV5638,其分辨率为12bit。 可编程芯片的所有IO口均引出到接插件上,便于使用仪表进行测试。 可编程器件EPM1270没有使用的IO口,全部引出作为可扩展的外部接口使用,每组扩展接口提供电源和地接口,便于连接其他扩展模块或自搭电路。产品实物如图1-1所示:

软件项目-配置管理总结-模板

XXX项目 配置管理总结模板 版本:V1.0 XXXX年XX月

1配置管理工作总结 (1) 1.1配置项按计划入库情况 (1) 1.2配置项变更情况 (1) 1.3配置管理工作统计 (1) 2经验教训 (2) 3好的实践 (2) 4对配置管理改进的建议 (2) 5模板补充说明 (2) 5.1关于字体 (2) 5.2关于页眉页脚 (2) 5.3关于图、表 (3)

1 配置管理工作总结 [介绍项目中的配置管理情况,与配置管理计划对比,进行总结,包括进行了什么培训、进行了什么审计、发现问题的情况、问题处理的情况,配置管理的工作量,工具支持、指导情况] 1.1 配置项按计划入库情况 表1-1 1.2 配置项变更情况 表1-2 1.3 配置管理工作统计 [包括进行了什么审计、进行了什么变更等]

[介绍在项目的配置管理中遇到了一些什么问题,并介绍如何解决] 3 好的实践 1、产生较好执行效果的过程或活动;好的方式、方法和技巧,尽可能具体,便于在公 司或其它项目组推广;好的经验 2、列出配置管理推荐出来的项目优秀范例或方法的清单 4 对配置管理改进的建议 [列出对配置管理的改进意见和建议] 5 模板补充说明 5.1 关于字体 ●封面题名项目计划一号黑体 ●大标题 1 项目目标黑体二号 ●一级节标题 1.1质量目标黑体三号 ●二级节标题 1.1.1过程质量黑体四号 ●三级节及以下标题 1.1.1.1测试过程质量黑体小四号 ●正文测试过程质量要求宋体小四号 ●表及表题表1-1 黑体五号 ●英文和数字字体采取Arial 5.2 关于页眉页脚 ●封面:没有页眉页脚; ●版本及目录:页眉为文档名称;页角中的页码采取罗马数字,从Ⅰ开始; ●正文:页眉与版本及目录一致,为文档名称;页码编号采取阿拉伯数字,从1开始。

中文版MeGUI的x264编码配置详细解读

本帖最后由宁战网络于2012-7-30 14:58 编辑 中文版MeGUI的x264编码配置详细解读 有人向往和膜拜科班出身的,这个我同意,但若无视艹根的存在,那么我很生气,往往是民间高手如林,自己何必妄自菲薄。一早我也说过不敢在压制的方向前进,那是因为这是个苦力不讨好的工作,有空我还不如多看看美女…… 只要关注,网络上的东西随处可以学习到,就对这个x264编码配置来说,网络上的资源多如脚毛。我嫉妒恨的是科班出身的总会先天就有优势,民间人士门要蛋定,不要比,不要计较,自己玩自己的,不用理正统不正统。我们的优势在于,科班人士再厉害他也没有拍电影也没做导演也没潜了哪个女优,嘎嘎,扯远了。 本文主要讲解x264编码的设置问题,是对应本人推荐的中文版MeGUI所做的一次详细配置论述,请用英文版的英雄路过不要取笑,也应该不要盲目的路过。我还是传统的图文方式来一起研究,当然我说的不一定对,那是因为网络上也是这么教的,可能一直都错着我也用错的来说,在这次解释中,我会用一些自己理解的来说话,也许更能让民间人士理解。 普及一下别的知识,在各大影视论坛基本不允许发布以RMVB格式的影片,你只要用上x264的编码就意味着你和RMVB说88了。民间人士普遍认为RMVB体积小画面清晰,但科班的人士会用理论的知识告诉你,同样的片源和同样的码率下,x264的mkv绝对比rmvb画质更好,文件更小。这是为什么?你要问这是为什么?那是因为x264的编码机制发挥了无法想像的作用,你只要实践了就会明白这是真的,打住不说了反正就像磁带被光盘取代,windows98被xp顶上。 科班厉害之处是懂得比较多,早前的x264.exe是命令参数实现压制的,DOS级的工具很怕黑的就不要尝试了。GUI,是图形界面操作,适合民间高手使用。曾被科班出身的嘲笑过,说使用MeGU压制的都是水货,嘎嘎,我笑笑不能回答。科班告诉我就这GUI不是只有Me 的,这下你明白没?像ripbot、staxrip 等都是GUI……行了行了,民间人士也不用惭愧,至少MeGUI能自动更新编码,还有汉化版可以用,batch的是高手,不和他们一起玩! 安装MeGUI简体中文版(请回顾本人以前的大作,这里略去几百万字……)仿图挂,可下载 中文版MeGUI的x264编码配置详细解读或是到QQ空间查阅软件下载转到论坛页面以前的中文版本MeGUI太不专业了,直到你碰到我这个民间人士才集合了比较强大的中文版MeGUI,不要怕出错,出错不是你的错。等弄得差不多了可以还原成英文版更新你的编码,更上一层楼,英盲也用英文版,没人敢笑你。 正题: 在MeGUI用内置工具AVS创建一个简单脚本(这里暂时不介绍AVS的各种滤镜使用参数),要求在点击DirectShowsource(手工、专业)能弹出视频预览窗就可以保存AVS了。此时内建的AVS会自动加载到MeGUI 主界面,进入本文主题压制参数x264配置。

相关文档
最新文档