gst-plugins-bad: faceoverlay: clear overlay if the face disappears
Tim Müller
tpm at kemper.freedesktop.org
Thu Mar 15 11:37:09 PDT 2012
Module: gst-plugins-bad
Branch: master
Commit: 3f07ebcc37b77ee7c39f964aab6e207eb7ff028f
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=3f07ebcc37b77ee7c39f964aab6e207eb7ff028f
Author: Tim-Philipp Müller <tim.muller at collabora.co.uk>
Date: Thu Mar 15 18:26:24 2012 +0000
faceoverlay: clear overlay if the face disappears
---
gst/faceoverlay/gstfaceoverlay.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/gst/faceoverlay/gstfaceoverlay.c b/gst/faceoverlay/gstfaceoverlay.c
index 9695f0a..67bd96e 100644
--- a/gst/faceoverlay/gstfaceoverlay.c
+++ b/gst/faceoverlay/gstfaceoverlay.c
@@ -211,9 +211,14 @@ gst_face_overlay_handle_faces (GstFaceOverlay * filter, GstStructure * s)
face_count = gst_value_list_get_size (faces_list);
GST_LOG_OBJECT (filter, "face count: %d", face_count);
- /* FIXME: should we clear the overlay in this case? */
- if (face_count == 0)
+ if (face_count == 0) {
+ GST_DEBUG_OBJECT (filter, "no face, clearing overlay");
+ g_object_set (filter->svg_overlay, "location", NULL, NULL);
+ GST_OBJECT_LOCK (filter);
+ filter->update_svg = TRUE;
+ GST_OBJECT_UNLOCK (filter);
return;
+ }
/* The last face in the list seems to be the right one, objects mistakenly
* detected as faces for a couple of frames seem to be in the list
More information about the gstreamer-commits
mailing list