1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-03 05:10:03 +02:00
Commit Graph

84687 Commits

Author SHA1 Message Date
Clément Bœsch
1c9f4b5078 lavc/vp9: split into vp9{block,data,mvs}
This is following Libav layout to ease merges.
2017-03-27 21:38:21 +02:00
Rostislav Pehlivanov
487ca38e8b Changelog: reorder last entry
Entries are organized in descending chronological order.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-03-27 18:34:15 +01:00
Rostislav Pehlivanov
a8fe8d6b4a lavfi: remove af_asynts filter
Long overdue for removal, af_aresample should be used instead.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-03-27 14:06:16 +01:00
wm4
d7896e9b42 pthread_frame: fix uninitialized variable read
Could lead to random behavior. This possibly happened due to commit
32a5b63126. This should/could probably be simplified, but for no apply
a minimal fix to quell the errors.

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-27 13:21:20 +02:00
wm4
9e703ae30f pthread_frame: do not attempt to unlock a mutex on the wrong thread
async_mutex has is used in a very strange but intentional way: it is
locked by default, and unlocked only in regions that can be run
concurrently.

If the user was calling API functions to the same context from different
threads (in a safe way), this could unintentionally unlock the mutex on
a different thread than the previous lock operation. It's not allowed by
the pthread API.

Fix this by emulating a binary semaphore using a mutex and condition
variable. (Posix semaphores are not available on all platforms.)

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-27 13:21:15 +02:00
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 c17563c5d3 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 3b5ad8fbf7.

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

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 73fb23dc5a.
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 89790ba2bf.

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 3d65359832
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 5a51ca2da7

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:
4d0ac9aee9
4ae87554f3

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 fc83de7e1d

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 f524275ef9

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 79307ae563

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 88325c2e0b

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 798c6ecce5

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 a6af4bf64d

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