Part Number: AM5728
Hello,
We are working a solution for recording the frames rendered to an LCD. The input video is 1080 P @ 30 fps with on-screen display elements composed in a QtQuick overlay. At the moment, this is in Wayland, but that could be changed if necessary. We want to capture the rendered HD video with OSD elements and encode this (likely DMABUF to HDVICP for h.264) in realtime.
Is the write-back pipeline mature enough to handle this application? We've looked at https://github.com/tomba/kmsxx/blob/wb/tests/wbtest.cpp but it seems to be over 2 years old. Is there a more recent sample which would be applicable to our product application?
Alternatively, we've considered bringing the video into opengles as a streaming texture (bc-cat/EGLSurface) and then acquiring the rendered output frames from OpenGLES before they are passed to the DSS, however; we believe this approach is troublesome in HD at 30 fps due to bus contention on the DDR interconnect. Even though we can use DMABUF (previously cmem) to ensure zero-copy video frame passing between processing cores, they contend when pulling the raw HD video frames from DDR into their local caches for processing, and we believe this could present an undesirable IO bottleneck.
Any support you can provide would be greatly appreciated.
Thank you!
-Tomas