From e37bbc054e6ad303d8e9f6ebc64f8ca5463642d4 Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Fri, 7 Jan 2022 18:25:00 +0900 Subject: [PATCH] compositor: Always draw if all input buffers are GAP Otherwise output buffers will contain random scene (previously rendered or arbitrary initial values) since we don't draw onto output buffer at all. Part-of: --- subprojects/gst-plugins-base/gst/compositor/compositor.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/subprojects/gst-plugins-base/gst/compositor/compositor.c b/subprojects/gst-plugins-base/gst/compositor/compositor.c index 9938154176..dc5d15f0ca 100644 --- a/subprojects/gst-plugins-base/gst/compositor/compositor.c +++ b/subprojects/gst-plugins-base/gst/compositor/compositor.c @@ -1383,6 +1383,11 @@ gst_compositor_aggregate_frames (GstVideoAggregator * vagg, GstBuffer * outbuf) n_pads++; } + /* If no prepared frame, we should draw background unconditionally in order + * to clear output buffer */ + if (n_pads == 0) + draw_background = TRUE; + pads_info = g_newa (struct CompositePadInfo, n_pads); n_pads = 0;