summaryrefslogtreecommitdiffstats
path: root/video/out/gl_lcms.h
diff options
context:
space:
mode:
authorStefano Pigozzi <stefano.pigozzi@gmail.com>2015-01-07 18:47:27 +0100
committerStefano Pigozzi <stefano.pigozzi@gmail.com>2015-01-07 18:47:27 +0100
commitf811348d0caabccdc72100c7d7d2f9df8332518a (patch)
tree99d41cf5ad4ffcda57f1b3fa4b8fe3d87d3f8fa5 /video/out/gl_lcms.h
parentd66598eeed10175b946fda8c76712714f578bb56 (diff)
downloadmpv-f811348d0caabccdc72100c7d7d2f9df8332518a.tar.bz2
mpv-f811348d0caabccdc72100c7d7d2f9df8332518a.tar.xz
vo_opengl: add support for in memory icc profiles
Previously we just forced loading a profile from file, but that has poor integration for querying the OS / display server for an ICC profile, and generating profiles on the fly (which we might use in the future for creating preset 3dluts). Also changed the previous icc-profile-auto code to use this mechanism, and moved gl_lcms to be an opaque type with state instead of just providing pure functions.
Diffstat (limited to 'video/out/gl_lcms.h')
-rw-r--r--video/out/gl_lcms.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/video/out/gl_lcms.h b/video/out/gl_lcms.h
index f1ab069574..2b34d62cca 100644
--- a/video/out/gl_lcms.h
+++ b/video/out/gl_lcms.h
@@ -1,7 +1,9 @@
#ifndef MP_GL_LCMS_H
#define MP_GL_LCMS_H
+#include <stddef.h>
#include <stdbool.h>
+#include "misc/bstr.h"
extern const struct m_sub_options mp_icc_conf;
@@ -16,8 +18,12 @@ struct mp_icc_opts {
struct lut3d;
struct mp_log;
struct mpv_global;
-bool mp_icc_set_profile(struct mp_icc_opts *opts, char *profile);
-struct lut3d *mp_load_icc(struct mp_icc_opts *opts, struct mp_log *log,
- struct mpv_global *global);
+struct gl_lcms;
+
+struct gl_lcms *gl_lcms_init(void *talloc_ctx, struct mp_log *log,
+ struct mpv_global *global);
+void gl_lcms_set_options(struct gl_lcms *p, struct mp_icc_opts *opts);
+void gl_lcms_set_memory_profile(struct gl_lcms *p, bstr *profile);
+bool gl_lcms_get_lut3d(struct gl_lcms *p, struct lut3d **);
#endif