精易论坛

标题: 极速截图类--挑战0.1ms一张图 [打印本页]

作者: ku2017    时间: 2023-1-28 19:45
标题: 极速截图类--挑战0.1ms一张图
本帖最后由 ku2017 于 2023-1-28 19:47 编辑

[attach]1222746[/attach][attach]1222747[/attach]
支持带鼠标截图,经测试 3900x cpu截图达到1056 FPS 不到1毫秒一张图

  改版于群友酸菜鱼的dc示例 并改为类,进行精简优化 并封装为模块方便移植
' // 1.0 定义为类 减少创建画布跟释放的时间损耗 大大提升截图效率
' // 1.0 精简了部分坐标代码 右边 改为直接定义为宽 底顶定义为截图的高
' // 1.0 修复带鼠标截图在指定窗口时鼠标画出鼠标指针位置出错的BUG



以下为演示端测速示例


支持带鼠标截图



截图源码及测试演示端.zip (118.92 KB, 下载次数: 1085)



作者: 不苦小和尚    时间: 2023-1-28 19:53
最好能弄个差异的
作者: wuchao1235    时间: 2023-1-28 20:29

缺少常量支持库1.6版

作者: ku2017    时间: 2023-1-28 20:39
wuchao1235 发表于 2023-1-28 20:29
缺少常量支持库1.6版

你去找一下这个库安装,或者把代码中的常量替换成数值
作者: sinewtec    时间: 2023-1-28 20:50
还不错 !支持了!!!!
作者: 283688410    时间: 2023-1-28 20:58
谢谢分享
作者: xjshuaishuai    时间: 2023-1-28 21:45
谢谢分享!
作者: kmskik    时间: 2023-1-28 21:54
感谢分享
作者: bianyuan456    时间: 2023-1-28 23:57
感谢分享
作者: 你不丑    时间: 2023-1-29 00:17
求这个界面大哥 可以分享吗?
作者: ku2017    时间: 2023-1-29 00:18
你不丑 发表于 2023-1-29 00:17
求这个界面大哥 可以分享吗?

什么界面?

作者: 396384183    时间: 2023-1-29 00:41
感谢分享
作者: huxian    时间: 2023-1-29 00:46
截图有没有快捷键
作者: huxian    时间: 2023-1-29 00:47
没有快捷键的截图 没有
作者: 你不丑    时间: 2023-1-29 02:16
ku2017 发表于 2023-1-29 00:18
什么界面?

易语言啊
作者: inmyheart    时间: 2023-1-29 10:00
6666666666666666666666666666666666
作者: kyo9766    时间: 2023-1-29 10:09
学习一下怎么操作的,感谢分享
作者: yxl2008    时间: 2023-1-29 13:34
感谢分享,很给力!~
作者: 初学者1    时间: 2023-1-29 13:36
感谢分享,很给力!~
作者: 凌哥    时间: 2023-1-29 13:41
我这没有常量支持库,跑不起来你的源码,但是我自己写的这个截图测试耗时全部在BitBlt上,很好奇你是怎么测出来0.5ms的,我这里极限帧率就是屏幕**率=144。你有没有试过单独输出每次截图的耗时?




作者: 撒加    时间: 2023-1-29 14:00
开源精神必须支持~
作者: ArchiverX3    时间: 2023-1-29 15:13
不知道连续截图 CPU 使用率如何
作者: StarAdmire    时间: 2023-1-29 15:42
常量支持库不是不支持静态编译吗
作者: ken679    时间: 2023-1-29 16:03
无论如何都要尝试的代码,不可拒绝呀
作者: ybyxzyyx    时间: 2023-1-29 16:26
真不戳,试试
作者: qq420345437    时间: 2023-1-29 16:49
不加 L_ 的模块看不上  
作者: 易友软件    时间: 2023-1-29 17:31
顶~顶~更健康~
作者: 真冬    时间: 2023-1-29 18:08
你这FPS没计算对啊,我这渣渣笔记本怎么可能上百帧
FPS不应该是统计一秒截图多少次吗?


作者: ku2017    时间: 2023-1-29 19:58
真冬 发表于 2023-1-29 18:08
你这FPS没计算对啊,我这渣渣笔记本怎么可能上百帧
FPS不应该是统计一秒截图多少次吗?

请问,我统计截图FPS,为什么要把画板的时间损耗算进去
作者: 凌哥    时间: 2023-1-29 20:09
测出来了。。。屏幕DC只有144帧,窗口DC的话会更快



作者: 凌哥    时间: 2023-1-29 20:44
搞定,我之前为了省事,不管有没有窗口句柄都只抓取屏幕DC
现在改成兼容窗口DC了~我这个今天刚优化了DXGI截图和DC截图的内存分配以及内存复制的逻辑,性能提升非常大



作者: wuqingg    时间: 2023-1-30 08:47
开源精神必须支持~
作者: 豪~豪    时间: 2023-1-30 09:04
真冬 发表于 2023-1-29 18:08
你这FPS没计算对啊,我这渣渣笔记本怎么可能上百帧
FPS不应该是统计一秒截图多少次吗?

楼主的计算方式是不计算显示到屏幕的时间,而是获取截图数据的时间,如果算上显示影响肯定很大
作者: wjswzj0    时间: 2023-1-30 09:07
支持开源~!感谢分享

作者: daduke7902    时间: 2023-1-30 10:12
你狠啊。这个修改过的代码 这么贵啊
作者: q1512960733    时间: 2023-1-30 15:40
学习一下
作者: 夏亿    时间: 2023-1-30 20:47
谢谢分享
作者: Wz613613    时间: 2023-1-31 04:19
谢谢分享
作者: 陽陽陽    时间: 2023-1-31 07:53
好像哪个陶贴都符合要求,就都加了
作者: 陽陽陽    时间: 2023-1-31 07:55
很好奇这和加_L有什么关系
作者: 完玩    时间: 2023-1-31 09:47
如果还是GDI截图的那套,再快也快不到哪去吧,况且GDI的CPU占用率挺高的
作者: 阿Q3    时间: 2023-1-31 17:40
看看 能不能看懂
作者: caiter0926    时间: 2023-1-31 17:42
初学者1 发表于 2023-1-29 13:36
感谢分享,很给力!~

来学习{:3_41:}{:3_48:}{:3_43:}不错哦
作者: caiter0926    时间: 2023-1-31 17:43
来学习,很棒哦。
作者: callng    时间: 2023-1-31 19:42
L_逆天改命()
作者: java22    时间: 2023-2-1 13:50
感谢分享,很给力!~
作者: kmskik    时间: 2023-2-1 16:21
为什么使用桌面句柄就会慢很多,使用窗口句柄就很快
作者: caiter0926    时间: 2023-2-1 18:33
楼主,谢谢您提供,但win10测试不理想, * “|| DC截图模块v1.0 BUG反馈 ku2017 改版于群友酸菜鱼的dc示例 ||” * 16.000000    (截图耗时16-32毫秒)
作者: jia201314973    时间: 2023-2-2 15:02

作者: aay2007    时间: 2023-2-3 14:23
感谢分享,很给力!~
作者: clearlove    时间: 2023-2-4 00:15
试试cpu占用情况
作者: lzptts    时间: 2023-2-4 02:48

感谢分享,很给力!
作者: 千狐    时间: 2023-2-4 12:29
远程桌面断开后能不能截图服务器而不黑屏?
作者: jable    时间: 2023-2-4 14:37
进来看看。。。。
作者: 欸嘿    时间: 2023-2-4 16:45
  感谢分享,很给力!
作者: 飞飞是个新手    时间: 2023-2-5 01:24
太棒了!感谢分享
作者: 艾笠    时间: 2023-2-5 16:37
用这个模块提示要添加常量支持库1.6,我添加了模块可以用了,但是静态编译显示如下内容,该怎么搞啊大佬
开始静态链接...
libc.lib(crt0dat.obj) : error LNK2005: __cinit already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: _exit already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __exit already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __cexit already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __c_exit already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __C_Exit_Done already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __C_Termination_Done already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __exitflag already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __wpgmptr already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __pgmptr already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: ___winitenv already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __wenviron already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: ___initenv already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __environ already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: ___wargv already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: ___argv already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: ___argc already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __winminor already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __winmajor already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __winver already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __osver already defined in libcmt.lib(crt0dat.obj)
libc.lib(crt0dat.obj) : error LNK2005: __umaskval already defined in libcmt.lib(crt0dat.obj)
J:\ceshi\ceshi.exe : fatal error LNK1169: one or more multiply defined symbols found
作者: 艾笠    时间: 2023-2-5 16:50
艾笠 发表于 2023-2-5 16:37
用这个模块提示要添加常量支持库1.6,我添加了模块可以用了,但是静态编译显示如下内容,该怎么搞啊大佬
开 ...

已解决,如果有人和我一样遇到了这个问题参照https://jingyan.baidu.com/article/e4d08ffd9a36200fd3f60d6f.html这个解决即可
作者: hemingyue    时间: 2023-2-7 19:13
试试看看!感谢分享
作者: 逗你玩的    时间: 2023-2-7 19:16
真快  看了UP的让我茅塞顿开  
作者: opq123    时间: 2023-2-8 16:36
支持开源~!感谢分享
作者: ayun520    时间: 2023-2-12 18:29
点赞!真厉害
作者: 忧郁之子    时间: 2023-2-12 21:11
谢谢分享,支持一下
作者: 34额    时间: 2023-2-27 11:37
666666
作者: 洞子dark    时间: 2023-2-28 09:29
感谢大佬
作者: miku2033    时间: 2023-3-4 19:53
感谢分享,很给力!~
作者: we5853237    时间: 2023-3-4 20:32
实用才是最重要的
作者: haojie789    时间: 2023-3-4 20:39
看看 ...........................................
作者: haojie789    时间: 2023-3-4 23:04
正好需要看一下
作者: haojie789    时间: 2023-3-4 23:05
瞅瞅看看啊 啊
作者: haojie789    时间: 2023-3-4 23:05
金币不够啊    还差好几个啊
作者: haojie789    时间: 2023-3-4 23:06
0..0.00000..............
作者: 已注销571294    时间: 2023-3-5 10:24
提示: 作者被禁止或删除 内容自动屏蔽
作者: 已注销571294    时间: 2023-3-5 10:24
提示: 作者被禁止或删除 内容自动屏蔽
作者: 2547978337    时间: 2023-3-7 14:51
TX云服务器不支持。
作者: liuyanjun75    时间: 2023-3-7 22:03
看看,学习一下。。。。。。。。。。。。。。。。。。。。
作者: a3363558    时间: 2023-3-7 23:21

作者: 过期的旋律    时间: 2023-3-17 23:30
学习一下 感谢支持
作者: wdjyltzh01    时间: 2023-3-18 18:36
支持一下看看效果

作者: 落雪无尘    时间: 2023-3-29 14:34
太厉害了 感谢楼主
作者: 素颜也倾城    时间: 2023-3-30 15:10
        极速截图类--挑战0.1ms
作者: 谁用这名    时间: 2023-4-1 23:55
感谢作者大大
作者: 飘Ya    时间: 2023-4-10 20:12
感谢分享
作者: 无极    时间: 2023-4-11 13:26

TX云服务器不支持。
作者: 无极    时间: 2023-4-11 13:28

感谢分享,很给力!~
作者: 无极    时间: 2023-4-11 13:30


感谢分享,很给力!~

感谢分享,很给力!~
作者: 纯属打酱油    时间: 2023-4-19 10:03
载入失败的程序不能被编译! 删除了还是不行啥情况
作者: dxp04    时间: 2023-4-19 16:47
学习了,挺好的
作者: 18827569520    时间: 2023-4-19 23:50
混个还比....................
作者: 18827569520    时间: 2023-4-20 00:07
我空空,uop,
作者: hanshifeng    时间: 2023-5-6 09:17
感谢分享
作者: zhh1122    时间: 2023-5-9 10:19
08888888888888888888888888888888888
作者: zhh1122    时间: 2023-5-9 10:20
666666666666
作者: hyhyyt    时间: 2023-5-9 12:41
来学习啦
作者: hyhyyt    时间: 2023-5-9 12:41
来学习啦
作者: zuiqi520    时间: 2023-5-11 00:26
6666666666666666666666666
作者: zuiqi520    时间: 2023-5-11 00:27
222222222222222222222222222666
作者: zuiqi520    时间: 2023-5-11 00:27
2222222222222222222222222222222222
作者: aa583    时间: 2023-5-14 03:43
66666666666666666666
作者: 股老传奇    时间: 2023-5-15 19:31
666666666666666666




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4