summaryrefslogtreecommitdiffstats
path: root/demux
diff options
context:
space:
mode:
authorNiklas Haas <git@haasn.xyz>2016-11-08 17:53:55 +0100
committerwm4 <wm4@nowhere>2016-11-08 19:16:26 +0100
commitc676c31815b5c8bd9ba6eab968bbc0862eaa4bba (patch)
tree1ab96beb3363ce97a588f5e52dab60afcd3161e5 /demux
parent81ceb7b6a57422e5d05593d49b14d99479f266a0 (diff)
downloadmpv-c676c31815b5c8bd9ba6eab968bbc0862eaa4bba.tar.bz2
mpv-c676c31815b5c8bd9ba6eab968bbc0862eaa4bba.tar.xz
demux: expose demuxer colorimetry metadata to player
Implementation-wise, the values from the demuxer/codec header are merged with the values from the decoder such that the former are used only where the latter are unknown (0/auto).
Diffstat (limited to 'demux')
-rw-r--r--demux/demux_mkv.c1
-rw-r--r--demux/stheader.h2
2 files changed, 3 insertions, 0 deletions
diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c
index bf7a8e2d91..63b58cdb15 100644
--- a/demux/demux_mkv.c
+++ b/demux/demux_mkv.c
@@ -1436,6 +1436,7 @@ static int demux_mkv_open_video(demuxer_t *demuxer, mkv_track_t *track)
sh_v->par_h = p.p_h;
sh_v->stereo_mode = track->stereo_mode;
+ sh_v->color = track->color;
done:
demux_add_sh_stream(demuxer, sh);
diff --git a/demux/stheader.h b/demux/stheader.h
index 8dcd8351a6..240be72a46 100644
--- a/demux/stheader.h
+++ b/demux/stheader.h
@@ -22,6 +22,7 @@
#include "common/common.h"
#include "audio/chmap.h"
+#include "video/csputils.h"
struct MPOpts;
struct demuxer;
@@ -93,6 +94,7 @@ struct mp_codec_params {
int disp_w, disp_h; // display size
int rotate; // intended display rotation, in degrees, [0, 359]
int stereo_mode; // mp_stereo3d_mode (0 if none/unknown)
+ struct mp_colorspace color; // colorspace info where available
// STREAM_VIDEO + STREAM_AUDIO
int bits_per_coded_sample;