1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-19 05:49:09 +02:00

84815 Commits

Author SHA1 Message Date
wm4
ddef3d902f avformat, ffmpeg: deprecate old rotation API
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.

ffmpeg CLI has to be updated to use the new API. In particular, we must
not allow to leak the "rotate" tag into the muxer. Some muxers will
catch this properly (like mov), but others (like mkv) can add it as
generic tag. Note applications, which use libavformat and assume the
old rotate API, will interpret such "rotate" user tags as rotate
metadata (which it is not), and incorrectly rotate the video.

The ffmpeg/ffplay tools drop the use of the old API for muxing and
demuxing, as all muxers/demuxers support the new API. This will mean
that the tools will not mistakenly interpret per-track "rotate" user
tags as rotate metadata. It will _not_ be treated as regression.

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).

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-27 13:20:27 +02:00
Kyle Swanson
b12693facf libavcodec/opusenc: use correct format specifiers
Squelches the following compiler warnings:

libavcodec/opusenc.c:1051:16: warning: format specifies type 'long' but
the argument has type 'long long' [-Wformat]
               avctx->bit_rate/1000, clipped_rate/1000);
               ^~~~~~~~~~~~~~~~~~~~
libavcodec/opusenc.c:1051:38: warning: format specifies type 'long' but
the argument has type 'long long' [-Wformat]
               avctx->bit_rate/1000, clipped_rate/1000);
                                     ^~~~~~~~~~~~~~~~~
2017-03-27 09:35:48 +02:00
Michael Niedermayer
d65b59550b avcodec/avcodec: Correct and make consistent AVERROR() in comments
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-27 01:48:39 +02:00
Mark Thompson
a94972b2b2 ffmpeg: Remove hw_device_ctx output filter reinit hack
This was skipped in c17563c5d3c974a69709ebae0171534763b3051c because
it depended on the filter setup merge, but was forgotten after that
actually happened.

Fixes hwaccel fate for stream size change tests.
2017-03-26 20:38:44 +01:00
Michael Niedermayer
eaf6f10f1b avfilter/vf_signature: Replace uncommon spelling of seperate
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-26 20:34:47 +02:00
Michael Niedermayer
0ba22831e1 avcodec/h264idct_template: Fix multiple runtime error: signed integer overflow
Fixes: 712/clusterfuzz-testcase-6647676227551232

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-26 19:17:30 +02:00
Michael Niedermayer
73fb40dc87 avcodec/x86/idctdsp: Remove duplicate include
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-26 19:17:30 +02:00
Michael Niedermayer
9dd1573423 doc/bitstream_filters: Fix project name after merge
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-26 19:17:30 +02:00
James Almer
a044f8df6a ffprobe: support skip_samples packet side data information
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 22:42:57 -03:00
James Almer
b53ac2a528 avcodec/extract_extradata_bsf: use the parsing code from mpeg4video_split()
It's a simplifaction of the same code, originally commited as 3b5ad8fbf77.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 22:38:13 -03:00
James Almer
173fdc4dea avcodec/extract_extradata_bsf: use the parsing code from vc1_split()
It's a simplifaction of the same code, originally commited as b4b9a64bdb6.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 22:38:13 -03:00
James Almer
ec996163c8 avcodec/extract_extradata_bsf: use the parsing code from mpegvideo_split()
Changes to the parsing code originally committed to mpegvideo_parser.c
in 73fb23dc5a5.
Required by some samples, like PVA_test-partial.pva

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 22:38:13 -03:00
James Almer
d054069c15 avformat/mov: stop using deprecated codec flags
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 21:37:40 -03:00
James Almer
963cd953fb avfilter: stop using deprecated codec flags
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 21:37:06 -03:00
James Almer
f5c8d004c2 avcodec: stop using deprecated codec flags
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 21:37:05 -03:00
James Almer
2f05d18ee2 ffmpeg: stop using deprecated codec flags
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-25 21:37:05 -03:00
Timo Rothenpieler
bd717340a2 configure: cuvid hwaccels need the corresponding decoder, not the other way around 2017-03-25 22:39:01 +01:00
James Almer
09ce5519f3 fate/checkasm: fix use of uninitialized memory on hevc_add_res tests 2017-03-24 22:11:34 -03:00
James Almer
36eae45510 fate/checkasm: use LOCAL_ALINGED_32 on hevc_add_res tests 2017-03-24 22:11:22 -03:00
Clément Bœsch
b68068eed2 fate: mask errors while constructing report files
The first case was forgotten in 89790ba2bfc9d0dc5ad407c5724b6ee616ecde58.

Note: build_only=yes is one of the case where hiding the errors makes
sense.
2017-03-24 22:32:36 +01:00
Carl Eugen Hoyos
66c1c9b277 lavc/xface: Reorder conditions to silence a gcc warning.
libavcodec/xface.c:318:27: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
2017-03-24 19:51:36 +01:00
Michael Niedermayer
d92ad42fb3 avcodec/tests/celp_math: Change IsAlmostEqual() to a function
Fixes empty statement, found by ubitux

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-24 18:18:57 +01:00
Thomas Turner
824fe914fe avcodec/tests: added test for celp_math.c
Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-24 17:31:38 +01:00
Paul B Mahol
e1940d2458 avcodec/dnxhd_parser: take into account compressed frame size and skip it
Fixes #6214 and vsynth1-dnxhd-720p-hr-lb.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-03-24 15:44:01 +01:00
James Almer
ac42f08099 x86/hevc_add_res: merge missing changes from 3d6535983282bea542dac2e568ae50da5796be34
Unrolling the loops triplicates the size of the assembled output
while not generating any gain in performance.
2017-03-24 11:24:18 -03:00
Clément Bœsch
63ad47d76b Merge commit 'fbe425c8d29e473a8f69ae2dc52b1a10b77f3b44'
* commit 'fbe425c8d29e473a8f69ae2dc52b1a10b77f3b44':
  hap: Adjust printf length modifiers to match variable types

This commit is a noop, see 5a51ca2da7b76cad2a86476590c18b26a98eafbe

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:38:11 +01:00
Clément Bœsch
46f4f8ad86 Merge commit '1263b2039eb5aaf1522e9de9f07c787ab30a5f50'
* commit '1263b2039eb5aaf1522e9de9f07c787ab30a5f50':
  Adjust printf conversion specifiers to match variable signedness

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:34:39 +01:00
Clément Bœsch
1436769c57 Merge commit 'ca1e5eea0c7b72a6e30aa6488cfeced3a4853521'
* commit 'ca1e5eea0c7b72a6e30aa6488cfeced3a4853521':
  Remove some pointless TRACE level debug code

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:23:52 +01:00
Clément Bœsch
bb9fdd9f61 Merge commit '07eea5a5ded1141632aefecfa59dcdc26de2d7ea'
* commit '07eea5a5ded1141632aefecfa59dcdc26de2d7ea':
  nut: Drop pointless TRACE level debug code

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:21:04 +01:00
Clément Bœsch
50a06c841f Merge commit 'c3dad1bf3b5e04e01c291b1ac41e6bef0adf2206'
* commit 'c3dad1bf3b5e04e01c291b1ac41e6bef0adf2206':
  nsv: Drop unnecessary TRACE level debug code

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:19:10 +01:00
Clément Bœsch
e809c2e40d Merge commit '47756f51fe836959ffa5c6e2baeacbd71e150069'
* commit '47756f51fe836959ffa5c6e2baeacbd71e150069':
  dnxhdenc: Drop pointless, commented-out debug output

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:18:24 +01:00
Clément Bœsch
2a69724fd5 Merge commit '0456e684394dc5a7b98ab9ebb48396d743bf3730'
* commit '0456e684394dc5a7b98ab9ebb48396d743bf3730':
  audio_fifo: Drop write-only variable

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:17:55 +01:00
Clément Bœsch
4c840c249d Merge commit '0574780d7a196f87ddd89d6362f4c47f3532b4c4'
* commit '0574780d7a196f87ddd89d6362f4c47f3532b4c4':
  h264_loopfilter: Do not print value of uninitialized variable

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:15:15 +01:00
Clément Bœsch
fe7cae3880 Merge commit '255526998501f0040ae43fe4848c817a97fc578a'
* commit '255526998501f0040ae43fe4848c817a97fc578a':
  mpegaudio: Do not print value of uninitialized variable

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:14:03 +01:00
Clément Bœsch
3a3791a582 Merge commit '14cab426b03afd08bc9fe9b6e021a9543c4bdd7e'
* commit '14cab426b03afd08bc9fe9b6e021a9543c4bdd7e':
  build: Hardcode avversion.h dependency

This commit is a noop, see:
4d0ac9aee920cd95c35fbf4cd0a073baf86ff4c2
4ae87554f3c8bc54db572873f5049427a7e6cb31

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:12:21 +01:00
Clément Bœsch
65cb02301a Merge commit 'f22363c72968f1a1fc4881d8695ec7068b0aa03c'
* commit 'f22363c72968f1a1fc4881d8695ec7068b0aa03c':
  openssl: Avoid double semicolons after the GET_BIO_DATA macro

This commit is a noop, see fc83de7e1d0eab29942b4ceb67b49e66e7b99226

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:10:15 +01:00
Clément Bœsch
d1ab8c66cf Merge commit '052b97855de2396e46682bcbae97f95a258816d4'
* commit '052b97855de2396e46682bcbae97f95a258816d4':
  aviocat: Support avio options

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:07:50 +01:00
Clément Bœsch
99c9e00c68 Merge commit '99aeae20de4d09ea313fdc619d4e2df825155e62'
* commit '99aeae20de4d09ea313fdc619d4e2df825155e62':
  scale_npp: fix passthrough mode

This commit is a noop, see f524275ef93882f27c0067e85e8fb3c0fc1a762b

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:06:37 +01:00
Clément Bœsch
9da2b37668 Merge commit '0aec37e625821040c103641eec9c1e7a1efa2952'
* commit '0aec37e625821040c103641eec9c1e7a1efa2952':
  vaapi_decode: Remove vestigial unmap code
  vaapi_decode: Clear parameter buffers to fix picture reuse

This merge is a noop, see 79307ae56374b35cf12563a7c8e3e759658f847e

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:04:33 +01:00
Clément Bœsch
b062538841 Merge commit '754b20d7ebccbe8d316b12128c8cb433d5a516ac'
* commit '754b20d7ebccbe8d316b12128c8cb433d5a516ac':
  vaapi_h264: fix RefPicList[] field flags.

This commit is a noop, see 88325c2e0b63abf4c3482cecd43870015123764a

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 13:01:56 +01:00
Clément Bœsch
fc83de7e1d Merge commit 'ee050797664c7c74cae262ffab05006b55d47a11'
* commit 'ee050797664c7c74cae262ffab05006b55d47a11':
  openssl: Support version 1.1.0.

This commit is mostly a noop, see 798c6ecce50f26a53d48e2577a34fabe46b32eb9

Included the simplifications by Martin Storsjö and fixed the
GET_BIO_DATA() macro to prevent a warning after the simplifications.

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 12:59:21 +01:00
Clément Bœsch
2c47d24358 Merge commit '016387fe0fe3eff1a03ec0673bf4d2967f6cad94'
* commit '016387fe0fe3eff1a03ec0673bf4d2967f6cad94':
  rtmpdh: Don't use the OpenSSL DH struct

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 12:43:49 +01:00
Clément Bœsch
761bbb06ff Merge commit '2f806622e1270d3ed1d41a53049a19673dafbe70'
* commit '2f806622e1270d3ed1d41a53049a19673dafbe70':
  bktr: Use memset(0) instead of zero initialization for struct sigaction

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 12:41:31 +01:00
Clément Bœsch
3d4039f964 Merge commit 'ed48a9d8143d2575a4458589cebde69ec326afd8'
* commit 'ed48a9d8143d2575a4458589cebde69ec326afd8':
  checkasm: Add a test for HEVC add_residual

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 12:37:09 +01:00
Clément Bœsch
3d65359832 Merge commit '6d5636ad9ab6bd9bedf902051d88b7044385f88b'
* commit '6d5636ad9ab6bd9bedf902051d88b7044385f88b':
  hevc: x86: Add add_residual() SIMD optimizations

See a6af4bf64dae46356a5f91537a1c8c5f86456b37

This merge is only cosmetics (renames, space shuffling, etc).

The functionnal changes in the ASM are *not* merged:
- unrolling with %rep is kept
- ADD_RES_MMX_4_8 is left untouched: this needs investigation

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 12:33:25 +01:00
Clément Bœsch
40ac226014 lavc/x86/hevc: rename hevc_res_add to hevc_add_res
This will simplify incoming merge.
2017-03-24 11:45:23 +01:00
Clément Bœsch
71d541751e Merge commit '043b0b9fb1481053b712d06d2c5b772f1845b72b'
* commit '043b0b9fb1481053b712d06d2c5b772f1845b72b':
  Replace leftover uses of -aframes|-dframes|-vframes with -frames:a|d|v

The merge also includes all our own occurences.

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 11:40:35 +01:00
Clément Bœsch
30ac66abf0 Merge commit '4b07ebf1eb13561492f7e3c30a67f34415016b3e'
* commit '4b07ebf1eb13561492f7e3c30a67f34415016b3e':
  mov: Update colr values

Mostly noop, see a3cab3d43387add8914c1c471fc99d733227d81b

Only the use of av_color_{primaries,transfer,space}_name() is merged.

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 11:33:47 +01:00
Clément Bœsch
0b3decc596 Merge commit '0d9b9bd37f43ee29ad9f709d85c8f3be9db71104'
* commit '0d9b9bd37f43ee29ad9f709d85c8f3be9db71104':
  lavu: Add JEDEC P22 color primaries

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24 11:21:46 +01:00
Clément Bœsch
a44ab512e6 lavu/pixfmt: fix redundant comment
Mistake introduced in a1f6b1d9d816ad7e6a8f071b0efa2638bc80e65e.
2017-03-24 11:17:51 +01:00