qmlglsink: Retain the previous frame to avoid flickering artifacts
Submitted by Carlos Rafael Giani
With some GstGL uploaders - especially the ones based on DMABUF - it is possible that flickering artifacts can occur with qmlglsink. This happens because upstream writes into the dmabuf at the same time when the frame in that dmabuf is being painted on screen. By retaining the gstbuffer for one more frame, this is avoided, since the gstbuffer is not released back into the upstream dmabuf buffer pool until the frame is drawn.
Note that glimagesink does something similar, which is why these flickering artifacts usually do not appear with that sink.