summaryrefslogtreecommitdiff
path: root/libavformat/isom.h
diff options
context:
space:
mode:
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>2012-03-25 14:13:23 +0200
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>2012-03-31 12:37:42 +0200
commit50059bde77674977d9134f3c1151a63cb7a2391c (patch)
treee377c737057e3aed78a00a6613ddd920a6fd9d1e /libavformat/isom.h
parente0ad7f74c762fb303b1374bb53865c5639649b29 (diff)
MOV: Fix old-style muxed raw-audio data.
This patch fixes the sample from trac issue #522. The issue is that the mov demuxer insists on using its calculated sample_size (which is nonsense for old-style tracks) instead of the one encoded in the track. The old raw audio code should be using the value in stsz, because the size of a single sample never makes sense for the size of a full audio packet, whereas the new code will multiply the sample size by the chunk size, so it should use the calculated value. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Diffstat (limited to 'libavformat/isom.h')
-rw-r--r--libavformat/isom.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/isom.h b/libavformat/isom.h
index cd70c0305a..f5d03b20eb 100644
--- a/libavformat/isom.h
+++ b/libavformat/isom.h
@@ -103,7 +103,8 @@ typedef struct MOVStreamContext {
unsigned *stps_data; ///< partial sync sample for mpeg-2 open gop
int ctts_index;
int ctts_sample;
- unsigned int sample_size;
+ unsigned int sample_size; ///< may contain value calculated from stsd or value from stsz atom
+ unsigned int alt_sample_size; ///< always contains sample size from stsz atom
unsigned int sample_count;
int *sample_sizes;
unsigned int keyframe_count;