summaryrefslogtreecommitdiffstats
path: root/libmpdemux
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-06 15:14:32 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-06 15:14:32 +0000
commit8d8026ed487c4daf93340937d15e94d113b9a8c4 (patch)
treec8f09758a80054eb97eacfe8cf1df01331ca78c6 /libmpdemux
parentb2ff3dd68c42d40a9ce7dcb5a99ff64db9cc4fd6 (diff)
downloadmpv-8d8026ed487c4daf93340937d15e94d113b9a8c4.tar.bz2
mpv-8d8026ed487c4daf93340937d15e94d113b9a8c4.tar.xz
fixed endless 'unknown chunk' and doublespeed ima4 audio bugs
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6656 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r--libmpdemux/demux_mov.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c
index 99a43b5984..40a8542e27 100644
--- a/libmpdemux/demux_mov.c
+++ b/libmpdemux/demux_mov.c
@@ -873,11 +873,14 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak
mp4_free_esds(&esds); // freeup esds mem
}
break;
+ case 0:
+ break;
default:
mp_msg(MSGT_DEMUX, MSGL_INFO, "MOV: Found unknown movie atom %c%c%c%c (%d)!\n",
trak->stdata[pos+4],trak->stdata[pos+5],trak->stdata[pos+6],trak->stdata[pos+7],
atom_len);
}
+ if(atom_len<8) break;
pos+=atom_len;
// printf("pos=%d max=%d\n",pos,trak->stdata_len);
}
@@ -1302,8 +1305,8 @@ if(trak->samplesize){
if(trak->stdata_len>=44 && trak->stdata[9]>=1){
// stsd version 1 - we have audio compression ratio info:
x/=char2int(trak->stdata,28); // samples/packet
- x*=char2int(trak->stdata,32); // bytes/packet
-// x*=char2int(trak->stdata,36); // bytes/frame
+// x*=char2int(trak->stdata,32); // bytes/packet
+ x*=char2int(trak->stdata,36); // bytes/frame
} else {
if(ds->ss_div!=1 || ds->ss_mul!=1){
// workaround for buggy files like 7up-high-traffic-areas.mov,