summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
authorNiklas Haas <git@haasn.xyz>2017-09-11 18:20:18 +0200
committerNiklas Haas <git@haasn.xyz>2017-09-11 18:20:18 +0200
commit3faf1fb0a4482712b2177af2f72ef8877f8adc10 (patch)
tree4a9b118cc074d6acbaa7fffe828e90199db08db1 /video
parent71c25df5e66154e6b8b72ebc0f8ef5ae0c40d7f6 (diff)
downloadmpv-3faf1fb0a4482712b2177af2f72ef8877f8adc10.tar.bz2
mpv-3faf1fb0a4482712b2177af2f72ef8877f8adc10.tar.xz
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.
Diffstat (limited to 'video')
-rw-r--r--video/out/opengl/video.h2
-rw-r--r--video/out/vo.h2
2 files changed, 2 insertions, 2 deletions
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;