summaryrefslogtreecommitdiffstats
path: root/video/out/gpu/video.c
diff options
context:
space:
mode:
Diffstat (limited to 'video/out/gpu/video.c')
-rw-r--r--video/out/gpu/video.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/video/out/gpu/video.c b/video/out/gpu/video.c
index c04f5c57a4..c35372d69e 100644
--- a/video/out/gpu/video.c
+++ b/video/out/gpu/video.c
@@ -4290,6 +4290,13 @@ static void gl_video_dr_free_buffer(void *opaque, uint8_t *data)
struct mp_image *gl_video_get_image(struct gl_video *p, int imgfmt, int w, int h,
int stride_align, int flags)
{
+ if (flags & VO_DR_FLAG_HOST_CACHED) {
+ if (p->ra->caps & RA_CAP_SLOW_DR) {
+ MP_VERBOSE(p, "DR path suspected slow/uncached, disabling..");
+ return NULL;
+ }
+ }
+
if (!gl_video_check_format(p, imgfmt))
return NULL;