summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
Diffstat (limited to 'video/out')
-rw-r--r--video/out/vo_gpu_next.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/video/out/vo_gpu_next.c b/video/out/vo_gpu_next.c
index 3f9034b2b2..02fd0e595a 100644
--- a/video/out/vo_gpu_next.c
+++ b/video/out/vo_gpu_next.c
@@ -1289,16 +1289,23 @@ static void video_screenshot(struct vo *vo, struct voctrl_screenshot *args)
int src_w = mpi->params.w;
int src_h = mpi->params.h;
+ src = (struct mp_rect) {0, 0, src_w, src_h};
+ dst = (struct mp_rect) {0, 0, w, h};
+
+ if (mp_image_crop_valid(&mpi->params))
+ src = mpi->params.crop;
+
if (mpi->params.rotate % 180 == 90) {
MPSWAP(int, w, h);
MPSWAP(int, src_w, src_h);
}
- src = (struct mp_rect) {0, 0, src_w, src_h};
- dst = (struct mp_rect) {0, 0, w, h};
+ mp_rect_rotate(&src, src_w, src_h, mpi->params.rotate);
+ mp_rect_rotate(&dst, w, h, mpi->params.rotate);
+
osd = (struct mp_osd_res) {
.display_par = 1.0,
- .w = w,
- .h = h,
+ .w = mp_rect_w(dst),
+ .h = mp_rect_h(dst),
};
}