Detect soft 2:3 pulldown (telecine) files and decode them at 23.976.
authorCarl Hetherington <cth@carlh.net>
Sun, 2 Aug 2020 20:24:05 +0000 (22:24 +0200)
committerCarl Hetherington <cth@carlh.net>
Sun, 2 Aug 2020 20:24:05 +0000 (22:24 +0200)
commitaf680761cf7c3e97660e8e55c68f42e90b026bf9
tree3245845f36c214023e936fce104c49b91168685c
parenta0545f58b3e90d3c09fa376900eafd6f8fb531cb
Detect soft 2:3 pulldown (telecine) files and decode them at 23.976.

DVD rips from NTSC DVDs are sometimes (always?) encoded using
soft 2:3 pulldown.  The video frames are actually 23.976 but
FFmpeg detects them as 29.97.  With the current approach of the video
decoder ignoring most PTSs and assuming a constant frame rate
it is vital that the file contains the number of frames per second
that the detected frame rate predicts.

This fixes large sync errors with NTSC DVD rips (#1790).
src/lib/ffmpeg_content.cc
src/lib/ffmpeg_examiner.cc
src/lib/ffmpeg_examiner.h