mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2025-03-03 09:37:28 +00:00
lavf/mov: Allow reading very large files.
The Sample count in the time-to-sample table is defined as 32-bit unsigned integer by the QT specification. Fixes ticket #6700.
This commit is contained in:
parent
05dfa21d47
commit
1015982f45
@ -52,7 +52,7 @@ struct AVAESCTR;
|
||||
*/
|
||||
|
||||
typedef struct MOVStts {
|
||||
int count;
|
||||
unsigned int count;
|
||||
int duration;
|
||||
} MOVStts;
|
||||
|
||||
|
@ -2663,15 +2663,11 @@ static int mov_read_stts(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
||||
|
||||
for (i = 0; i < entries && !pb->eof_reached; i++) {
|
||||
int sample_duration;
|
||||
int sample_count;
|
||||
unsigned int sample_count;
|
||||
|
||||
sample_count=avio_rb32(pb);
|
||||
sample_duration = avio_rb32(pb);
|
||||
|
||||
if (sample_count < 0) {
|
||||
av_log(c->fc, AV_LOG_ERROR, "Invalid sample_count=%d\n", sample_count);
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
sc->stts_data[i].count= sample_count;
|
||||
sc->stts_data[i].duration= sample_duration;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user