Commit Graph

32448 Commits

Author SHA1 Message Date
Michael Niedermayer
b395fd3de7 avcodec/jpeg2000dec: add some sanity checking on newpasses
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 02:02:38 +02:00
Michael Niedermayer
5ccca4eb8e avcodec/jpeg2000dec: Add some additional checking on lengthinc
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 01:13:55 +02:00
Michael Niedermayer
2f1dd4a3d1 avcodec/jpeg2000dec: Print warning for "Selective arithmetic coding bypass"
This is implemented but i suspect does not work correctly as no file using this
seems to decode correctly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 22:59:07 +02:00
Michael Niedermayer
9c8939216b avcodec/jpeg2000dec: Implement progression order RLCP
This works with one of 2 RLCP samples i have, the other appears to also
use selective arithemtic coding bypass which may or may not be the reason why it does
not work

Sample: p0_16.j2k

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 21:38:10 +02:00
Shivraj Patil
fb92f3ecb4 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for AVC idct functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for AVC idct functions in new file h264idct_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 17:10:45 +02:00
Shivraj Patil
1d70b6fe1d avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for AVC intra prediction functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for AVC intra prediction functions in new file h264pred_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 17:10:41 +02:00
Shivraj Patil
e4fb8816f9 avcodec/mips: Add 'const' to static arrays in HEVC MSA code
Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 12:24:48 +02:00
Shivraj Patil
b87dc70c65 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for AVC chroma mc functions
s patch adds MSA (MIPS-SIMD-Arch) optimizations for AVC chroma mc functions in new file h264chroma_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 12:24:02 +02:00
James Zern
fd004e10d3 libvpxenc: add overshoot-pct option
balances the presence of undershoot-pct

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Zern <jzern@google.com>
2015-06-10 21:01:32 -07:00
James Zern
2c70436e69 libvpxenc: add undershoot-pct option
replaces deprecated rc_buffer_aggressivity

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Zern <jzern@google.com>
2015-06-10 21:01:20 -07:00
Michael Niedermayer
c2163f7cc7 avcodec/pcm-dvd: Fix debug == FF_DEBUG_PICT_INFO
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 04:53:37 +02:00
Michael Niedermayer
261b715593 avcodec/mpeg4videodec: Mark static table as const
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 00:48:41 +02:00
Michael Niedermayer
11f86ec204 Merge commit 'c0e6b8cab874db97b6818007bc86507c8d213083'
* commit 'c0e6b8cab874db97b6818007bc86507c8d213083':
  mpegvideo: Mark one function as static

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 21:07:59 +02:00
Michael Niedermayer
21d8e2c0b5 Merge commit 'd1dd0d404c085f4fce7b8358b4aea677761c5d88'
* commit 'd1dd0d404c085f4fce7b8358b4aea677761c5d88':
  mpegvideo: Move block permutation function where is used

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 20:58:32 +02:00
Michael Niedermayer
d784d6b7ed Merge commit 'c6aa0554b0c3e31fec4580b68ea85b66966cd381'
* commit 'c6aa0554b0c3e31fec4580b68ea85b66966cd381':
  mpegvideo: Drop release_unused_pictures() function

Conflicts:
	libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 20:50:36 +02:00
Michael Niedermayer
88679aeb08 Merge commit '7061bf0925a7d6c5899bbe710b2b8cdae9005274'
* commit '7061bf0925a7d6c5899bbe710b2b8cdae9005274':
  mpegvideo: Move Picture-related functions to a separate file

Conflicts:
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 20:41:36 +02:00
Michael Niedermayer
63276fa9c1 avcodec/mips: remove ;;
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 16:23:22 +02:00
Vittorio Giovara
c0e6b8cab8 mpegvideo: Mark one function as static 2015-06-10 14:06:44 +01:00
Vittorio Giovara
d1dd0d404c mpegvideo: Move block permutation function where is used
Mark it as static.
2015-06-10 14:06:23 +01:00
Vittorio Giovara
c6aa0554b0 mpegvideo: Drop release_unused_pictures() function
It is only used in one place, and it is small enough that it might be
called directly.
2015-06-10 14:05:53 +01:00
Vittorio Giovara
7061bf0925 mpegvideo: Move Picture-related functions to a separate file 2015-06-10 14:05:32 +01:00
Shivraj Patil
d6d98237ed avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for HEVC intra prediction functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for HEVC intra predition functions in new file hevcpred_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 13:53:03 +02:00
Shivraj Patil
271195f85b avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for HEVC loop filter and sao functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for HEVC loop filter and sao functions in new file hevc_lpf_sao_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

In this patch, in comparision with previous patch, duplicated c functions are removed.

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 13:14:50 +02:00
Andreas Cadhalpun
05c57ba2f4 takdec: ensure chan2 is a valid channel index
If chan2 is not smaller than the number of channels, it can cause
segmentation faults due to dereferencing a NULL pointer.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 12:21:04 +02:00
Michael Niedermayer
aef0e0f009 avcodec/h264_slice: Use AVFrame diemensions for grayscale handling
The AVFrame values are closer to the AVFrame bitmap changed instead of
the AVCodecContext values, so this should be more robust

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 11:37:48 +02:00
Michael Niedermayer
b58a3c8975 avcodec/jpeg2000dec: Print the correct variable in the component error message
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 04:50:40 +02:00
Michael Niedermayer
81471d8246 avcodec/jpeg2000dec: increase tile_parts to 6
Fixes Ticket4602

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 04:50:14 +02:00
Michael Niedermayer
213f2da46a avcodec/jpeg2000dec: Fix shift for RGB(A)48/64
Found-by: carl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-10 04:19:38 +02:00
Andreas Cadhalpun
58995f647b sonic: set avctx->channels in sonic_decode_init
Otherwise it can be 0 in sonic_decode_frame, causing SIGFPE crashes.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-09 23:21:51 +02:00
Michael Niedermayer
0916938a8d avcodec/jpeg2000dec: Fix gain regression with gray16
Found-by: carl
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 20:26:38 +02:00
Michael Niedermayer
adbe1d7de4 avcodec/libopenjpegdec: Mark as experimental if <= 1.3
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 18:59:30 +02:00
Michael Niedermayer
dbbb31e5bb avcodec/jpeg2000: remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 18:48:39 +02:00
Michael Niedermayer
551813a963 Merge commit '210921722bf828b3b895ebcbc34374e6c4452c6f'
* commit '210921722bf828b3b895ebcbc34374e6c4452c6f':
  imc: add required padding for GetBitContext buffer

Conflicts:
	libavcodec/imc.c

See: 7444cf9a9c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 17:44:13 +02:00
Michael Niedermayer
44327cbc9a avcodec/jpeg2000: Disable special case for JPEG2000_QSTY_SI
The code gave apparently completely wrong values

Fixes Ticket2872

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 16:44:32 +02:00
Michael Niedermayer
45db921806 avcodec/jpeg2000dec: Add placeholder for PLT parsing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 15:16:46 +02:00
Michael Niedermayer
b6ee1912f9 avcodec/jpeg2000dec: Handle Psot = 0
Fixes Ticket2869

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 14:43:03 +02:00
Janne Grunau
210921722b imc: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
fate-imc.

CC: libav-stable@libav.org
2015-06-09 10:07:04 +02:00
Janne Grunau
09447f2b0f ac3_parser: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
various fate tests.

CC: libav-stable@libav.org
2015-06-09 10:06:59 +02:00
Janne Grunau
fb14730802 aac_parser: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
various fate tests.

CC: libav-stable@libav.org
2015-06-09 10:05:54 +02:00
Michael Niedermayer
e100966575 avcodec/x86/h264_weight: handle weight1=128
Fix ticket4596

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 05:11:09 +02:00
Michael Niedermayer
7c9fcdfabd avcodec/jpeg2000dec: Fix some 5/3 bitexactness issues
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 02:17:53 +02:00
Michael Niedermayer
074159ed70 avcodec/jpeg2000dec: Fix subsampled decoding
Fixes part of Ticket3619

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 01:02:05 +02:00
Michael Niedermayer
12ba1b2b4d avcodec/jpeg2000dec: Check that coords match before applying ICT
This avoid potential out of array accesses

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 01:02:05 +02:00
Michael Niedermayer
028c59c17b avcodec/jpeg2000dec: Fix high bit depth branch sample shift
Fix part of Ticket3619

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-09 01:01:01 +02:00
Andreas Cadhalpun
6fdbaa2b7f vp8: change mv_{min,max}.{x,y} type to int
If one of the dimensions is larger than 8176, s->mb_width or
s->mb_height is larger than 511, leading to an int16_t overflow of
s->mv_max.{x,y}. This then causes av_clip to be called with amin > amax.

Changing the type to int avoids the overflow and has no negative
effect, because s->mv_max is only used in clamp_mv for clipping.
Since mv_max.{x,y} is positive and mv_min.{x,y} negative, av_clip can't
increase the absolute value. The input to av_clip is an int16_t, and
thus the output fits into int16_t as well.

For additional safety, s->mv_{min,max}.{x,y} are clipped to int16_t range
before use.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-08 23:29:14 +02:00
Michael Niedermayer
83e3516e64 Merge commit '925b80d64029d41962e5998d7d901226c3a9baea'
* commit '925b80d64029d41962e5998d7d901226c3a9baea':
  mpegvideo: Move OutFormat enum to mpegutils.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 22:05:25 +02:00
Michael Niedermayer
3244a17650 Merge commit '9bb11be0e5a75782c3139ad058c2b571499aa37d'
* commit '9bb11be0e5a75782c3139ad058c2b571499aa37d':
  mpegvideo: Split picture allocation for encoding and decoding

Conflicts:
	libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 21:49:26 +02:00
Andreas Cadhalpun
b18eac7ff2 vp9: change type of tile_size from unsigned to int64_t
Otherwise the check 'tile_size < size' treats a negative size as
unsigned, causing the check to pass. This subsequently leads to
segmentation faults.

This was originally fixed as part of Libav commit 72ca83, so the
original author is one of the following developers:
        Anton Khirnov <anton@khirnov.net>
        Diego Biurrun <diego@biurrun.de>
        Luca Barbato <lu_zero@gentoo.org>
        Martin Storsjö <martin@martin.st>

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-08 21:43:16 +02:00
Michael Niedermayer
e05fda99f7 Merge commit 'f8716a1408f4f4ec63857b7015fbd62f9eac344a'
* commit 'f8716a1408f4f4ec63857b7015fbd62f9eac344a':
  mpegvideo: Rework frame_size_alloc function

Conflicts:
	libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 21:16:36 +02:00
Michael Niedermayer
db8ae37a78 Merge commit 'da0c8664b4dc906696803685f7e53ade68594ab8'
* commit 'da0c8664b4dc906696803685f7e53ade68594ab8':
  mpegvideo: Move various temporary buffers to a separate context

Conflicts:
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/mpegvideo_motion.c
	libavcodec/rv34.c
	libavcodec/vc1_mc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 21:05:12 +02:00