diff --git a/ext/pango/gsttextoverlay.c b/ext/pango/gsttextoverlay.c index 915a59c5fb..c09de831e6 100644 --- a/ext/pango/gsttextoverlay.c +++ b/ext/pango/gsttextoverlay.c @@ -216,6 +216,7 @@ gst_text_overlay_valign_get_type (void) {GST_TEXT_OVERLAY_VALIGN_BOTTOM, "bottom", "bottom"}, {GST_TEXT_OVERLAY_VALIGN_TOP, "top", "top"}, {GST_TEXT_OVERLAY_VALIGN_POS, "position", "position"}, + {GST_TEXT_OVERLAY_VALIGN_CENTER, "center", "center"}, {0, NULL, NULL}, }; @@ -1798,6 +1799,9 @@ gst_text_overlay_push_frame (GstTextOverlay * overlay, GstBuffer * video_frame) ypos = (gint) (overlay->height * overlay->ypos) - height / 2; ypos = CLAMP (ypos, 0, overlay->height - height); break; + case GST_TEXT_OVERLAY_VALIGN_CENTER: + ypos = (overlay->height - height) / 2; + break; default: ypos = overlay->ypad; break; diff --git a/ext/pango/gsttextoverlay.h b/ext/pango/gsttextoverlay.h index 5fddf3ad09..10dd9479e0 100644 --- a/ext/pango/gsttextoverlay.h +++ b/ext/pango/gsttextoverlay.h @@ -35,7 +35,8 @@ typedef enum { GST_TEXT_OVERLAY_VALIGN_BASELINE, GST_TEXT_OVERLAY_VALIGN_BOTTOM, GST_TEXT_OVERLAY_VALIGN_TOP, - GST_TEXT_OVERLAY_VALIGN_POS + GST_TEXT_OVERLAY_VALIGN_POS, + GST_TEXT_OVERLAY_VALIGN_CENTER } GstTextOverlayVAlign; /**