diff options
author | wnoun <wnoun@outlook.com> | 2019-08-03 01:00:08 +0800 |
---|---|---|
committer | sfan5 <sfan5@live.de> | 2019-08-14 21:54:14 +0200 |
commit | ae8cb39ab2b1632f46ecd2a6cd4541aaedcda766 (patch) | |
tree | fd404c8e3690b27593b6236c56044b234685105c /video | |
parent | 639ee55df7cc1ecf7ea5dcfa7ecc5551b6b7312d (diff) | |
download | mpv-ae8cb39ab2b1632f46ecd2a6cd4541aaedcda766.tar.bz2 mpv-ae8cb39ab2b1632f46ecd2a6cd4541aaedcda766.tar.xz |
vo_gpu: fix taking screenshots of rotated videos
Diffstat (limited to 'video')
-rw-r--r-- | video/out/gpu/video.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/video/out/gpu/video.c b/video/out/gpu/video.c index 572d1bbd5b..4b3d8017a7 100644 --- a/video/out/gpu/video.c +++ b/video/out/gpu/video.c @@ -3320,10 +3320,14 @@ void gl_video_screenshot(struct gl_video *p, struct vo_frame *frame, if (w < 1 || h < 1) return; - if (p->image_params.rotate % 180 == 90) + int src_w = p->image_params.w; + int src_h = p->image_params.h; + if (p->image_params.rotate % 180 == 90) { MPSWAP(int, w, h); + MPSWAP(int, src_w, src_h); + } - struct mp_rect src = {0, 0, p->image_params.w, p->image_params.h}; + struct mp_rect src = {0, 0, src_w, src_h}; struct mp_rect dst = {0, 0, w, h}; struct mp_osd_res osd = {.w = w, .h = h, .display_par = 1.0}; gl_video_resize(p, &src, &dst, &osd); |