ffmpeg.git
3 years agoMerge commit 'baab87c4f30e75ea309294b06adcd01ce678bdc5'
Clément Bœsch [Wed, 29 Mar 2017 13:09:19 +0000 (15:09 +0200)]
Merge commit 'baab87c4f30e75ea309294b06adcd01ce678bdc5'

* commit 'baab87c4f30e75ea309294b06adcd01ce678bdc5':
  bink: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <u@pkh.me>
3 years agolavc/idctdsp: use prefix restrict with av_
Clément Bœsch [Wed, 29 Mar 2017 13:07:29 +0000 (15:07 +0200)]
lavc/idctdsp: use prefix restrict with av_

3 years agolavc/pthread_slice: remove pointless condition
Clément Bœsch [Wed, 29 Mar 2017 10:20:32 +0000 (12:20 +0200)]
lavc/pthread_slice: remove pointless condition

3 years agoFix all -Wformat warnings raised by DJGPP
Clément Bœsch [Mon, 27 Mar 2017 19:31:46 +0000 (21:31 +0200)]
Fix all -Wformat warnings raised by DJGPP

3 years agolavu/mem: clamp alignment to 16 for DJGPP
Clément Bœsch [Mon, 27 Mar 2017 18:30:24 +0000 (20:30 +0200)]
lavu/mem: clamp alignment to 16 for DJGPP

See also https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80208

3 years agolavfi/xbr: undef PI if defined
Clément Bœsch [Sun, 26 Mar 2017 18:51:14 +0000 (20:51 +0200)]
lavfi/xbr: undef PI if defined

This conflict with the DJGPP libc math.h which includes a PI macro (to
M_PI).

We cannot make DJGPP POSIX only (using -D_POSIX_SOURCE) to avoid this
kind of symbols conflicts due to the lack of both posix_memalign and
memalign (DJGPP non standard function) in that POSIX mode. We currently
rely on memalign for aligned heap allocation.

3 years agolavfi/psnr: rename pow2 to pow_2
Clément Bœsch [Sun, 26 Mar 2017 18:43:11 +0000 (20:43 +0200)]
lavfi/psnr: rename pow2 to pow_2

This conflict with the DJGPP libc which includes a pow2 function¹

We cannot make DJGPP POSIX only (using -D_POSIX_SOURCE) to avoid this
kind of symbols conflicts due to the lack of both posix_memalign and
memalign (DJGPP non standard function) in that POSIX mode. We currently
rely on memalign for aligned heap allocation.

[1]: http://www.delorie.com/djgpp/doc/libc-2.02/libc_536.html

3 years agolavfi/dynaudnorm: rename pow2 to pow_2
Clément Bœsch [Sun, 26 Mar 2017 18:41:41 +0000 (20:41 +0200)]
lavfi/dynaudnorm: rename pow2 to pow_2

This conflict with the DJGPP libc which includes a pow2 function¹

We cannot make DJGPP POSIX only (using -D_POSIX_SOURCE) to avoid this
kind of symbols conflicts due to the lack of both posix_memalign and
memalign (DJGPP non standard function) in that POSIX mode. We currently
rely on memalign for aligned heap allocation.

[1]: http://www.delorie.com/djgpp/doc/libc-2.02/libc_536.html

3 years agolavc: use av_fourcc2str() where appropriate
Clément Bœsch [Mon, 27 Mar 2017 07:45:11 +0000 (09:45 +0200)]
lavc: use av_fourcc2str() where appropriate

3 years agolavf: use av_fourcc2str() where appropriate
Clément Bœsch [Mon, 27 Mar 2017 07:45:35 +0000 (09:45 +0200)]
lavf: use av_fourcc2str() where appropriate

3 years agolavf/ape: remove unused magic field
Clément Bœsch [Mon, 27 Mar 2017 07:41:34 +0000 (09:41 +0200)]
lavf/ape: remove unused magic field

3 years agoffmpeg_videotoolbox: fix usage of av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:37:09 +0000 (01:37 +0200)]
ffmpeg_videotoolbox: fix usage of av_get_codec_tag_string()

3 years agoffprobe: fix usage of av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:36:53 +0000 (01:36 +0200)]
ffprobe: fix usage of av_get_codec_tag_string()

3 years agotools/fourcc2pixfmt: fix usages of av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:32:13 +0000 (01:32 +0200)]
tools/fourcc2pixfmt: fix usages of av_get_codec_tag_string()

3 years agolavf: fix usages of av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:31:52 +0000 (01:31 +0200)]
lavf: fix usages of av_get_codec_tag_string()

3 years agolavc: fix usages of av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:31:37 +0000 (01:31 +0200)]
lavc: fix usages of av_get_codec_tag_string()

3 years agolavc: deprecate av_get_codec_tag_string()
Clément Bœsch [Sun, 26 Mar 2017 23:11:41 +0000 (01:11 +0200)]
lavc: deprecate av_get_codec_tag_string()

3 years agolavu: add av_fourcc_make_string() and av_fourcc2str()
Clément Bœsch [Sun, 26 Mar 2017 23:05:18 +0000 (01:05 +0200)]
lavu: add av_fourcc_make_string() and av_fourcc2str()

3 years agoMerge commit '4cf2ffb7c45840b09bc49e34da88d4053dd442cb'
Clément Bœsch [Wed, 29 Mar 2017 12:37:35 +0000 (14:37 +0200)]
Merge commit '4cf2ffb7c45840b09bc49e34da88d4053dd442cb'

* commit '4cf2ffb7c45840b09bc49e34da88d4053dd442cb':
  idct: Have function pointer prototype match implementation

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '39cea6570c11a49b64b2ec8d71e218db03b4c742'
Clément Bœsch [Wed, 29 Mar 2017 12:34:58 +0000 (14:34 +0200)]
Merge commit '39cea6570c11a49b64b2ec8d71e218db03b4c742'

* commit '39cea6570c11a49b64b2ec8d71e218db03b4c742':
  aactab: Move extern keyword to the front of array declarations

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '85baef4ff1512bcc2544928bfa5f42072903a691'
Clément Bœsch [Wed, 29 Mar 2017 12:26:21 +0000 (14:26 +0200)]
Merge commit '85baef4ff1512bcc2544928bfa5f42072903a691'

* commit '85baef4ff1512bcc2544928bfa5f42072903a691':
  vf_drawtext: Move static keyword to beginning of variable declaration

This commit is mostly a noop, see:
d9e2aceb7f1c712a52672129ca7971872b030e1e
6d7aa437e1108dd8142ae5b850a00c109f95f07f

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '636515c324facaa14ccd8ab0732740a240a31ba9'
Clément Bœsch [Wed, 29 Mar 2017 12:24:20 +0000 (14:24 +0200)]
Merge commit '636515c324facaa14ccd8ab0732740a240a31ba9'

* commit '636515c324facaa14ccd8ab0732740a240a31ba9':
  examples/decode_video: remove a stray unrelated comment

This commit is a noop, see 8c4753f7f5f1f65532e841cffa3b4fdb368c2fdf

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '8191f960a669819db4de33a2439ded1630b8a73e'
Clément Bœsch [Wed, 29 Mar 2017 12:22:32 +0000 (14:22 +0200)]
Merge commit '8191f960a669819db4de33a2439ded1630b8a73e'

* commit '8191f960a669819db4de33a2439ded1630b8a73e':
  examples/decode_video: constify the AVCodec instance

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '5b4d7ac7ae5d821cfa6ab89f8eab4d31851ef32c'
Clément Bœsch [Wed, 29 Mar 2017 12:20:25 +0000 (14:20 +0200)]
Merge commit '5b4d7ac7ae5d821cfa6ab89f8eab4d31851ef32c'

* commit '5b4d7ac7ae5d821cfa6ab89f8eab4d31851ef32c':
  examples/encode_video: use the AVFrame API for allocating the frame

Merged-by: Clément Bœsch <u@pkh.me>
3 years agodoc/examples/{de,en}code_audio: fix includes
Clément Bœsch [Wed, 29 Mar 2017 12:18:10 +0000 (14:18 +0200)]
doc/examples/{de,en}code_audio: fix includes

Consistent with other examples.

3 years agoMerge commit 'd0a603a534a0ee4b255e5e72742428a7f7f42b83'
Clément Bœsch [Wed, 29 Mar 2017 12:16:33 +0000 (14:16 +0200)]
Merge commit 'd0a603a534a0ee4b255e5e72742428a7f7f42b83'

* commit 'd0a603a534a0ee4b255e5e72742428a7f7f42b83':
  examples/encode_video: set the framerate

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit 'e02524025bce2c8bf8b5bffd96479785c75a70d4'
Clément Bœsch [Wed, 29 Mar 2017 12:15:01 +0000 (14:15 +0200)]
Merge commit 'e02524025bce2c8bf8b5bffd96479785c75a70d4'

* commit 'e02524025bce2c8bf8b5bffd96479785c75a70d4':
  examples/encode_video: constify the AVCodec instance

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '7b1f03477f1a43d2261fbd83e50a4ad90c7f806d'
Clément Bœsch [Wed, 29 Mar 2017 12:07:39 +0000 (14:07 +0200)]
Merge commit '7b1f03477f1a43d2261fbd83e50a4ad90c7f806d'

* commit '7b1f03477f1a43d2261fbd83e50a4ad90c7f806d':
  examples/avcodec: split the remaining two examples into separate files

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '90265814f993098d79b0a0f40745ecdb403fbf56'
Clément Bœsch [Wed, 29 Mar 2017 11:45:51 +0000 (13:45 +0200)]
Merge commit '90265814f993098d79b0a0f40745ecdb403fbf56'

* commit '90265814f993098d79b0a0f40745ecdb403fbf56':
  examples/decode_audio: constify the AVCodec instance

Merged-by: Clément Bœsch <u@pkh.me>
3 years agodoc/examples/encode_audio: add missing return
Clément Bœsch [Wed, 29 Mar 2017 11:45:09 +0000 (13:45 +0200)]
doc/examples/encode_audio: add missing return

3 years agoMerge commit 'f5df897c4b61985e3afc89ba1290649712ff438e'
Clément Bœsch [Wed, 29 Mar 2017 11:38:29 +0000 (13:38 +0200)]
Merge commit 'f5df897c4b61985e3afc89ba1290649712ff438e'

* commit 'f5df897c4b61985e3afc89ba1290649712ff438e':
  examples/avcodec: split audio decoding into a separate example

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit 'f76698e759a08e8d3b629c06edb0439f474e7fee'
Clément Bœsch [Wed, 29 Mar 2017 11:31:44 +0000 (13:31 +0200)]
Merge commit 'f76698e759a08e8d3b629c06edb0439f474e7fee'

* commit 'f76698e759a08e8d3b629c06edb0439f474e7fee':
  examples/encode_audio: use the AVFrame API for allocating the data

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit 'c00a11ab383ff276a2ab2fdba577945e48d465be'
Clément Bœsch [Wed, 29 Mar 2017 11:30:16 +0000 (13:30 +0200)]
Merge commit 'c00a11ab383ff276a2ab2fdba577945e48d465be'

* commit 'c00a11ab383ff276a2ab2fdba577945e48d465be':
  examples/encode_audio: constify AVCodec instances

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '40aaa8dadfd1c69ff4460d04750e1403b5535a6d'
Clément Bœsch [Wed, 29 Mar 2017 11:29:00 +0000 (13:29 +0200)]
Merge commit '40aaa8dadfd1c69ff4460d04750e1403b5535a6d'

* commit '40aaa8dadfd1c69ff4460d04750e1403b5535a6d':
  examples/avcodec: split audio encoding into a separate example

Merged-by: Clément Bœsch <u@pkh.me>
3 years agopthread_frame: minor simplification to error handling
wm4 [Mon, 27 Mar 2017 12:25:53 +0000 (14:25 +0200)]
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 32a5b631267 is also not needed anymore, because the new
code strictly returns err if it's >=0.

Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
3 years agoavcodec/ac3dsp: add special-case handling for the C downmix_fixed function
James Almer [Wed, 22 Mar 2017 15:28:58 +0000 (12:28 -0300)]
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>
3 years agofate: add tests for ac3_fixed 5.1 downmix
James Almer [Wed, 22 Mar 2017 15:35:44 +0000 (12:35 -0300)]
fate: add tests for ac3_fixed 5.1 downmix

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoaarch64/vp9dsp: add missing header includes
James Almer [Wed, 29 Mar 2017 02:02:09 +0000 (23:02 -0300)]
aarch64/vp9dsp: add missing header includes

3 years agopthread_frame: don't sync items between threads for intra-only codecs.
Ronald S. Bultje [Tue, 28 Mar 2017 19:04:46 +0000 (15:04 -0400)]
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.

3 years agohevc: initialize no_rasl_output_flag in hevc_frame_start().
Ronald S. Bultje [Mon, 27 Mar 2017 13:56:38 +0000 (09:56 -0400)]
hevc: initialize no_rasl_output_flag in hevc_frame_start().

This prevents a race condition in files with multiple slices per frame.

3 years agoh264: revert 1189af429211ac650aac730368a6cf5b23756605.
Ronald S. Bultje [Mon, 27 Mar 2017 13:39:24 +0000 (09:39 -0400)]
h264: revert 1189af429211ac650aac730368a6cf5b23756605.

The patch introduces race conditions.

3 years agovp9: split out generic decoding skeleton interface API from VP9 types.
Ronald S. Bultje [Tue, 28 Mar 2017 02:05:17 +0000 (22:05 -0400)]
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).

3 years agovp9: split out reconstruction functions in their own source file.
Ronald S. Bultje [Mon, 27 Mar 2017 21:32:20 +0000 (17:32 -0400)]
vp9: split out reconstruction functions in their own source file.

3 years agovp9: split out loopfilter functions in their own source file.
Ronald S. Bultje [Mon, 27 Mar 2017 20:59:06 +0000 (16:59 -0400)]
vp9: split out loopfilter functions in their own source file.

3 years agovp9: re-split the decoder/format/dsp interface header files.
Ronald S. Bultje [Mon, 27 Mar 2017 20:47:46 +0000 (16:47 -0400)]
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.

3 years agolavfi: fix race when func rets holder is NULL
Clément Bœsch [Tue, 28 Mar 2017 16:00:02 +0000 (18:00 +0200)]
lavfi: fix race when func rets holder is NULL

If ret is NULL, a dummy common holder is created to hold *all* the
parallel function returns, which gets written concurrently. This commit
simplify the whole logic by simply not writing to that holder when not
set.

3 years agoavdevice/decklink: deprecate @mode syntax in device name to specify mode
Marton Balint [Sat, 25 Mar 2017 16:52:11 +0000 (17:52 +0100)]
avdevice/decklink: deprecate @mode syntax in device name to specify mode

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agoavdevice/decklink_enc: convert to std::atomic
Marton Balint [Sat, 25 Mar 2017 16:42:17 +0000 (17:42 +0100)]
avdevice/decklink_enc: convert to std::atomic

Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agoconfigure: use c++11 and fallback to c++0x for c++ files
Marton Balint [Sat, 25 Mar 2017 16:36:39 +0000 (17:36 +0100)]
configure: use c++11 and fallback to c++0x for c++ files

Needed for the C+11 atomics. Also change add_cxxflags to check_cxxflags.

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
3 years agodoc/examples/transcoding: convert to codecpar
James Almer [Sat, 27 Aug 2016 18:02:44 +0000 (15:02 -0300)]
doc/examples/transcoding: convert to codecpar

Reviewed-by: Matthieu Bouron <matthieu.bouron@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years agodirac: make initialization of arithmetic coder tables threadsafe.
Ronald S. Bultje [Mon, 27 Mar 2017 15:24:43 +0000 (11:24 -0400)]
dirac: make initialization of arithmetic coder tables threadsafe.

3 years agodoc/examples/extract_mvs: switch to codecpar
Matthieu Bouron [Tue, 28 Mar 2017 11:46:36 +0000 (13:46 +0200)]
doc/examples/extract_mvs: switch to codecpar

3 years agodoc/examples/remuxing: switch to codecpar
Matthieu Bouron [Tue, 28 Mar 2017 09:57:26 +0000 (11:57 +0200)]
doc/examples/remuxing: switch to codecpar

Also limits remuxing to audio, video and subtitle streams.

3 years agodoc/examples/muxing: re-indent block
Matthieu Bouron [Tue, 28 Mar 2017 10:38:41 +0000 (12:38 +0200)]
doc/examples/muxing: re-indent block

3 years agodoc/examples/filtering_*: switch to codecpar
Clément Bœsch [Tue, 28 Mar 2017 09:29:19 +0000 (11:29 +0200)]
doc/examples/filtering_*: switch to codecpar

3 years agoavformat/flvdec: check FLVHeader PreviousTagSize0
Steven Liu [Tue, 28 Mar 2017 08:51:28 +0000 (16:51 +0800)]
avformat/flvdec: check FLVHeader PreviousTagSize0

refer to SPEC:
Annex E. The FLV File Format said:
E.3 TheFLVFileBody have a table:
Field            Type    Comment
PreviousTagSize0 UI32    Always 0

Reviewed-by: Bela Bodecs <bodecsb@vivanet.hu>
Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
3 years agoavcodec/extract_extradata_bsf: add missing break statement to extract_extradata_vc1
James Almer [Tue, 28 Mar 2017 04:14:17 +0000 (01:14 -0300)]
avcodec/extract_extradata_bsf: add missing break statement to extract_extradata_vc1

3 years agoffprobe: free log buffer's parent_name during cleanup
James Almer [Mon, 27 Mar 2017 23:37:29 +0000 (20:37 -0300)]
ffprobe: free log buffer's parent_name during cleanup

Fixes memleak.

3 years agodoc/ffprobe: add -show_log option
Dave Rice [Tue, 14 Mar 2017 17:11:14 +0000 (13:11 -0400)]
doc/ffprobe: add -show_log option

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffprobe.xsd: add frame log data
Dave Rice [Tue, 14 Mar 2017 16:59:43 +0000 (12:59 -0400)]
ffprobe.xsd: add frame log data

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffprobe: Support adding av_log output to frames
Michael Niedermayer [Tue, 31 May 2016 19:23:27 +0000 (21:23 +0200)]
ffprobe: Support adding av_log output to frames

adding demuxer and other logs should be easy
This forces single threaded decoding for simplicity
It also requires pthreads, this could be avoided either with
some lockless tricks or simply by assuming av_log would never be called from
another thread.

Fixes Ticket5521

Previous version reviewed by Stefano
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavformat/movenc: allow st3d and sv3d mov atoms to be written in strict unofficial...
James Almer [Mon, 27 Mar 2017 20:10:33 +0000 (17:10 -0300)]
avformat/movenc: allow st3d and sv3d mov atoms to be written in strict unofficial mode

They are unofficial extensions to the format for the time being, not
an experimental feature.

3 years agoavformat/movenc: restrict st3d and sv3d mov atoms to MODE_MP4
James Almer [Mon, 27 Mar 2017 20:09:45 +0000 (17:09 -0300)]
avformat/movenc: restrict st3d and sv3d mov atoms to MODE_MP4

3 years agomovenc: Add support for writing st3d and sv3d boxes.
Aaron Colwell [Mon, 27 Mar 2017 15:00:12 +0000 (08:00 -0700)]
movenc: Add support for writing st3d and sv3d boxes.

Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoMerge commit '064f19f39e2f17927278c6ad8fe884a5b92310d6'
James Almer [Mon, 27 Mar 2017 21:50:27 +0000 (18:50 -0300)]
Merge commit '064f19f39e2f17927278c6ad8fe884a5b92310d6'

* commit '064f19f39e2f17927278c6ad8fe884a5b92310d6':
  avconv: support parsing bitstream filter options

This commit is a noop, see 5ef19590802f000299e418143fc2301e3f43affe

Merged-by: James Almer <jamrial@gmail.com>
3 years agoMerge commit 'ecd2ec69ce10e13f6ede353d2def7ce9f45c1a7d'
James Almer [Mon, 27 Mar 2017 21:23:02 +0000 (18:23 -0300)]
Merge commit 'ecd2ec69ce10e13f6ede353d2def7ce9f45c1a7d'

* commit 'ecd2ec69ce10e13f6ede353d2def7ce9f45c1a7d':
  mov: Evaluate the movie display matrix

This commit is a noop, see 7010ebdf1ff7514fa505ff166fb60ce762a46b8b

Merged-by: James Almer <jamrial@gmail.com>
3 years agoMerge commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c'
James Almer [Mon, 27 Mar 2017 21:19:02 +0000 (18:19 -0300)]
Merge commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c'

* commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c':
  fate: Add tests for mov display matrix

Adapted to use ffprobe -show_entries

Merged-by: James Almer <jamrial@gmail.com>
3 years agoMerge commit '7d308bf84bda78d47c01439ff625bb06624991a7'
Clément Bœsch [Mon, 27 Mar 2017 20:30:23 +0000 (22:30 +0200)]
Merge commit '7d308bf84bda78d47c01439ff625bb06624991a7'

* commit '7d308bf84bda78d47c01439ff625bb06624991a7':
  avprobe: Add -show_stream_entry to get a single stream property

This commit is a noop, we have a generic -show_entry option.

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '218ed7250c103a975e874fb16e8e5941f4cbe223'
Clément Bœsch [Mon, 27 Mar 2017 20:28:49 +0000 (22:28 +0200)]
Merge commit '218ed7250c103a975e874fb16e8e5941f4cbe223'

* commit '218ed7250c103a975e874fb16e8e5941f4cbe223':
  openssl: Allow newer TLS versions than TLSv1

This commit is a noop, see e8634fb92e2f624f19ee5fced6481d8ece503119

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit 'dad7514f9ec8a8c5e44d70fcfbbcedeff16f7e13'
Clément Bœsch [Mon, 27 Mar 2017 20:25:33 +0000 (22:25 +0200)]
Merge commit 'dad7514f9ec8a8c5e44d70fcfbbcedeff16f7e13'

* commit 'dad7514f9ec8a8c5e44d70fcfbbcedeff16f7e13':
  xcb: Add all the libraries to the link line explicitly

This commit is a noop. It appears we already link against the xcb shape
library since 54170a33c2c97b0f50347f57e8f0f2ea681dca1d.

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit 'c541a44e029e8a4f21db028c34fee3ad1c10a409'
Clément Bœsch [Mon, 27 Mar 2017 20:21:18 +0000 (22:21 +0200)]
Merge commit 'c541a44e029e8a4f21db028c34fee3ad1c10a409'

* commit 'c541a44e029e8a4f21db028c34fee3ad1c10a409':
  Revert "rtmpproto: Don't include a client version in the unencrypted C1 handshake"

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '801ac7156d3efb8e088fb6024f568eb36a293887'
Clément Bœsch [Mon, 27 Mar 2017 20:19:09 +0000 (22:19 +0200)]
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>
3 years agoMerge commit '30015305f3b523ed7640f2c3c58b017140533c58'
Clément Bœsch [Mon, 27 Mar 2017 20:16:50 +0000 (22:16 +0200)]
Merge commit '30015305f3b523ed7640f2c3c58b017140533c58'

* commit '30015305f3b523ed7640f2c3c58b017140533c58':
  Use avpriv_request_sample() where appropriate

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

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '07cac07c0c0360d67e73a7472214c79d6c520a4b'
Clément Bœsch [Mon, 27 Mar 2017 20:09:08 +0000 (22:09 +0200)]
Merge commit '07cac07c0c0360d67e73a7472214c79d6c520a4b'

* commit '07cac07c0c0360d67e73a7472214c79d6c520a4b':
  dash: Use correct ISO C scanf conversion specifier

This commit is a noop: the use of SCN (scanf) format is wrong here.

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '3ec6f855d0f21d90a0494fb798c4cf203fdb3db0'
Clément Bœsch [Mon, 27 Mar 2017 20:07:19 +0000 (22:07 +0200)]
Merge commit '3ec6f855d0f21d90a0494fb798c4cf203fdb3db0'

* commit '3ec6f855d0f21d90a0494fb798c4cf203fdb3db0':
  srt: Adjust signedness of sscanf format strings

This commit is a noop, a different fix is included in the big -Wformat
patch under review
(http://ffmpeg.org/pipermail/ffmpeg-devel/2017-March/209239.html)

Merged-by: Clément Bœsch <u@pkh.me>
3 years agoMerge commit '7a2b2b6a92c4b528ecb640790eca0aa790d858f4'
Clément Bœsch [Mon, 27 Mar 2017 20:05:50 +0000 (22:05 +0200)]
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>
3 years agoMerge commit 'c454dfcff90f0ed39c7b0d4e85664986a8b4476c'
Clément Bœsch [Mon, 27 Mar 2017 20:01:06 +0000 (22:01 +0200)]
Merge commit 'c454dfcff90f0ed39c7b0d4e85664986a8b4476c'

* commit 'c454dfcff90f0ed39c7b0d4e85664986a8b4476c':
  Use ISO C printf conversion specifiers where appropriate

This commit is a noop, an equivalent patch is currently under review on
the mailing-list: http://ffmpeg.org/pipermail/ffmpeg-devel/2017-March/209239.html

Merged-by: Clément Bœsch <u@pkh.me>
3 years agolavc/vp9: clarify inv_recenter_nonneg
Clément Bœsch [Sat, 25 Mar 2017 12:33:07 +0000 (13:33 +0100)]
lavc/vp9: clarify inv_recenter_nonneg

Ends up identical to Libav.

3 years agolavc/vp9: shuffle header declaration
Clément Bœsch [Sat, 25 Mar 2017 12:24:46 +0000 (13:24 +0100)]
lavc/vp9: shuffle header declaration

This reduces diff with Libav.

3 years agolavc/vp9: consistent use of typedef instead of struct
Clément Bœsch [Sat, 25 Mar 2017 12:19:52 +0000 (13:19 +0100)]
lavc/vp9: consistent use of typedef instead of struct

3 years agolavc/vp9: misc cosmetics
Clément Bœsch [Sat, 25 Mar 2017 11:40:48 +0000 (12:40 +0100)]
lavc/vp9: misc cosmetics

Imported from Libav

3 years agolavc/vp9: rename res to ret
Clément Bœsch [Sat, 25 Mar 2017 11:35:01 +0000 (12:35 +0100)]
lavc/vp9: rename res to ret

3 years agolavc/vp9: split a few assignment out of ifs
Clément Bœsch [Sat, 25 Mar 2017 11:32:45 +0000 (12:32 +0100)]
lavc/vp9: split a few assignment out of ifs

3 years agolavc/vp9: rename {ref,unref,alloc}_frame to frame_{ref,unref,alloc}
Clément Bœsch [Sat, 25 Mar 2017 11:28:31 +0000 (12:28 +0100)]
lavc/vp9: rename {ref,unref,alloc}_frame to frame_{ref,unref,alloc}

For consistency with Libav.

3 years agolavc/vp9: rename ctx to avctx
Clément Bœsch [Sat, 25 Mar 2017 11:25:28 +0000 (12:25 +0100)]
lavc/vp9: rename ctx to avctx

This reduces diff with Libav. It also prevents a potential confusion
between the private context and the AVCodecContext.

3 years agolavc/vp9: split into vp9{block,data,mvs}
Clément Bœsch [Sat, 25 Mar 2017 11:10:13 +0000 (12:10 +0100)]
lavc/vp9: split into vp9{block,data,mvs}

This is following Libav layout to ease merges.

3 years agoChangelog: reorder last entry
Rostislav Pehlivanov [Mon, 27 Mar 2017 17:34:15 +0000 (18:34 +0100)]
Changelog: reorder last entry

Entries are organized in descending chronological order.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agolavfi: remove af_asynts filter
Rostislav Pehlivanov [Mon, 6 Mar 2017 02:46:51 +0000 (02:46 +0000)]
lavfi: remove af_asynts filter

Long overdue for removal, af_aresample should be used instead.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
3 years agopthread_frame: fix uninitialized variable read
wm4 [Mon, 27 Mar 2017 11:06:56 +0000 (13:06 +0200)]
pthread_frame: fix uninitialized variable read

Could lead to random behavior. This possibly happened due to commit
32a5b631267. 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>
3 years agopthread_frame: do not attempt to unlock a mutex on the wrong thread
wm4 [Thu, 23 Mar 2017 12:18:16 +0000 (13:18 +0100)]
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>
3 years agoavformat, ffmpeg: deprecate old rotation API
wm4 [Tue, 21 Mar 2017 07:02:58 +0000 (08:02 +0100)]
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>
3 years agolibavcodec/opusenc: use correct format specifiers
Kyle Swanson [Sun, 26 Mar 2017 18:48:28 +0000 (13:48 -0500)]
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);
                                     ^~~~~~~~~~~~~~~~~

3 years agoavcodec/avcodec: Correct and make consistent AVERROR() in comments
Michael Niedermayer [Sun, 26 Mar 2017 19:17:54 +0000 (21:17 +0200)]
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>
3 years agoffmpeg: Remove hw_device_ctx output filter reinit hack
Mark Thompson [Wed, 22 Mar 2017 21:19:11 +0000 (21:19 +0000)]
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.

3 years agoavfilter/vf_signature: Replace uncommon spelling of seperate
Michael Niedermayer [Sun, 26 Mar 2017 18:34:47 +0000 (20:34 +0200)]
avfilter/vf_signature: Replace uncommon spelling of seperate

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoavcodec/h264idct_template: Fix multiple runtime error: signed integer overflow
Michael Niedermayer [Fri, 24 Mar 2017 02:09:32 +0000 (03:09 +0100)]
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>
3 years agoavcodec/x86/idctdsp: Remove duplicate include
Michael Niedermayer [Sun, 26 Mar 2017 00:38:34 +0000 (01:38 +0100)]
avcodec/x86/idctdsp: Remove duplicate include

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agodoc/bitstream_filters: Fix project name after merge
Michael Niedermayer [Sun, 26 Mar 2017 00:15:04 +0000 (01:15 +0100)]
doc/bitstream_filters: Fix project name after merge

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
3 years agoffprobe: support skip_samples packet side data information
James Almer [Sat, 25 Mar 2017 16:50:51 +0000 (13:50 -0300)]
ffprobe: support skip_samples packet side data information

Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years agoavcodec/extract_extradata_bsf: use the parsing code from mpeg4video_split()
James Almer [Fri, 24 Mar 2017 21:27:37 +0000 (18:27 -0300)]
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>