mikeahu 发表于 2011-10-21 14:10:31

如何连续获取显示器缓冲区的内容,类似于录屏软件

如题,请各位大侠给点思路啊

jj119120 发表于 2011-10-21 16:07:50

额一定是我的理解能力太差了   竟然没看出LZ说的是什么

mikeahu 发表于 2011-10-24 10:40:46

显示器在显示的时候,会有一个缓冲区,数据会源源不断的发送到显示器中,显示出来,我现在想做一个录屏软件,把缓冲区的数据读取出来,经过转换之后,转换成avi等格式,楼上明白了吗

happytc 发表于 2011-10-24 11:04:43

本帖最后由 happytc 于 2011-10-24 11:25 编辑

回复 3# mikeahu

缓冲区→读取转换→生成avi:录屏

这可是高难度活。

想问的是,你为什么一定要读取缓冲区的数据?在现在的一般都开启的硬件加速的情况下,缓冲区数据很多时候并不是完整的屏幕像素数据,而是仅仅是跟上一刻屏幕比较后变化了的屏幕数据。这样你要由它生成avi,就更需要从当前显卡驱动着手,才能转换成完整的当前屏幕像素数据从而生成avi。

比上面简化一下,你做做DirectDraw加速状态下的视频画面屏图试试。要是不明白我说的啥,那你就用QQ影音随便播放个视频,然后你截下这个视频。
看你用什么方法式获取视频播放的overlay层获取图像数据

asdasdasd 发表于 2011-10-24 11:31:56

有一个自定义函数,但是是截屏的,你可以自己把它们组合一下,呵呵,如果是要很高级的屏幕录像,可能要另外查其他资料,
页: [1]
查看完整版本: 如何连续获取显示器缓冲区的内容,类似于录屏软件