Fix T53857: Incorrect framerate for videos imported from OBS
authorSergey Sharybin <sergey.vfx@gmail.com>
Mon, 26 Feb 2018 15:39:18 +0000 (16:39 +0100)
committerSergey Sharybin <sergey.vfx@gmail.com>
Fri, 9 Mar 2018 09:32:17 +0000 (10:32 +0100)
commit370a2d6917ebd8df5177fe4854a447e3839dddaa
tree09b737f9ecca9d5e29ff6552ff0b07ea999b665a
parentecab7bef6989752ff1a8c5fd1eab7b5ab159ed46
Fix T53857: Incorrect framerate for videos imported from OBS

This is an issue with which value to trust: fps vs. tbr. They both cam be
somewhat broken. Currently the idea is:

- If file was saved with FFmpeg AND we are decoding with FFmpeg we trust tbr.
- If we are decoding with Libav we use fps (there does not seem to be tbr in
  Libav, unless i'm missing something).
- All other cases we use fps.

Seems to work all good for files from T53857, T54148 and T51153. Ideally we
would need to collect some amount of regression files to make further tweaks
more scientific.

Reviewers: mont29

Reviewed By: mont29

Differential Revision: https://developer.blender.org/D3083
intern/ffmpeg/ffmpeg_compat.h
source/blender/imbuf/intern/anim_movie.c
source/blender/imbuf/intern/indexer.c
source/gameengine/VideoTexture/VideoFFmpeg.cpp