150分求“每秒抓超过7次的整屏图像到文件中(仅800*600*16M色就可以了)”(50分)

  • 主题发起人 主题发起人 wql
  • 开始时间 开始时间
看看你装的是什么版本 . 我用的是delphix2000
 
我的是delphiX2000 spt4 版本, lock方法有2个声明的. 有一个是不带 rect参数.,
 
delphix2000在哪里有啊?
还要SP4?
我看到它的主页上面只有6.0啊.....
 
呵呵,看错了......
已经下载delphix2000...
测试中..........
 
有没有试好啊。
 
测试了.......
在98下面不行,在2000下面还可以.
显示卡为SIS6326的时候,速度为每秒6帧左右.
显示卡为M64的时候,速度能达到每秒20帧以上,
这个速度相当不错了.
不过,没有搞清楚"关键帧"是怎么回事情.....
现在没看搞这个了,正在打算修改VNC,它的速度那才叫快啊,呵呵.....
 
好啊。 什么时候把VNC的hook delphi的源码给我分享一下啊。 至于关键桢就是用很多桢和这个桢运算。以减小数据量。
 
有谁愿意教我。共同讨论这个东东。请与我联系。QQ: 50165350 附加:delphi好友
 
我试了一下用UDP。可是抓一幅图要1秒钟以上。好慢的。谁有办法解决。有兴趣研究的请
与我联系。QQ:50165350 须注明:delphi编程。
 
看看上面的代码吧.再在论坛里面搜索一下.
 
To Xwings:
还是没有找到delphiX2000 spt4 ,请问哪里有下载?
 
dfw的资源交流站在哪里.? 我上载上去吧.
 
采用DirectX方式与GDI方式抓屏的效率是一样的,因为他们的机制都是从现存转移数据至主
存,所以不用费力一定要采用DirectX抓。当然,用DirectX在现存里处理图象是飞快的。
另外,我按照LoveJingTao提出的最小矩形法的思路,Wings的RLE压缩模块,用Delphi做了远
程抓屏程序。很快!在10M的局域网内,PIII766/128M/ATI 4M的机器上,达到6~7桢/秒。(
当然这个速度是动态的)。
不过,还要考虑到满屏都有变化的情况采用不同的办法,和预处理技术,这样可以达到更快的效果。
在网络传输上依然采用大家公认的UDP,速度快,就是爱丢桢,所以自己对图象队列编序,
加上1次握手,就万无一失了。
对于,抓屏我依然想继续提出问题。有哪位大侠能提供在现卡RAM里面(用DIrectX),比较
变化的区域的方法,我只提出个想法,不知谁能做?
 
To xWings:
抓过来的局部图象,在一个TImage构件中.Canvas.Draw()时候,整个屏幕都在抖动。
虽然抓屏的速度快,但是抖动的也厉害。换了个PaintBox或者直接向Form.Canvas.Draw()
这样虽然不抖动了,但是,呵呵,它是不能存储的,只要一Repaint就什么都没有了。
请问如何在TImage中只Draw局部位图,而不使这个图象抖动?
 
怎么个抖动法. 在我的机子上没有抖动的阿.
 
过年刚回来!
大家好!

继续讨论啊!
 
我现在翻译了vnc的hook 代码. 由于我的C++ 不太好.
结果翻译出来之后不能工作. 有没有高手乐意做这件事情啊?
 
[8D]

用这个可以实现 800*600 24bit 下每秒 3 帧的抓屏:

http://www.banasoft.net/AVPhone.htm

在使用 DivX 4.12 MPEG4 压缩时的速率约为 200kbitps.

不过各位要做 PCAnyWhere 的话估计光是 BitBlt 这条道路行不通得 hook CreateWindow.
 
>> 不过各位要做 PCAnyWhere 的话估计光是 BitBlt 这条道路行不通得 hook CreateWindow

老大﹐該怎樣做呢?
 
看VNC的源码知道. 要拦截很多消息. 不仅仅是 Hook CreateWindow
我建议有兴趣的DFW联合一下,共同翻译VNC中抓屏部分的代码.
有兴趣的请留下email.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
680
import
I
后退
顶部