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>
This commit is contained in:
Reimar Döffinger
2012-03-25 14:13:23 +02:00
parent e0ad7f74c7
commit 50059bde77
2 changed files with 4 additions and 2 deletions

View File

@@ -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;