mirror of
https://github.com/mpv-player/mpv
synced 2025-03-23 03:37:27 +00:00
vo_gpu: fix taking screenshots of rotated videos
This commit is contained in:
parent
639ee55df7
commit
ae8cb39ab2
@ -3320,10 +3320,14 @@ void gl_video_screenshot(struct gl_video *p, struct vo_frame *frame,
|
|||||||
if (w < 1 || h < 1)
|
if (w < 1 || h < 1)
|
||||||
return;
|
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, 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_rect dst = {0, 0, w, h};
|
||||||
struct mp_osd_res osd = {.w = w, .h = h, .display_par = 1.0};
|
struct mp_osd_res osd = {.w = w, .h = h, .display_par = 1.0};
|
||||||
gl_video_resize(p, &src, &dst, &osd);
|
gl_video_resize(p, &src, &dst, &osd);
|
||||||
|
Loading…
Reference in New Issue
Block a user