diff options
author | Thibaut Mattern <tmattern@users.sourceforge.net> | 2004-10-16 10:38:14 +0000 |
---|---|---|
committer | Thibaut Mattern <tmattern@users.sourceforge.net> | 2004-10-16 10:38:14 +0000 |
commit | aa7736b67fae09ddc12f0e771e439c634318ecf0 (patch) | |
tree | cf8e3f8e5c1e985a45544a4b22f207027415149a /src | |
parent | 0df53c6f185edc18df4b61faa519c1652f4e4a72 (diff) | |
download | xine-lib-aa7736b67fae09ddc12f0e771e439c634318ecf0.tar.gz xine-lib-aa7736b67fae09ddc12f0e771e439c634318ecf0.tar.bz2 |
Mace decoder hack
fix castaway.mov crash.
CVS patchset: 7040
CVS date: 2004/10/16 10:38:14
Diffstat (limited to 'src')
-rw-r--r-- | src/demuxers/demux_qt.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/demuxers/demux_qt.c b/src/demuxers/demux_qt.c index 9f9099220..0c97ae9c5 100644 --- a/src/demuxers/demux_qt.c +++ b/src/demuxers/demux_qt.c @@ -30,7 +30,7 @@ * build_frame_table * free_qt_info * - * $Id: demux_qt.c,v 1.192 2004/09/11 20:01:39 jstembridge Exp $ + * $Id: demux_qt.c,v 1.193 2004/10/16 10:38:14 tmattern Exp $ * */ @@ -2356,6 +2356,13 @@ static int demux_qt_send_chunk(demux_plugin_t *this_gen) { return this->status; remaining_sample_bytes = audio_trak->frames[i].size; + + /* HACK: MAC3 and MAC6 have wrong frame size */ + if (audio_trak->properties->audio.codec_buftype == BUF_AUDIO_MAC3) + remaining_sample_bytes /= 3; + else if (audio_trak->properties->audio.codec_buftype == BUF_AUDIO_MAC6) + remaining_sample_bytes /= 6; + this->input->seek(this->input, audio_trak->frames[i].offset, SEEK_SET); |