Commit Graph

37727 Commits

Author SHA1 Message Date
Ronald S. Bultje 73f863d751 fic: set pict_type/key_frame after (instead of during) slice decoding.
This fixes a race condition that was already documented in the source
code, and is also reported by tsan in fate-fic-avi.
2017-03-31 08:26:23 -04:00
Ronald S. Bultje 9e2050b698 codec_desc: mark fraps as an intra-only codec.
Fixes reported race conditions by tsan in fate-avio-direct.
2017-03-31 08:26:23 -04:00
Ronald S. Bultje f800d6508d dnxhd: initialize DNXHDContext::avctx to each thread's respective one.
Otherwise all thread's private contexts have the avctx pointer set to
the AVCodecContext of the first thread, which means all writes to
ctx->avctx->* (in e.g. read_header) are effectively race conditions.

Fixes fate-dnxhd under tsan.
2017-03-31 08:26:23 -04:00
Michael Niedermayer 58b867a7cf Bump minor versions for master after release/3.3 branchpoint
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-31 13:21:06 +02:00
Michael Niedermayer fc332f3e29 Bump minor versions for staring release/3.3 branch
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-31 13:21:06 +02:00
Michael Niedermayer c217027c11 avcodec/mips: fix build
Found-by: Shivraj Patil <shivraj.patil@imgtec.com>
Suggested-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-31 12:28:58 +02:00
Clément Bœsch e3287077ec Merge commit '67deba8a416d818f3d95aef0aa916589090396e2'
* commit '67deba8a416d818f3d95aef0aa916589090396e2':
  Use avpriv_report_missing_feature() where appropriate

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-31 10:40:34 +02:00
Clément Bœsch 82ad9cbd32 Merge commit '17dac56b8fdd80c594c39b76de3f27a7949afbde'
* commit '17dac56b8fdd80c594c39b76de3f27a7949afbde':
  lavu: Rename ycgco color space appropriately

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-31 09:46:51 +02:00
Clément Bœsch 1ea0df14c3 Merge commit '0361e4dcb4d394c88c33364415a3b8fe315b67d1'
* commit '0361e4dcb4d394c88c33364415a3b8fe315b67d1':
  h264_qpel: x86: Move function with only one instance out of template macro

Note: warning is present with clang.

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-31 09:44:04 +02:00
Mark Thompson ebce133228 pthread_frame: Propagate sw_pix_fmt across threads
This is required by the VP9 hwaccels (both DXVA2 and VAAPI) when
threads are enabled.

Tested-by: Hendrik Leppkes <h.leppkes@gmail.com>
2017-03-31 00:23:02 +01:00
Michael Niedermayer fe46d92c15 avcodec/clearvideo: Do not lose the return code of decode_mb()
Fixes CID1401671

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-30 23:35:18 +02:00
Mark Thompson ff821fdfce Merge commit '4ab61cd983b539749bd621ea271624ddb5196a8e'
* commit '4ab61cd983b539749bd621ea271624ddb5196a8e':
  qsv{enc,dec}: extend the internal frame allocator

Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-30 22:07:57 +01:00
Mark Thompson c0f2a8eac1 Merge commit '00aeedd84105a17f414185bd33ecadebeddb3a27'
* commit '00aeedd84105a17f414185bd33ecadebeddb3a27':
  qsv{dec,enc}: use a struct as a memory id with internal memory allocator

Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-30 22:06:03 +01:00
Mark Thompson 2f18e452f8 Merge commit '404e51478ecad060249d5b9bee6ab39a8a9d8c1c'
* commit '404e51478ecad060249d5b9bee6ab39a8a9d8c1c':
  qsv{dec,enc}: always use an internal mfxFrameSurface1

Minor fixups for differences in the QSV encoder because of a53cc.

Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-30 22:00:03 +01:00
Michael Niedermayer e976e68fc5 avcodec/atrac3: Check init_get_bits8() for failure
This is more for correctness than actually fixing a missing error path

Fixes CID1399967

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-30 22:13:38 +02:00
Clément Bœsch 03f5e80bdb Merge commit '67351924fa91dea4339109100a4c0689f006581f'
* commit '67351924fa91dea4339109100a4c0689f006581f':
  Drop unreachable break and return statements

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-30 10:26:29 +02:00
Clément Bœsch 77248d1218 Merge commit '6354957a95022864746180525680cca872ab0e0a'
* commit '6354957a95022864746180525680cca872ab0e0a':
  dnxhdenc: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-30 10:21:41 +02:00
Clément Bœsch 7b89015715 Merge commit 'c778eb15b89d875cb246b18f65b3b4321cb1e7d6'
* commit 'c778eb15b89d875cb246b18f65b3b4321cb1e7d6':
  pixblockdsp: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-30 10:14:21 +02:00
Clément Bœsch b76dd6a678 Merge commit 'ee59f0540875ab42496af2aacddd942757707683'
* commit 'ee59f0540875ab42496af2aacddd942757707683':
  intrax8: Have function signature match across declaration and definition

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-03-30 10:03:59 +02:00
Martin Vignali b4016ef31a avcodec/exr: add support for uint32 2017-03-29 23:28:35 +02:00
Clément Bœsch a51867ee6b Merge commit 'baab87c4f30e75ea309294b06adcd01ce678bdc5'
* commit 'baab87c4f30e75ea309294b06adcd01ce678bdc5':
  bink: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-29 15:09:26 +02:00
Clément Bœsch d467740f45 lavc/idctdsp: use prefix restrict with av_ 2017-03-29 15:07:29 +02:00
Clément Bœsch eaa67bb9c0 lavc/pthread_slice: remove pointless condition 2017-03-29 14:49:29 +02:00
Clément Bœsch 549045254c Fix all -Wformat warnings raised by DJGPP 2017-03-29 14:49:29 +02:00
Clément Bœsch 2d12b910f7 lavc: use av_fourcc2str() where appropriate 2017-03-29 14:49:29 +02:00
Clément Bœsch 67e370ee52 lavc: fix usages of av_get_codec_tag_string() 2017-03-29 14:49:29 +02:00
Clément Bœsch f156d35321 lavc: deprecate av_get_codec_tag_string() 2017-03-29 14:49:29 +02:00
Clément Bœsch c1d822c554 Merge commit '4cf2ffb7c45840b09bc49e34da88d4053dd442cb'
* commit '4cf2ffb7c45840b09bc49e34da88d4053dd442cb':
  idct: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-29 14:37:35 +02:00
Clément Bœsch 35494441b5 Merge commit '39cea6570c11a49b64b2ec8d71e218db03b4c742'
* commit '39cea6570c11a49b64b2ec8d71e218db03b4c742':
  aactab: Move extern keyword to the front of array declarations

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-29 14:34:58 +02:00
wm4 4cf1f68903 pthread_frame: minor simplification to error handling
Get rid of the "ret" variable, and always use err. Report the packet as
consumed if err is unset. This should be equivalent to the old code,
which obviously required err=0 for p->result>=0 (and otherwise,
p->result must have had the value err was last set to). The code block
added by commit 32a5b63126 is also not needed anymore, because the new
code strictly returns err if it's >=0.

Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
2017-03-29 12:17:40 +02:00
James Almer 91ccd38c0b avcodec/ac3dsp: add special-case handling for the C downmix_fixed function
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2017-03-28 23:09:17 -03:00
James Almer c31cbeef58 aarch64/vp9dsp: add missing header includes 2017-03-28 23:02:09 -03:00
Ronald S. Bultje 027ee9b3ed pthread_frame: don't sync items between threads for intra-only codecs.
Intra-only codecs should either be able to read these items from the
bitstream, or they should be set upon codec initialization. In both
cases, syncing these items at runtime is unnecessary.

In practice, this fixes race conditions for decoders that read these
values from the bitstream.
2017-03-28 18:04:27 -04:00
Ronald S. Bultje bddabfaab6 hevc: initialize no_rasl_output_flag in hevc_frame_start().
This prevents a race condition in files with multiple slices per frame.
2017-03-28 18:04:27 -04:00
Ronald S. Bultje 8c2aa45d4a h264: revert 1189af4292.
The patch introduces race conditions.
2017-03-28 18:04:27 -04:00
Ronald S. Bultje 0c46641784 vp9: split out generic decoding skeleton interface API from VP9 types.
This allows vp9dsp.h to only include the VP9 types header, and not the
decoder skeleton interface which is for hardware decoders (dxva2/vaapi).
2017-03-28 18:04:27 -04:00
Ronald S. Bultje 6d0d1c4a43 vp9: split out reconstruction functions in their own source file. 2017-03-28 18:04:26 -04:00
Ronald S. Bultje b823bbc10c vp9: split out loopfilter functions in their own source file. 2017-03-28 18:04:26 -04:00
Ronald S. Bultje f8c019944d vp9: re-split the decoder/format/dsp interface header files.
The advantage here is that the internal software decoder interface is
not exposed to the DSP functions or the hardware accelerations.
2017-03-28 18:04:26 -04:00
Ronald S. Bultje 5ba8c3a0ed dirac: make initialization of arithmetic coder tables threadsafe. 2017-03-28 11:21:27 -04:00
James Almer 3fe7bb2bcf avcodec/extract_extradata_bsf: add missing break statement to extract_extradata_vc1 2017-03-28 01:14:17 -03:00
Clément Bœsch e59a4d1df7 Merge commit '801ac7156d3efb8e088fb6024f568eb36a293887'
* commit '801ac7156d3efb8e088fb6024f568eb36a293887':
  qsv: Be informative when reporting that no data has been consumed

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-27 22:19:09 +02:00
Clément Bœsch fa85d8dbb4 Merge commit '30015305f3b523ed7640f2c3c58b017140533c58'
* commit '30015305f3b523ed7640f2c3c58b017140533c58':
  Use avpriv_request_sample() where appropriate

Only the roqvideo chunk is merged because we actually support 24bpp
flic, see 5781c983d8.

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-27 22:18:26 +02:00
Clément Bœsch 349a26f509 Merge commit '7a2b2b6a92c4b528ecb640790eca0aa790d858f4'
* commit '7a2b2b6a92c4b528ecb640790eca0aa790d858f4':
  dxtory: Drop nonsense ISO C printf conversion specifiers for standard types

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-27 22:05:50 +02:00
Clément Bœsch 5dd37c6847 lavc/vp9: clarify inv_recenter_nonneg
Ends up identical to Libav.
2017-03-27 21:38:21 +02:00
Clément Bœsch e6ffdc9582 lavc/vp9: shuffle header declaration
This reduces diff with Libav.
2017-03-27 21:38:21 +02:00
Clément Bœsch 37814a21cb lavc/vp9: consistent use of typedef instead of struct 2017-03-27 21:38:21 +02:00
Clément Bœsch 875f695576 lavc/vp9: misc cosmetics
Imported from Libav
2017-03-27 21:38:21 +02:00
Clément Bœsch ff8436ba76 lavc/vp9: rename res to ret 2017-03-27 21:38:21 +02:00
Clément Bœsch 0f8ae9d7b2 lavc/vp9: split a few assignment out of ifs 2017-03-27 21:38:21 +02:00