diff options
author | Hyunjun Ko <zzoon@igalia.com> | 2020-06-19 09:21:16 +0200 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2020-07-31 14:02:33 +0200 |
commit | a362d99e9e3bb705f4c4fd1e1e3aa869d86ec342 (patch) | |
tree | 8cca97e276cde6f8d59057acb832a839f33d162d /gst | |
parent | a5f37a21ec4c56e0237793c51f441c1de1c0bf08 (diff) | |
download | gstreamer-vaapi-a362d99e9e3bb705f4c4fd1e1e3aa869d86ec342.tar.gz |
libs: window: implements gst_vaapi_window_set_render_rectangle
Implements new vmethod gst_vaapi_window_set_render_rectangle,
which is doing set the information of the rendered rectangle set by
user.
This is necessary on wayland at least to get exact information of
external surface.
And vaapisink calls this when gst_video_overlay_set_render_rectangle is
called.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/342>
Diffstat (limited to 'gst')
-rw-r--r-- | gst/vaapi/gstvaapisink.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gst/vaapi/gstvaapisink.c b/gst/vaapi/gstvaapisink.c index c1f56bf0..2d7824e9 100644 --- a/gst/vaapi/gstvaapisink.c +++ b/gst/vaapi/gstvaapisink.c @@ -633,6 +633,12 @@ gst_vaapisink_video_overlay_set_render_rectangle (GstVideoOverlay * overlay, display_rect->width = width; display_rect->height = height; + if (gst_vaapisink_ensure_render_rect (sink, width, height) && sink->window) { + gst_vaapi_window_set_render_rectangle (sink->window, x, y, width, height); + gst_vaapi_window_set_size (sink->window, width, height); + gst_vaapisink_reconfigure_window (sink); + } + GST_DEBUG ("render rect (%d,%d):%ux%u", display_rect->x, display_rect->y, display_rect->width, display_rect->height); |