- 博客(232)
- 资源 (38)
- 收藏
- 关注
原创 (DirectX系列09)DirectShow EDS应用编码分析
DES (DirectShow Editing Services),是一套基于DirectShow核心框架的编程接口。DES的出现,简化了视频编辑任务,弥补了DirectShow对于媒体文件非线性编辑支持的先天性不足。但是,就技术本身而言,DES并没有超越DirectShow Filter架构,而只是DirectShow Filter的一种增强应用。
2010-11-08 23:50:00 1480
转载 基于DirectShow/DES的MPEG-2音视频编辑软件的实现方案
本文介绍基于DirectShow的DirectShow编辑业务(DES,DirectShow Editing Services)的基本原理,并以实例说明了用DES开发MPEG-2音视频编辑软件的实现方案。主要着重于几项关键技术:Timeline的构建,对编辑结果进行预览和保存功能的实现。
2010-11-08 23:27:00 1481
转载 点对点视频会议程序:VideoNet
该程序可以用于两个人在LAN/Intranet(或者Internet)上进行视频会议。现在有许多视频会议程序,每个都有各自的性能提升技术。主要的问题是视频会议视频帧的尺寸对于传输来说太大。因此,性能依赖于对帧的编解码。我使用快速h263编码库来达到更好的压缩率提高速度。该程序做些小改动也可以在Internet上使用。
2010-11-08 23:16:00 1001
转载 Windows 操作系统页面文件原理
页面文件,是指操作系统反映构建并使用虚拟内存的硬盘空间大小所使用的文件。要整理页面文件,首先将页面文件从原先所在的驱动器移动到其他驱动器,然后对原来驱动器进行整理,最后再将页面文件移回到原驱动器上,此时页面文件就会存放在连续的磁盘空间中了。具体来说,在 windows操作系统下(Windows 2000/XP)pagefile.sys这个文件,它就是系统页面文件(也就是大家熟知的虚拟内存文件),它的大小取决于打开的程序多少和你原先设置页面文件的最小最大值,是不断变化的,有时可能只有几十M,有时则达到600M
2010-10-29 18:40:00 2035
转载 SQL Server 2008开始支持MERGE
merge主要用于两表之间的关联操作 oracle中 merge: 从oracle 9i开始支持merge用法,10g有了完善 create table a (id_ integer,count_ integer); insert into a values(1,3); insert into a values(3,6); create table b (id_ integer,count_ integer); insert into b values(1,7); in
2010-10-27 22:07:00 681
原创 (DirectX系列08)DirectShow WavDest编码分析
在DirectShow 中有很多Samples,WavDest就是其中一个,这个Fliter主要用于将采集到的视频流写入到指定的文件,文件格式是.WAV。
2010-10-27 07:53:00 1856
原创 (DirectX系列07)DirectShow MFC下Filter编码分析
MFC下Filter的编写和Win32下Filter的编写极其相似,但又存在很多不同点,在Win32中需要去实现CreateInstance函数,而在MFC直接用NEW 动态产生,不过这并不代表不需要去维护Filter对象计数,因此在MFC 下Filter中依然需要调用AddRef函数来维护这个平衡;其它还不需要实现注册表注册等功能,如下代码;
2010-10-26 08:01:00 1259
原创 (DirectX系列06)DirectShow 字符叠加Filter编码分析
很多视频播放的软件当中,字幕的处理是免不了的,有些可能本身已经加载到图像当中未做处理,但大部分都是通过字符叠加来进行处理的。DirectShow 的字符叠加Filter在这些软件中都扮演这绝佳的作用。
2010-10-25 07:30:00 2822
转载 static_cast、dynamic_cast、reinterpret_cast、和const_cast
关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。
2010-10-18 07:52:00 629
原创 Windows CE S3C2440A显示驱动编码分析
在Windows CE下显示驱动是一个比较复杂的驱动,不仅仅设计到硬件的操作,还有上层驱动的GDI接口支持,有时候还需要支持DirectDraw等绘图接口。
2010-10-17 11:51:00 1136
原创 快速原型开发模式在实际开发过程中的应用
本文以作者的实践开发经验为主线,从理论和实际的角度探讨快速原型开发模式在实践开发中的应用,并从软件开发的各个角度、各个时期剖析快速开发模式的优缺点和应该注意的问题。
2010-10-17 08:21:00 5379
原创 Windows CE6.0 S3C2440A IIC驱动编码解析
S3C2440A RISC微处理器可以支持多主设备IIC总线串行接口。专用串行总线(SDA)和串行时钟线(SCL)承载总线主机设备和连接IIC总线的外围设备之间的信息。SDA和SCL线都是双向的。
2010-10-14 23:48:00 1763 3
原创 IO_STACK_LOCATION 结构和处理过程
The IO_STACK_LOCATION structure defines an I/O stack location , which is an entry in the I/O stack that is associated with each IRP. Each I/O stack location in an IRP has some common members and some request-type-specific members.
2010-10-03 11:41:00 2449
转载 盗梦空间现实版:Linux正盗走Windows美梦
Linux一直试图在桌面操作系统上与Windows一决高低,但是多年来赢取的市场份额非常有限。事实证明,除去PC桌面,Linux还有很多可 以争取的市场空间。随着近期,诺基亚Maemo与英特尔Moblin项目合并后推出MeeGo操作系统,谷歌Android操作系统在智能手机市场取得的 进展,这些基于Linux平台的自由软件接连迸发,无疑都让人欢欣鼓舞。
2010-09-30 07:43:00 995
原创 (DirectX系列05)DirectShow 视频采集
前几小节陆续介绍了Directsound、Directshow音频处理方面的技术,还没有介绍视频方面的技术,从这节开始介绍视频采集方面的技术。今日刚好就介绍Directshow视频采集技术,其实DirectShow视频采集并不复杂,复杂的部分微软已经帮做好了,只需按照顺序将API连接起来即可,如下所叙述; 系统设备枚举 系统设备枚举器为我们按类型枚举已注册在系统中的Fitler提供了统一的方法。而且它能够区分不同的硬件设备,即便是同一个Filter支持它们。这对那些使用Windows驱动
2010-09-26 07:57:00 1541
原创 Windows CE S3C2440A开机启动滚动条编码分析
和Windows XP一样,Windows CE任然可以绘制美妙的进度条,其实这个操作过程主要是对屏幕缓存进行操作。在S3C2440 CPU BSP代码中已经给出了这段缓冲的地址即IMAGE_FRAMEBUFFER_UA_BASE_eboot,这段缓冲支持的视频编码格式是RGB16,默认颜色为白色,在这个过程当中,并不像EVC一样提供了很多GDI绘图的函数,如绘制线条、矩形等,所有的操作都是从点开始的,由点绘制成线,由线绘制成矩形。可以发现,整个缓冲可以定义为一个二唯数据,每一个元素就是一个点
2010-09-24 20:51:00 925
原创 (DirectX系列04)DirectShow 音频录制
在DirectX的Bin目录下有一个很好的工具-GraphEdit,通过这个工具能够很好的反映音频录制的过程。可以总结一点,DirectShow音频的录制过程就是,枚举、绑定、连接这三个步骤。
2010-09-22 09:46:00 1277
原创 FileDisk 线程方式进行IRP序列化
刚看完FileDisk代码,感受颇多,其中采用线程的方式进行IRP序列化更是让人觉得新鲜.在DDK中一般采用StartIo来进行IRP的序列话,其中在入口函数中加入pDriverObject->DriverStartUp = XXXStartIO即可, 当然也没这么简单,其中还要做写处理.
2010-09-18 17:10:00 1591
转载 FileDisk 源代码
FileDisk 是一个虚拟的磁盘驱动程序,能加载PE:ISO等文件,而且FileDisk代码还提供了应用层程序,具备很好的研究价值.
2010-09-18 16:04:00 2603 1
原创 IT企业之招聘之经历
经过金融风暴后,很多企业都在大张旗鼓的招聘,有些企业启动的很早,广州周立功公司9月6号就开始启动,华为、绿盟科技等都相继启动。大家图的就是希望能招聘到优秀的人才,毕竟谁都有先入为主的观念。
2010-09-15 08:44:00 1079
原创 VcdRom 虚拟光驱驱动代码分析
VcdRom 是网上一个爱好者模拟微软虚拟驱动编写一个虚拟光驱程序,近日在研究虚拟磁盘驱动时,无意中看到了VcdRom的虚拟光驱的代码,不禁就开始研究了起来,希望以后能有用武之地。
2010-09-07 23:49:00 1991
原创 Windows CE S3C2440A下按键驱动程序编码分析
这些程序基于TQ2440平台,主要是实现键盘按键的运作,方便起见,只实现了上下左右四个按键。该部分硬件结构图如下; 从硬件图可以看出,按键连接EINT1、EINT2、EINT4和EINT0四个中断引脚。在WindowsCE中,我们只需要处理好这四个中断即可,如下详细介绍; 从这幅图中可以看出,EINT0~4的是由GPF0~4控制的,因此在驱动之前需要先配置这四个GPIO口,使其下降延触发,如下代码; v_pIOPregs->GPFCON &= ~(0x3 GP
2010-09-07 07:39:00 1016 2
原创 (DirectX系列03)DirectShow简单媒体文件播放
Directshow SDK提供了一种开放的开发环境,开发人员可以根据自己的需要制定各种组件。Directshow使用一种滤波器链表(Filter Graph)的模型来管理整个数据流的处理流程,每个部分都是COM组件,形成模块化,参与数据处理的模块就是滤波器(Filter)。 上几周学习DirectSound做了些总结,今天开始学习DirectShow今天主要介绍一个简单的媒体文件播放的程序。 首先来介绍下DirectShow的环境搭建,其实环境的搭建并不是很难,但是下载SD
2010-09-06 22:24:00 1032
原创 (DirectX系列02)DirectSound 录音编码实现
前面已经发布了一篇音频特效播放相关的文章,今天开始学习DirectSound录音编码实现,这是DirectSound中另一个重要的地方。学会之后受益无穷啊!不过DirectSound设备录音编码其实不难,只要是调用Windows API按照一定的顺序和方法都不难。 利用DirectSound录音,有三个非常重要的对象,如下; IDirectSoundCapture:设备对象,根据用户录音的设备创建的设备对象,利用该对象可以获取录音设备的属性。 ID
2010-08-29 21:46:00 3588 1
转载 解析Windows2000的IDT扩展机制
今天我们谈谈Windows 2000下中断机制的扩展,首先申明本文提到的技术并非本人发现的,只不过是我在学习Windows内核过程中的一点心得罢了,目的在于为和我一样刚刚步入Windows底层学习的朋友提供一点实用的资料,同时也顺带记录下自己的学习过程。如果您是Windows Kernel高手,还望有时间能多多指点一下我们这些晚辈;如果您也是初学者,同样欢迎到我们FZ5FZ网站来交流探讨!那好吧,我们就直接进入正题,如果您对中断还不怎么了解,那眼前将是一次激动人心的旅程。
2010-08-29 19:52:00 749
原创 Windows 内核Hook之IOAPIC编程
HOOK系列中,包括应用程序HOOK编程、IDT和IOAPIC编程,其中IOPIC顾名思义I/O ADVANCED PROGRAMMABLE INTERRUPT CONTROLLER中断控制器。在Windows 中有固定的两个地址进行操作,第一、I/O寄存器选择寄存器,其地址是0xfec00000;另一个是I/O窗口寄存器,地址是0xfec00010。这两个地址不像通用寄存器一样能直接访问,必须映射大一片虚拟内存中操作。
2010-08-27 21:04:00 2691
原创 键盘过滤驱动快捷实现
最近在网上无意中看到一段代码,主要讲述的是Windows 下键盘过滤驱动的实现方式,这段代码很有意识,是一种比较好的一种方法,主要将获取的键盘驱动对象的所有分发函数替换,然后另行处理,具体的代码如下; //获取键盘驱动对象 status = ObReferenceObjectByName(&uniNtNameString, OBJ_CASE_INSENSITIVE, NULL, 0,
2010-08-24 21:35:00 1823
原创 Windows CE S3C440A LED驱动编码分析
基于TQ2440硬件平台,该平台处理器S3C2440A,在这个平台当中存在四个LED,用于测试,显示其他硬件运行情况等。LED驱动是一个典型的I/O驱动,简单但健全,是学习Windows CE嵌入式平台的典型例子。首先我们来看看这个平台这这部分电路图吧! 这四个LED分别加了1K偶的电阻,另一端接3.3V电压,接下来看看核心板的接口。 从这里可以看住,这四个LED分别由GPB5、GPB6、GPB7和GPB8控制,都处于B组GPIO口。接下来介绍具体的编
2010-08-22 22:33:00 1583
原创 另类参数对话框编程(回调函数,消息捕捉)
在很多情况下,我们为了获取对话框设置的一些参数,通常都是通过类对象中成员来获取,或者直接获取退出时最后点击的BUTTON的ID号来做一些简单的操作。这样方法虽然稳定,但是有时候未免太带繁琐,近日在看一些书的时候突然看到另外一种好方法,暂且命名为“另类参数对话框编程”,以后想到更好的名字再换吧!
2010-08-22 19:55:00 1098
原创 (DirectX系列01)DirectSound 3D语音特效
大家都有这种感觉,当我们离发声源越来越远的时候,声音越来越小。DirectSound就是模仿这些现象,从数学理论角度加以描述。当然,影响音效的因素不光只有这些,还有如Doppler效应等,但是DirectSound就是这么神奇,它能模仿大多数的声音特效,这就是神奇的3D语音特效,在游戏等方面有着广泛的应用。
2010-08-22 19:33:00 2335 1
原创 avi文件格式详解
AVI是音频视频交错(Audio Video Interleaved)的英文缩写,它是Microsoft公司开发的一种符合RIFF文件规范的数字音频与视频文件格式,原先用于Microsoft Video for Windows (简称VFW)环境,现在已被Windows 95/98、OS/2等多数操作系统直接支持。AVI格式允许视频和音频交错在一起同步播放,支持256色和RLE压缩,但AVI文件并未限定压缩标准,因此,AVI文件格式只是作为控制界面上的标准,不具有兼容性,用不同压缩算法生成的AVI文件,必须
2010-08-07 15:50:00 1321
转载 .Net Compact Framework 资源内存释放
终于开始动手写这篇文章了,有个网友催了我好几次,今天终于可以静下心来完成它。 便于对文章的开展,需要先明确两个概念。 第一个就是很多人用.Net写程序,会谈到托管这个概念。那么.Net所指的资源托管到底是什么意思,是相对于所有资源,还是只限于某一方面资源?很多人对此不是很了解,其实.Net所指的托管只是针对内存这一个方面,并不是对于所有的资源;因此对于Stream,数据库的连接,GDI+的相关对象,还有Com对象等等,这些资源并不是受到.Net管理而统称为非托管资源。而对于内存的释放和回收,系统提供了G
2010-08-04 07:23:00 1096
原创 Windows CE嵌入式导航系统研究(总结)
当前,以具有无线通讯功能的个人数字助理 PDA、手持个人电脑 HPC、交互式网络信息家电、车载多媒体系统为代表的新一轮智能型 3C(Computer、Communication、Consumer)合一的类 PC 嵌入式系统与技术进入了一个崭新的智能化、网络化的发展阶段,类 PC 嵌入式系统与产品的嵌入式操作系统及其应用软件也同时得到了空前的发展与繁荣。同时,社会经济的发展,交通路网通过能力已满足不了交通量增长的需要,交通拥挤和阻塞现象日趋严重,交通污染和事故的问题也日益明显。为解决上述问题,大
2010-08-02 21:52:00 1259
原创 Windows CE嵌入式导航系统研究(硬件设计1)
1.1 ARM微处理器的选择 1.1.1 ARM微处理器系列 ARM 微处理器目前包括下面几个系列,其它厂商基于ARM 架构的处理器,除了具有ARM 架构的共同特点以外,每一个系列的ARM 微处理器都有各自的特点和应用领域。 l ARM7 系列 l ARM9 系列 l ARM9E 系列 l ARM10E 系列 l SecurCore 系列 l Inter 的Xscale l Inter 的StrongARM 其中,ARM7、ARM9、ARM9E 和ARM10E 为4 个通用处理器系列,每
2010-08-02 21:51:00 1477
原创 Windows CE嵌入式导航系统研究(应用程序相关)
1.1.1 TCPMP多媒体播放器 本系统中采用的多媒体播放器是TCPMP,TCPMP播放器播放速度很快且支持多达几十中多媒体格式。TCPMP开源项目,同时支持Windows CE操作系统,而且提供很好的扩展性,例如需要重新编写TCPMP界面只需重新编写interface.plg即可。TCPMP提供全部的源代码,移植非常方便,只需编译后将生成的文件拷贝到目标机器运行即可。TCPMP多媒体播放器界面非常简洁,如图 5.35所示。 图 5.37 TCPMP软件界面 另外、TCPMP还支持应用集成,可以
2010-08-02 21:50:00 6745
原创 Windows CE嵌入式导航系统研究(内核相关)
1.1 嵌入式车载导航系统的软件设计流程 嵌入式车载系统软件主要包括系统内核、驱动程序、应用程序三部分。设计的过程当中,我们采用瀑布模型进行设计,首先制定Windows CE5.0系统内核,再次编写相关设备驱动,最后编写或移植应用程序。 制定内核时,我们采用SunSaung2440 BSP(板级支持包)进行制定,同时提交组建保证系统支持网络通讯、文件系统、CAB包安装、汉语支持等功能。不仅如此,为方便系统应用程序开发,内核制定之后,我们发布相应的SDK。 图 5.1 软件设计流程 1.2 Win
2010-08-02 21:40:00 14591 2
原创 Windows CE嵌入式导航系统研究(硬件设计2)
S3C2440A是一款专用的以手持设备为主而设计的芯片,其特点有低功耗,高速的处理计算能力。为了减少系统的耗费,2440使用了如下组件:2440基于ARM920T内核的,0.13Um cmos 标准单元和存储单元复合体,它功耗及小、简单、稳定的设计非常适合对电源要求较高的产品上。S3C2440A采用ARM920T内核,如图 4.1所示ARM920T的结构图。
2010-08-01 20:49:00 1684
[罗振辉]CuteEditer不错的文本编辑组件
2008-11-06
[罗振辉] VC++与MFC知识
2008-10-27
[罗振辉]数据库原理课程设计PPT
2008-10-27
[罗振辉]Serv-U FTP Server v7.0.0.2 汉化版
2008-10-24
[罗振辉] mp3转化工具mp3转化工具
2008-10-24
[罗振辉] TeachingPlayer50
2008-10-24
[罗振辉]asp.net完全入门(Ebook)
2007-11-25
Windows CE中USB设备驱动开发的一些基础知识.
2010-08-04
Squid Windows版本下载
2008-12-06
[罗振辉]C#聊天程序原代码(附文件传输)
2008-12-05
[罗振辉] XML语言的可视化编辑器
2008-11-05
[罗振辉] eMbedded Visual C++开发入门
2008-11-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人