|
Lines 597-603
Link Here
|
| 597 |
unsigned int fourcc=stream_read_dword_le(demuxer->stream); |
597 |
unsigned int fourcc=stream_read_dword_le(demuxer->stream); |
| 598 |
if(len<8) break; // error |
598 |
if(len<8) break; // error |
| 599 |
mp_msg(MSGT_DEMUX,MSGL_V,"MOV: %*s desc #%d: %.4s (%d bytes)\n",level,"",i,&fourcc,len-16); |
599 |
mp_msg(MSGT_DEMUX,MSGL_V,"MOV: %*s desc #%d: %.4s (%d bytes)\n",level,"",i,&fourcc,len-16); |
| 600 |
if(!i){ |
600 |
if(fourcc!=trak->fourcc && i) |
|
|
601 |
mp_msg(MSGT_DEMUX,MSGL_WARN,MSGTR_MOVvariableFourCC); |
| 602 |
// if(!i) |
| 603 |
{ |
| 601 |
trak->fourcc=fourcc; |
604 |
trak->fourcc=fourcc; |
| 602 |
// read type specific (audio/video/time/text etc) header |
605 |
// read type specific (audio/video/time/text etc) header |
| 603 |
// NOTE: trak type is not yet known at this point :((( |
606 |
// NOTE: trak type is not yet known at this point :((( |
|
Lines 605-612
Link Here
|
| 605 |
trak->stdata=malloc(trak->stdata_len); |
608 |
trak->stdata=malloc(trak->stdata_len); |
| 606 |
stream_read(demuxer->stream,trak->stdata,trak->stdata_len); |
609 |
stream_read(demuxer->stream,trak->stdata,trak->stdata_len); |
| 607 |
} |
610 |
} |
| 608 |
if(fourcc!=trak->fourcc && i) |
|
|
| 609 |
mp_msg(MSGT_DEMUX,MSGL_WARN,MSGTR_MOVvariableFourCC); |
| 610 |
if(!stream_seek(demuxer->stream,pos+len)) break; |
611 |
if(!stream_seek(demuxer->stream,pos+len)) break; |
| 611 |
} |
612 |
} |
| 612 |
break; |
613 |
break; |