[FFmpeg-devel] [PATCH] avformat, ffmpeg: deprecate old rotation API
wm4
nfxjfg at googlemail.com
Thu Mar 23 08:26:23 EET 2017
On Wed, 22 Mar 2017 19:32:11 +0100
Michael Niedermayer <michael at niedermayer.cc> wrote:
> On Tue, Mar 21, 2017 at 08:42:58AM +0100, wm4 wrote:
> > The old "API" that signaled rotation as a metadata value has been
> > replaced by DISPLAYMATRIX side data quite a while ago.
> >
> > There is no reason to make muxers/demuxers/API users support both. In
> > addition, the metadata API is dangerous, as user tags could "leak" into
> > it, creating unintended features or bugs.
> >
> > Unfortunately, hacks have been added, that allow the user to override
> > rotation by setting metadata explicitly, e.g. via
> >
> > -metadata:s:v:0 rotate=0
> >
> > See references to trac #4560. fate-filter-meta-4560-rotate0 tests this.
> > It's easier to adjust the hack for supporting it than arguing for its
> > removal, so ffmpeg CLI now explicitly catches this case, and essentially
> > replaces the "rotate" value with a display matrix side data. (It would
> > be easier for both user and implementation to create an explicit option
> > for rotation.)
> >
> > When the code under FF_API_OLD_ROTATE_API is disabled, one FATE
> > reference file has to be updated (because "rotate" is not exported
> > anymore).
> > ---
> > cmdutils.c | 4 ++++
> > ffmpeg.c | 11 ++++++++---
> > ffmpeg.h | 1 +
> > ffmpeg_opt.c | 12 ++++++++----
> > libavformat/mov.c | 2 ++
> > libavformat/movenc.c | 4 ++++
> > libavformat/version.h | 3 +++
> > 7 files changed, 30 insertions(+), 7 deletions(-)
>
> this breaks rotate handling
>
> for example:
> ./ffmpeg -i ~/tickets/4012/IMG_4596.MOV -t 0.5 test.mov
> ./ffplay test.mov
> is upside down
>
> https://s.natalian.org/2014-10-07/IMG_4596.MOV
>
> [...]
>
With or without the FF_API symbol disabled?
More information about the ffmpeg-devel
mailing list