- 博客(13)
- 资源 (28)
- 收藏
- 关注
转载 MFC的CWnd和HWND之间互相转换方法
类是什么就不解释了句柄是一个32位的数,是在WINDOS中的一个资源标示符,相当于c里面的指针.窗口类就是CWnd,窗口句柄就是HWND。CWnd和HWND之间互相转换代码如下: CWnd *pWnd; HWND hWnd; hWnd = pWnd->GetSafeHwnd(); //CWnd->HWND pWnd = CWnd
2012-12-26 20:56:07 4579
原创 如何用DirectShow实现音频采集
现在的所谓多媒体电脑一般都会有声卡(软声卡或硬声卡),有声卡就能进行音频的捕捉。大家一定熟悉Windows自带的附件“录音机”程序,可以通过麦克风进行录音,最终生成一个Wave文件。大家知道,DirectShow对硬件的支持是通过特定的包装Filter来实现的。声卡使用的是Audio Capture Filter,Filter内部使用以waveIn开头的一套API实现(如waveInOpen等)。
2012-12-26 14:06:09 5493 1
转载 CloseHandle(),TerminateThread(),ExitThread()的区别
线程的handle用处:线程的handle是指向“线程的内核对象”的,而不是指向线程本身.每个内核对象只是内核分配的一个内存块,并且只能由内核访问。该内存块是一种数据结构,它的成员负责维护对象的各种信息(eg: 安全性描述,引用计数等)。CloseHandle()在CreateThread成功之后会返回一个hThread的handle,且内核对象的计数加1,Cl
2012-12-22 10:02:09 933
转载 这一夜我们只说CreateCompatibleDC
需要在Windows Mobile和Symbian OS上搭一个抽象层来对GDI有个基本的封装.定义了一个Graphics的类.原意是让他每次画图的时候在memory DC上画,最后update的时候可以整体把Memory DC bitblt到目标HDC上去.下面就是一个简要的initGraphis的函数.粗粗的看好像平平无奇.[cpp] view plainc
2012-12-19 20:34:42 883
原创 VC++如何将缓冲数据写入到位图中
最近用C++做图像方面的处理,发现将缓冲数据写到位图中,对调试有很大的帮助,能够清楚的看见问题出在哪儿。现在将这块的实现代码贴上,希望对大家有所帮助: BITMAPFILEHEADER bfh; BITMAPINFOHEADER bi; bfh.bfType=0x4d42; bfh.bfOffBits=54; bfh.bfSize=320*24
2012-12-19 15:30:11 1107
原创 利用双缓冲技术将位图像素数据写到DIB位图中并在指定的窗口显示(主要使用CreateDIBSection和BitBlt方法)
至于为什么要使用双缓冲技术,大家可以查阅相关的资料,这里我只提一点,就是解决屏幕刷新频繁导致闪烁的问题。下面是相关的代码实现:(这里我保存的DIB位图的大小为320*240,深度为24位)void SaveToBmpAndBlend(BYTE *buffer){ HDC hdc; //获取屏幕显示DC hdc = GetDC(m_hWnd); //创建内存
2012-12-19 15:12:14 2286
转载 十大经典武侠小说
孤枕侧畔,一灯如豆,看尽万千红尘旧事刀枪入梦,剑气漫天,重温多少江湖恩仇 一说起武侠小说,每个像我这么大的男性或是比我小一些的男性都会眉飞色舞的侃上半天,仿佛每个人都是此中高手,但是武侠小说浩如烟海,能称得上作家的也多如牛毛,故高手或是低手之分并不在于看得多少,而在于精的程度。我之所以谈起这些来就不由得总是有些洋洋自得,便是因为我觉得自己看武侠小说既精又多,称得上此中高手,所
2012-12-16 00:31:19 4252
原创 directshow中使用StretchDIBits和AlphaBlend实现ARGB32图片的无损缩放
之前使用StretchDIBits遇到一个很棘手的问题,就是不能处理alpha通道,都会默认填充零,那么这种情况下,都是透明也就不能正常显示特效了。后来查资料,发现了AlphaBlend可以添加透明度,如果源与目的size不同,则会缩放源,将alpha通道写入。直接上核心实现代码:BITMAPINFOHEADER bih; memset( &bih, 0, sizeof( bih ) )
2012-12-13 21:31:59 2542 2
原创 directshow过滤器图表-graph builder使用时的几点注意事项(易犯错误解析)
下面提到的几点注意事项是我用directshow做项目时遇到的问题和解决了这些问题之后相应的理解及心得,希望与正在学习directshow的同伴们互勉,尽量少走点弯路,由于小弟也是新手,菜鸟一个,所以下面提到的一些理解也可能有疏漏之处,还请前辈们不吝赐教。1.尽量不要将不再使用的filter留在过滤器图表中。因为很多莫名其妙的错误都是在这种情况下发生的,具体原因是大家在做directshow开
2012-12-12 01:16:27 1838
原创 directshow使用自定义的filter(多输入,单输出)出现cpu使用率过高的问题,filter的丢帧处理
研究directshow有一段时间了,也该写点心得什么的了。最近写了一个多输入单输出的自定义filter,参考的是sdk的inftee中的例子,调试了很长时间,终于能用了,但是不用不知道一看cpu占用率吓一跳啊。filter的具体设计是这样的:共有5个输入pin,一个输出pin,一个输入pin连接来自摄像头的视频流,它的帧数据交由该输出pin处理;其他四个连接gif流(也可以不连接源,是动态的),
2012-12-12 00:46:20 2520
转载 C++中关于写日志文件Log的方法
目前已经有了很成熟的开源写日志Log的系统,功能也很完善,但是使用起来也比较麻烦。像我有时候只需要一点点小功能,那就不需要费那么大劲儿了。所以我自己弄了一个小函数来实现最最简单的写日志Log的功能,只需记录时间和你需要输出自己加入的内容,比较方便。代码如下:[cpp] view plaincopyvoid WriteLog(char * sz
2012-12-11 22:44:38 2413
转载 关于SendMessage和PostMessage的使用感悟
原文出处:http://blog.csdn.net/ictwangbiao/article/details/8283355 解决程序假死问题,心情大好,故作此文纪念。 在之前关于SampleGrabber的使用文章中用到了SendMessage函数。由于使用Grabber时,会新开一个线程,所以需要与主线程进行通信。我之前在回调函数BufferCB中使用的是SendM
2012-12-11 17:22:02 1516
转载 GetMessage&PeekMessage 和SendMessage&PostMessage
原文出处:http://blog.csdn.net/wangbole/article/details/8107637在Window 下Chromium 利用了MFC 消息循环机制,借此,对MFC中消息获取和投放的几个函数进行总结下:一、GetMessage&PeekMessageGetMessage 函数结构如下:[cpp]
2012-12-11 16:52:52 1206
java高效对象序列化反序列化工具kryo-2.21
2013-11-15
svn安装包(客户端和服务器端)
2012-08-13
cvsnt-server-2.5.05.3489.msi
2012-08-11
cvsnt-server-2.5.05.3489(cvs服务器端)
2012-08-11
java模拟qq多人聊天程序
2011-04-20
注册面板的java(Swing)实现,源码。
2011-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人