summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.co.uk>2015-07-20 16:25:10 -0400
committerNicolas Dufresne <nicolas.dufresne@collabora.co.uk>2015-07-20 16:26:39 -0400
commita2e4ccc38bd108de9bba8b366acaab7e218e3a1b (patch)
tree32a6ee4e46bd4c638976d68552786ee1d7a14d79 /ext
parentd10959fd3613b1f08d975a948fd9f9dfef5def66 (diff)
basetextoverlay: Fix upstream composition handling
We need to update the render when upstream composition changes or if it was removed. http://bugzilla.gnome.org/show_bug.cgi?id=751157
Diffstat (limited to 'ext')
-rw-r--r--ext/pango/gstbasetextoverlay.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/ext/pango/gstbasetextoverlay.c b/ext/pango/gstbasetextoverlay.c
index 647668d27..f0d8cd2b2 100644
--- a/ext/pango/gstbasetextoverlay.c
+++ b/ext/pango/gstbasetextoverlay.c
@@ -2406,8 +2406,14 @@ gst_base_text_overlay_video_chain (GstPad * pad, GstObject * parent,
composition_meta = gst_buffer_get_video_overlay_composition_meta (buffer);
if (composition_meta) {
- GST_DEBUG ("GstVideoOverlayCompositionMeta found.");
- overlay->upstream_composition = composition_meta->overlay;
+ if (overlay->upstream_composition != composition_meta->overlay) {
+ GST_DEBUG ("GstVideoOverlayCompositionMeta found.");
+ overlay->upstream_composition = composition_meta->overlay;
+ overlay->need_render = TRUE;
+ }
+ } else if (overlay->upstream_composition != NULL) {
+ overlay->upstream_composition = NULL;
+ overlay->need_render = TRUE;
}
klass = GST_BASE_TEXT_OVERLAY_GET_CLASS (overlay);