From 3faf1fb0a4482712b2177af2f72ef8877f8adc10 Mon Sep 17 00:00:00 2001 From: Niklas Haas Date: Mon, 11 Sep 2017 18:20:18 +0200 Subject: vo: avoid putting large voctrl_performance_data on stack This is around 512 kB, which is just way too much. Heap-allocate it instead. Also cut down the max pass count to 64, since 128 was unrealistically high even for vo_opengl. --- video/out/opengl/video.h | 2 +- video/out/vo.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'video') diff --git a/video/out/opengl/video.h b/video/out/opengl/video.h index e20af90643..d163bc8405 100644 --- a/video/out/opengl/video.h +++ b/video/out/opengl/video.h @@ -27,6 +27,7 @@ #include "shader_cache.h" #include "video/csputils.h" #include "video/out/filter_kernels.h" +#include "video/out/vo.h" // Assume we have this many texture units for sourcing additional passes. // The actual texture unit assignment is dynamic. @@ -164,7 +165,6 @@ void gl_video_resize(struct gl_video *p, struct mp_rect *src, struct mp_rect *dst, struct mp_osd_res *osd); void gl_video_set_fb_depth(struct gl_video *p, int fb_depth); -struct voctrl_performance_data; void gl_video_perfdata(struct gl_video *p, struct voctrl_performance_data *out); void gl_video_set_clear_color(struct gl_video *p, struct m_color color); void gl_video_set_osd_pts(struct gl_video *p, double pts); diff --git a/video/out/vo.h b/video/out/vo.h index 50fdab6db4..2a0c3ef626 100644 --- a/video/out/vo.h +++ b/video/out/vo.h @@ -152,7 +152,7 @@ struct mp_pass_perf { uint64_t count; }; -#define VO_PASS_PERF_MAX 128 +#define VO_PASS_PERF_MAX 64 struct mp_frame_perf { int count; -- cgit v1.2.3