How does nvoverlaysink not utilize any GPU?

**• Hardware Platform (Jetson]**
**• DeepStream Version 5**
**• JetPack Version 4.4**

This is not a problem, more so a question. I’m interested in using the underlying mechanics of nvoverlaysink in my custom application instead of rendering frames to opengl (as this uses gpu memory).

Can someone explain how nvoverlaysink writes directly to the screen buffer ? Is it as simple as passing map.data to the screen buffer ? or do i need to convert map.data to something else before passing it directly to the screen ?

When actually passing data to the screen buffer do i simply overwrite the spot in memory that the screen is rendering from ?

Any help, comments, or pointers are appreciated.

Thank you

The overlaysink will render the video/image from upstream plugin to the assigned overlay surface through 2D engine. The 2D engine will render the composed content to the screen. nvoveraysink is a gstreamer plugin, it only accept NVMM type GstBuffer as input, what do you mean with “map.data”?

Nvoveraysink is deprecated now, nvdrmvideosink is what we suggest to use for video rendering to offload GPU.