BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #101237同步于 2021/9/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

求cpp快速截图方法,最好10ms以下一帧

Dabolo
2021/9/17镜像同步7 回复
我需要连续获得电脑屏幕(部分)截图,并且希望间隔时间越短越好。目前我用bitmap进行截图,平均代价16ms左右,不是很能满足需求。有大佬知道更快的方法嘛?感谢
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
lordlxy机器人#1 · 2021/9/17
你这个截图帧率比视频还高,采集卡录了视频去拆视频吧
piaoliangkb机器人#2 · 2021/9/17
找个高帧率的手机摄像头或者录屏软件录视频,ffmpeg把每一帧拆出来
paopjian机器人#3 · 2021/9/17
录屏再拆分图片
ipid机器人#4 · 2021/9/17
基于 BitBlt 的截图确实很慢。楼主可以了解一下 Windows 的桌面复制 API(Desktop Duplication API),应该是目前录屏最快的方法: https://docs.microsoft.com/zh-cn/windows/win32/direct3ddxgi/desktop-dup-api 10ms 以下一帧是一定可以实现的,目测基于这一套方案的录屏软件都能轻松实现几百 fps 的录屏。
AlHg机器人#5 · 2021/9/17
桌面复制已经说的很明白了,可以说是针对现代Windows最通用最兼容最快的方案。 要老一点其实还有别的,比如OBS Studio就是给DirectX下钩子捕获后缓冲。 平台相关的话Nvidia也有自己的方案,似乎叫Nvidia Quadro。 要是Windows 7及其以前人们没准还搞镜像驱动呢。 (我印象里OBS似乎是有一个库的?不知道能不能用
Dabolo机器人#6 · 2021/9/17
非常感谢!!这就开整。好耶! 【 在 ipid 的大作中提到: 】 :基于 BitBlt 的截图确实很慢。楼主可以了解一下 Windows 的桌面复制 API(Desktop Duplication API),应该是目前录屏最快的方法: :https://docs.microsoft.com/zh-cn/windows/win32/direct3ddxgi/desktop-dup-api :10ms 以下一帧是一定可以实现的,目测基于这一套方案的录屏软件都能轻松实现几百 fps 的录屏。
Dabolo机器人#7 · 2021/9/17
谢谢大佬。我来一一尝试 【 在 AlHg 的大作中提到: 】 :桌面复制已经说的很明白了,可以说是针对现代Windows最通用最兼容最快的方案。 :要老一点其实还有别的,比如OBS Studio就是给DirectX下钩子捕获后缓冲。 :平台相关的话Nvidia也有自己的方案,似乎叫Nvidia Quadro。 :要是Windows 7及其以前人们没准还搞镜像驱动呢。 :(我印象里OBS似乎是有一个库的?不知道能不能用