summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_mov.c
diff options
context:
space:
mode:
authordiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-12-18 01:12:02 +0000
committerdiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-12-18 01:12:02 +0000
commita688341112ab171ef286c9654c6d3f3cba1c8008 (patch)
tree4d1e7b757e3310bceae7d0c062b828be23862c20 /libmpdemux/demux_mov.c
parent09f6cb8d79bc1f36d6a0f86edde35625eebbc0ea (diff)
downloadmpv-a688341112ab171ef286c9654c6d3f3cba1c8008.tar.bz2
mpv-a688341112ab171ef286c9654c6d3f3cba1c8008.tar.xz
Handle raw yv12 video as I420 to fix some Broadcast 2000 created samples.
patch by Reza Jelveh, approval by Roberto git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14180 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_mov.c')
-rw-r--r--libmpdemux/demux_mov.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c
index 68b5d7132d..b819309f40 100644
--- a/libmpdemux/demux_mov.c
+++ b/libmpdemux/demux_mov.c
@@ -629,6 +629,9 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak
off_t pos=stream_tell(demuxer->stream);
off_t len=stream_read_dword(demuxer->stream);
unsigned int fourcc=stream_read_dword_le(demuxer->stream);
+ /* some files created with Broadcast 2000 (e.g. ilacetest.mov)
+ contain raw I420 video but have a yv12 fourcc */
+ if(fourcc==mmioFOURCC('y','v','1','2')) fourcc=mmioFOURCC('I','4','2','0');
if(len<8) break; // error
mp_msg(MSGT_DEMUX,MSGL_V,"MOV: %*s desc #%d: %.4s (%d bytes)\n",level,"",i,&fourcc,len-16);
if(fourcc!=trak->fourcc && i)