如何解决如何在监视器上显示 120fps 10 位相机的输出?
我有一个 USB 摄像头,它以 120 FPS 的速度输出 1280x480 10 位灰度图像。我还有一个 LG 34GN850 monitor,它能够达到 144Hz 的刷新率。它支持 nVidia G-Sync,每个 RGB 通道 10 位。最后,显示器由 nVidia Quadro RTX 4000 显卡驱动。
理论上,通过这种设置,我应该能够在监视器上完美地显示相机的输出。每一帧,每一位像素。
目前,我在 Python 中使用 OpenCV 来显示来自相机的帧,但是:
问题:
- 如何在不丢失帧或位的情况下在监视器上显示摄像机的输出? python 中的 OpenCV 可以处理这个问题,还是我需要使用 DirectX?
- 哪些编程框架支持这种功能?
- 有我可以参考的示例吗?我很高兴在 Windows 或 Linux 中实现它,但更喜欢 Windows。
解决方法
“不要认为它支持 nVidia G-Sync,这样屏幕的刷新率就会与相机的更新率同步。”
什么?这不是它的工作原理。如果您从 Nvidia 驱动程序 440.97 开始使用 OpenGL、OpenCL、DirectX 或 Vulkan,它会自动运行,就像在 Photoshop 中一样。特别是如果您使用 vulkan,它会在 mpv 中自动工作。
您为什么将其标记为 HDR? 10 位与 HDR 无关。它也可以是 SDR,你甚至说它是灰度的。
您不需要 Quadro 卡。 10 位甚至 SDR 在 Nvidia Geforce 卡上在 Photoshop 等中被激活。
这里的答案是使用ffmpeg -f dshow,但是可能还不支持示例格式,如果确实是P010。请参阅:https://trac.ffmpeg.org/ticket/8454
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。