【UE4】帧数据获取与转换


方式一

  • 利用 SceneCaptureComponent2D 和 RenderTexture2D 获取 TArray 数据,再转成Texture2D或者 uint8 数组
  • 需要连续采集时,不推荐

方式二

  • 利用RHI的 ENQUEUE_RENDER_COMMANDReadSurfaceData
  • 比较推荐,之前和 python tensorflow 内存共享帧数据时用过,但后来发现其实 python 那边完全可以从显存那边拿数据(背锅者的自我修养)

方式三

  • 读取BackBuffer
  • 利用 OnBackBufferReadyToPresentOnBackBufferReady_RenderThread(SWindow& SlateWindow, const FTexture2DRHIRef& BackBuffer)
  • 一般推荐

方式四

  • 利用 FFrameGrabber

其他(视频流)

  • OBS
  • FFmpeg、vlc
  • win32gui - python

参考


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM