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>
pull/293/merge
James Almer 6 years ago
parent 3d2cf50ebb
commit 7890181d7e
  1. 6
      libavformat/movenc.c

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

Loading…
Cancel
Save