summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_mov.c
diff options
context:
space:
mode:
authorrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-06-27 19:53:30 +0000
committerrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-06-27 19:53:30 +0000
commit4143f4e4e576b8a532fae269c01fd4323dcff5e1 (patch)
tree907267fb0b0f6711283eac9c79e3b61364ed3cdf /libmpdemux/demux_mov.c
parent7349effe2ef831ae22af1d4ac26c831d03a82d60 (diff)
downloadmpv-4143f4e4e576b8a532fae269c01fd4323dcff5e1.tar.bz2
mpv-4143f4e4e576b8a532fae269c01fd4323dcff5e1.tar.xz
Negate default palette for grayscale cvid
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@12709 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_mov.c')
-rw-r--r--libmpdemux/demux_mov.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c
index e32bc0e267..4e878cff44 100644
--- a/libmpdemux/demux_mov.c
+++ b/libmpdemux/demux_mov.c
@@ -1180,8 +1180,18 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak
mp_msg(MSGT_DEMUX, MSGL_INFO, "Using default QT grayscale palette\n");
if (palette_count == 16)
memcpy(palette_map, qt_default_grayscale_palette_16, 16 * 4);
- else if (palette_count == 256)
+ else if (palette_count == 256) {
memcpy(palette_map, qt_default_grayscale_palette_256, 256 * 4);
+ if (trak->fourcc == mmioFOURCC('c','v','i','d')) {
+ int i;
+ // Hack for grayscale CVID, negative palette
+ // If you have samples where this is not required contact me (rxt)
+ mp_msg(MSGT_DEMUX, MSGL_INFO, "MOV: greyscale cvid with default palette,"
+ " enabling negative palette hack.\n");
+ for (i = 0; i < 256 * 4; i++)
+ palette_map[i] = palette_map[i] ^ 0xff;
+ }
+ }
}
else
{