Commit Graph

73517 Commits

Author SHA1 Message Date
Michael Niedermayer b1e242bc56 avcodec/g2meet: Check R/G/B values in epic_decode_pixel_pred()
Fixes: asan_double-free_d34593_861_smp3.wmv

Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-10 18:11:28 +02:00
Andreas Cadhalpun 3526a120f9 snow: remove an obsolete av_assert2
It asserts that the frame linesize is larger than 37, but it can be
smaller and decoding such frames works.

Before commit cc884a35 src_stride > 7*MB_SIZE was necessary, because the
blocks were interleaved in the tmp buffer and the last block was added
with an offset of 6*MB_SIZE.
It was changed for src_stride <= 7*MB_SIZE to write the blocks
sequentially, hence the larger tmp_step.
After that the assert was only necessary to make sure that the buffer
remained large enough.
Since commit bd2b6b33 s->scratchbuf is used as tmp buffer.
As part of commit 86e107a7 the minimal scratchbuf size was increased to
256*7*MB_SIZE, which is enough for any src_stride <= 7*MB_SIZE.

Also add a comment explaining the tmp_step calculation.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-07-10 16:21:50 +02:00
Michael Niedermayer 7ef6656b1e avcodec/utils: use a minimum 32pixel width in avcodec_align_dimensions2() for H.264
Fixes Assertion failure
Found-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-10 15:18:41 +02:00
Michael Niedermayer e71ca21f30 avcodec/motion_est_template: Fix undefined behavior in small_diamond_search()
Fixes: asan_heap-oob_394322e_138_cov_4265020547_CVPCMNL1_SVA_C.264

Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-10 13:42:41 +02:00
Paul B Mahol ae55fc82a8 avfilter/vf_removegrain: clip to uint16 instead to uint8
This is how original filter behaves.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-10 10:50:28 +00:00
Michael Niedermayer 7b404c94f3 avcodec/libopenh264enc: Do not truncate frame rate
Suggested-by: Gregory J Wolfe <gregory.wolfe@kodakalaris.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-10 04:19:07 +02:00
Michael Niedermayer 033dc39c56 Merge commit '67c884eb07c7e9f2cb72bb8d447d945e5ac8cac7'
* commit '67c884eb07c7e9f2cb72bb8d447d945e5ac8cac7':
  libvpx: Add the library header

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-10 02:32:08 +02:00
Michael Niedermayer 60c6959b6b Merge commit '461b45efd04859b2672238bc8a6ecab9e9a14948'
* commit '461b45efd04859b2672238bc8a6ecab9e9a14948':
  lavc: Add nvenc.h to the skipheader

Conflicts:
	libavcodec/Makefile

No change as there is no nvenc.h in FFmpeg

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-10 02:15:54 +02:00
Ivan Uskov 5985316fba libavcodec/qsvenc.c: improving handling for return codes of MFXVideoENCODE_EncodeFrameAsync
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-10 01:26:16 +02:00
Michael Niedermayer b160fc290c avcodec/mpegvideo: Clear pointers in ff_mpv_common_init()
This ensures that no stale pointers leak through on any path

Fixes: signal_sigsegv_c3097a_991_xtrem_e2_m64q15_a32sxx.3gp

Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 22:47:16 +02:00
Vittorio Giovara 67c884eb07 libvpx: Add the library header
Unbreak make checkheaders
2015-07-09 21:36:19 +02:00
Luca Barbato 461b45efd0 lavc: Add nvenc.h to the skipheader
Unbreak make checkheaders
2015-07-09 21:34:57 +02:00
Paul B Mahol ba0b4e53a5 fate: add removegrain tests
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-09 18:28:29 +00:00
Carl Eugen Hoyos e786e96be7 lavf/rtpenc_jpeg: Error out for non-standard Huffman tables.
Related to ticket #3823.
2015-07-09 20:03:38 +02:00
Carl Eugen Hoyos ad7c5cba4e lavf/rtpenc_jpeg: Do not check the table number when checking precision. 2015-07-09 20:00:31 +02:00
Carl Eugen Hoyos 2c7f7a690f ffmpeg: Use av_log to print benchmark output. 2015-07-09 19:58:22 +02:00
Carl Eugen Hoyos 6253f511e0 Cosmetics: Reindent after last commit. 2015-07-09 19:52:06 +02:00
Carl Eugen Hoyos da46370e94 lavf/matroskaenc: Do not needlessly allocate memory for cuepoints.
Fixes ticket #4690.
2015-07-09 19:49:37 +02:00
Ivan Uskov dbf8352a2e libavcodec/qsvenc.c: Fix for too agressive height alignment during frame encoding which may be reason of superflous frame copying.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 17:46:18 +02:00
Michael Niedermayer 7ee935ba5c avcodec/qsvenc_hevc: Attempt to fix error: too few arguments to function ff_hevc_extract_rbsp
Found-by: Ivan Uskov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 16:51:51 +02:00
Jovan Zelincevic f21b4472ef libavcodec: Implementation of AAC_fixed_decoder (LC-module) [4/4]
Build system modified

There are several warnings occurring during build after this patch is
applied. The cause of most of these warnings is in that some definitions
needed here are logical part of sbr module and are added in later patches.
When this patches are applied these warnings stop occurring.

The only warning that is added here and is not fixed with later patches
is warning that warns that type mismatch for table ff_aac_eld_window_480.

The reason for this warning is in that ER AAC ELD 480 is not integrated in
to the fixed point implementation at this moment and there is no fixed point
version of this table.

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 14:41:41 +02:00
Djordje Pesut b04f46cb4b libavcodec: Implementation of AAC_fixed_decoder (LC-module) [3/4]
Add fixed point implementation

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 14:41:31 +02:00
Jovan Zelincevic 08be74ac81 libavcodec: Implementation of AAC_fixed_decoder (LC-module) [2/4]
Add fixed point implementation of functions for generating tables

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 14:41:19 +02:00
Jovan Zelincevic f497a9e84e libavcodec: Implementation of AAC_fixed_decoder (LC-module) [1/4]
Move existing code to the new template files

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 14:35:44 +02:00
Michael Niedermayer 15893adbdb avcodec/hevc_ps: Remove gotos from ff_hevc_parse_sps()
They are currently unnecessary

Found-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 13:02:07 +02:00
Michael Niedermayer 4a5074d798 Merge commit '84b223cc6d6ed4cc8bd295457a90f7c94a9dd784'
* commit '84b223cc6d6ed4cc8bd295457a90f7c94a9dd784':
  configure: Make the new qsv encoder depend on libmfx

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 12:40:31 +02:00
Michael Niedermayer 2ecbf44f21 Merge commit 'd1a6cb195f610978ba5d2351e60f938f7f261d59'
* commit 'd1a6cb195f610978ba5d2351e60f938f7f261d59':
  x86: Serialize rdtsc in read_time()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 12:28:09 +02:00
Michael Niedermayer 7e85727b98 Merge commit '40af330adf7fde8073271cf2b41ff9adc4c2bba9'
* commit '40af330adf7fde8073271cf2b41ff9adc4c2bba9':
  avconv: vda: Unlock the pixel buffer once it is accessed

See: c06fdacc3d
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 12:19:34 +02:00
Michael Niedermayer 8d4460f1bb Merge commit '8fcd121b823caeadbe7597c9ae9229f6f164f949'
* commit '8fcd121b823caeadbe7597c9ae9229f6f164f949':
  doc: Use the succinct syntax for the channelmap example

Conflicts:
	doc/filters.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 12:11:10 +02:00
Michael Niedermayer 7c502935ec configure: Fix build without libmfx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 12:00:32 +02:00
Michael Niedermayer 7871eb4361 Merge commit '66acb76bb0492b263215ca9b4d927a7be39ace02'
* commit '66acb76bb0492b263215ca9b4d927a7be39ace02':
  lavc: add Intel libmfx-based HEVC encoder

Conflicts:
	Changelog
	configure
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/qsv.c
	libavcodec/qsvenc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 11:53:14 +02:00
Michael Niedermayer 587980eb7a configure: Fix build without libmfx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 11:27:04 +02:00
Michael Niedermayer 96ee6b9962 Merge commit '3a85397e8bb477eb34678d9edc52893f57003226'
* commit '3a85397e8bb477eb34678d9edc52893f57003226':
  lavc: add Intel libmfx-based MPEG2 encoder

Conflicts:
	Changelog
	configure
	libavcodec/allcodecs.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 11:17:12 +02:00
Michael Niedermayer 07ae8fa20e Merge commit '69ab9f53f901eac6a649e22d28cf093357870627'
* commit '69ab9f53f901eac6a649e22d28cf093357870627':
  hevc: split bitstream unescaping to a separate file

Conflicts:
	libavcodec/Makefile
	libavcodec/hevc.c

See: afa93d198a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 05:06:48 +02:00
Michael Niedermayer 1dacf26964 avcodec/hevc_ps: Do not return success on failures in ff_hevc_parse_sps()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 04:50:05 +02:00
Michael Niedermayer 1d4194e696 Merge commit 'fd124d8357b1becfde3ac8d5e3320127cf97a5b7'
* commit 'fd124d8357b1becfde3ac8d5e3320127cf97a5b7':
  hevc_ps: split the code for parsing the SPS and exporting it into the context

Conflicts:
	libavcodec/hevc.c
	libavcodec/hevc_ps.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 04:50:00 +02:00
James Almer c118101662 avcodev/libdcadec: implement request_channel_layout
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-07-08 23:04:17 -03:00
Michael Niedermayer b457da4ce2 Merge commit '0e7c0ec344f542e68e3cc9680e8d41dffeffdb4e'
* commit '0e7c0ec344f542e68e3cc9680e8d41dffeffdb4e':
  lavf/hevc: pad the RBSP buffer as required by the bistream reader

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 03:54:31 +02:00
Chris Watkins 4f5c2e651a oggparsedirac: check return value of init_get_bits
If init_get_bits fails the GetBitContext is invalid and must not be
used. Check the return value in dirac_header and propogate the error.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 03:46:37 +02:00
Ivan Uskov b409748bc4 libavcodec/qsvenc.c: fix incorrect loop condition.
For example, the encoder may return MFX_WRN_INCOMPATIBLE_VIDEO_PARAM warning
i.e. ret==5 old loop implementation will repeat several times until output buffer
overflow. New implementation explicitly uses loop only for device busy case.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 02:25:39 +02:00
compn 0054d5ac02 avformat/movenc: fix mime-types in movenc.c
https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/CreatingContentforSafarioniPhone/CreatingContentforSafarioniPhone.html

says video/mp4

suggested by BBB on irc.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 02:17:35 +02:00
Michael Niedermayer 4a2bcdb28b Merge commit '1761ab838c75223a6b97d8c0720d09275374c53d'
* commit '1761ab838c75223a6b97d8c0720d09275374c53d':
  lavc: Deprecate avctx.rc_strategy

Conflicts:
	libavcodec/mpegvideo.h
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 01:17:49 +02:00
Michael Niedermayer edfcbf7c83 Merge commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20'
* commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20':
  h261: Signal freeze picture release for intra frames

Conflicts:
	tests/ref/vsynth/vsynth1-h261
	tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:49:20 +02:00
Michael Niedermayer a137e50ee5 Merge commit 'dc1de0b958836545339611e9c050a1d4fdded263'
* commit 'dc1de0b958836545339611e9c050a1d4fdded263':
  h261: Set 'still image mode off' in picture header

Conflicts:
	tests/ref/vsynth/vsynth1-h261
	tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:33:52 +02:00
Michael Niedermayer fcc117af30 Merge commit 'c8b8271379b200c5c6fa89ca995f90f97f55c2c5'
* commit 'c8b8271379b200c5c6fa89ca995f90f97f55c2c5':
  xcbgrab: Explicitly include xcb/shape.h

See: 54170a33c2
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:21:28 +02:00
Luca Barbato 84b223cc6d configure: Make the new qsv encoder depend on libmfx
Found-by: kropping
2015-07-09 00:20:27 +02:00
Michael Niedermayer 17498b70d8 Merge commit '161a301d44274645c2272855dac3e4664f935603'
* commit '161a301d44274645c2272855dac3e4664f935603':
  mpjpeg: Write the Content-length

Conflicts:
	libavformat/mpjpeg.c

See: 0d2f4eedc8
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-09 00:11:32 +02:00
Henrik Gramner d1a6cb195f x86: Serialize rdtsc in read_time()
Improves the accuracy of measurements, especially in short sections.

To quote the Intel 64 and IA-32 Architectures Software Developer's Manual:
"The RDTSC instruction is not a serializing instruction. It does not necessarily
wait until all previous instructions have been executed before reading the counter.
Similarly, subsequent instructions may begin execution before the read operation
is performed. If software requires RDTSC to be executed only after all previous
instructions have completed locally, it can either use RDTSCP (if the processor
supports that instruction) or execute the sequence LFENCE;RDTSC."

SSE2 is a requirement for lfence so only use it on SSE2-capable systems.
Prefer lfence;rdtsc over rdtscp since rdtscp is supported on fewer systems.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-09 00:10:13 +02:00
Sebastien Zwickert 40af330adf avconv: vda: Unlock the pixel buffer once it is accessed
Avoid possible issues with memmapped hardware buffers in
case VDA is not doing a conversion on behalf of the user
and make the code more proper as working example.

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-09 00:10:13 +02:00
Luca Barbato 8fcd121b82 doc: Use the succinct syntax for the channelmap example
Mixing succinct and long syntax does not work.
2015-07-09 00:09:53 +02:00