avformat/movenc: support Opus packets with more than 60ms of audio when writing the Sample Group Description

Since libopus 1.2, packets of sizes 80ms, 100ms and 120ms are allowed.

Fixes assertion failures when trying to mux such streams.

Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer 2018-08-23 17:48:58 -03:00
parent 3d2cf50ebb
commit 7890181d7e

View File

@ -2365,9 +2365,9 @@ static int mov_preroll_write_stbl_atoms(AVIOContext *pb, MOVTrack *track)
decoded. */
if (roll_samples_remaining > 0)
distance = 0;
/* Verify distance is a minimum of 2 (60ms) packets and a maximum of
32 (2.5ms) packets. */
av_assert0(distance == 0 || (distance >= 2 && distance <= 32));
/* Verify distance is a maximum of 32 (2.5ms) packets. */
if (distance > 32)
return AVERROR_INVALIDDATA;
if (i && distance == sgpd_entries[entries].roll_distance) {
sgpd_entries[entries].count++;
} else {