From 76f888f5551f486b6d0c9b9c3a0f17e1e0bf9d71 Mon Sep 17 00:00:00 2001 From: Dudemanguy Date: Wed, 4 May 2022 16:26:33 -0500 Subject: context_drm_egl: support monitor par These values and options were simply never looked at in the drm egl context. This pretty much is just a copy and paste of what is in vo_drm. Fixes #10157. --- video/out/opengl/context_drm_egl.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'video') diff --git a/video/out/opengl/context_drm_egl.c b/video/out/opengl/context_drm_egl.c index 86292b04cf..34d6970c95 100644 --- a/video/out/opengl/context_drm_egl.c +++ b/video/out/opengl/context_drm_egl.c @@ -968,6 +968,15 @@ static bool drm_egl_init(struct ra_ctx *ctx) ra_add_native_resource(ctx->ra, "drm_params_v2", &p->drm_params); ra_add_native_resource(ctx->ra, "drm_draw_surface_size", &p->draw_surface_size); + if (ctx->vo->opts->force_monitor_aspect != 0.0) { + ctx->vo->monitor_par = p->fb->width / (double) p->fb->height / + ctx->vo->opts->force_monitor_aspect; + } else { + ctx->vo->monitor_par = 1 / ctx->vo->opts->monitor_pixel_aspect; + } + + mp_verbose(ctx->vo->log, "Monitor pixel aspect: %g\n", ctx->vo->monitor_par); + p->vsync_info.vsync_duration = 0; p->vsync_info.skipped_vsyncs = -1; p->vsync_info.last_queue_display_time = -1; -- cgit v1.2.3