Opened 7 years ago

Last modified 4 years ago

#6080 new defect

Invalid negative granulepos on Ogg Theora packets reported as wildly large DTS

Reported by: Brion Vibber Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: ogg, theora
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug: Ogg Theora packets with invalid negative granulepos end up reporting a wildly large packet DTS in libavformat instead of AV_NOPTS_VALUE when the file is demuxed with libavformat.

This causes downstream problems with ffmpeg2theora, which takes the bogus DTS at face value and may try inserting billions of duplicate frames to make up for lost time.

How to reproduce:

% curl -o bogus.ogv https://upload.wikimedia.org/wikipedia/commons/archive/1/11/20170113175618%21Operating-Mechanism-and-Molecular-Dynamics-of-Pheromone-Binding-Protein-ASP1-as-Influenced-by-pH-pone.0110565.s001.ogv
% ./ffprobe -show_packets bogus.ogv  | egrep 'dts=\d{5,}'
ffmpeg version 3.2.2 (git master)
built on 2017-01-13 - Apple LLVM version 8.0.0 (clang-800.0.42.1)

Change History (2)

comment:1 by Brion Vibber, 7 years ago

Downstream bug at Wikimedia: https://phabricator.wikimedia.org/T155247

Patch submitted to mailing ffmpeg-devel.

Note: See TracTickets for help on using tickets.