Commit Graph

32928 Commits

Author SHA1 Message Date
Michael Niedermayer
47f4e2d896 avcodec/pngdec: Only allow one IHDR chunk
Multiple IHDR chunks are forbidden in PNG
Fixes inconsistency and out of array accesses

Fixes: asan_heap-oob_4d5c5a_1738_cov_2638287726_c-m2-8f2b481b7fd9bd745e620b7c01a18df2.png

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 21:30:57 +02:00
Rostislav Pehlivanov
7c10b87b57 aacenc: add support for coding of intensity stereo scalefactor indices
This commit adds support for the coding of intensity stereo scalefactor indices.
It does not do any marking of such bands and as such does no functional changes
to the encoder. It removes any old twoloop specific code for PNS and moves it
into a seperate function which handles setting of scalefactor indices for
PNS and IS bands.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 16:44:40 +02:00
Shivraj Patil
d9deae04a7 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for pixblock functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for pixblock functions in new file pixblockdsp_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-29 12:03:43 +02:00
Rostislav Pehlivanov
55397b0e76 aaccoder: add intensity stereo support to encode_window_bands_info quantizer
This commit adds support for both PNS and IS (intensity stereo) codebooks to the
encode_window_bands_info() quantizer, used by the faast, faac and anmr non-default,
native coders. This does not mean that both extensions now work with those coders,
some are simply unsuited and will trigger an assertion in the encoder while
others simply ignore the changed scalefactor indices and band types.
This commit simply adds support for encoding said band types with the alternative
coders. Future commits to the coders will be required to make them suitable.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 21:15:58 +02:00
Rostislav Pehlivanov
305859c0d4 aaccoder: add intensity stereo coding support for the trellis quantizer
This commit extends the trellis quantizer (used by the default twoloop coder)
 to accept and correctly encode codebooks needed for intensity stereo and perceptual noise substitution.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 21:15:40 +02:00
Michael Niedermayer
ecbd111768 avcodec/jpeg2000dec: Remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 19:36:52 +02:00
Andreas Cadhalpun
2a4700a4f0 wmavoice: limit wmavoice_decode_packet return value to packet size
Claiming to have decoded more bytes than the packet size is wrong.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-28 17:00:21 +02:00
Rodger Combs
7d0a19757e lavc/adpcm: THP: set approx_nb_samples correctly
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 16:42:25 +02:00
Michael Niedermayer
96e73fa649 avcodec/jpeg2000dec: Merge i_stepsize/2 decoder special case into dequant
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 15:26:31 +02:00
Andreas Cadhalpun
9a345802ed huffyuvdec: validate image size
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-28 14:51:07 +02:00
Rostislav Pehlivanov
02dbed6e71 aacpsy: Add energy spread for each band
This commit adds the energy spread to the struct for each band and removes 2 unused fields.
distortion and perceptual_weight were not referenced in any file nor were they set to any value,
so it was safe to remove them. The energy spread is currently only used in the aac psy model.
It's defined as being proportional to the tonality of each band.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 14:24:30 +02:00
Andreas Cadhalpun
f9883a669c wavpack: use get_bits_long to read up to 32 bits
get_bits should not be used for more than 25 bits.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-28 11:29:46 +02:00
Michael Niedermayer
317be53ca6 avcodec/jpeg2000: Support 32 decomposition levels
Fixes Ticket4680

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 03:16:06 +02:00
Michael Niedermayer
cd1a9908b5 avcodec/jpeg2000: support >32bit in ff_jpeg2000_ceildivpow2()
Fixes part of Ticket4680

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 02:31:26 +02:00
Michael Niedermayer
f01028bf58 avcodec/jpeg2000: Avoid one shift in ff_jpeg2000_ceildivpow2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 02:27:43 +02:00
Rostislav Pehlivanov
d71935f883 aac: add additional fields needed by the encoder for intensity stereo
This commit adds additional fields which are used by the native encoder to add intensity stereo support. It also adds some clarifying statements to the comments for the codebooks.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-28 00:15:21 +02:00
Michael Niedermayer
6323647c35 avcodec/h264_slice: Reformat IN_RANGE() uses to be readable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 23:56:41 +02:00
Michael Niedermayer
29b0923324 avcodec/h264_slice: Silence pointer type warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 23:56:06 +02:00
Michael Niedermayer
9ea256814d avcodec/h264_slice: assert that the first slice implies unfinished setup
If this assert fails there is very likely a bug in the code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 23:42:33 +02:00
Michael Niedermayer
bd5c6a519e Merge commit '5ec0bdf2c524224f30ba4786f47324970aed4aaa'
* commit '5ec0bdf2c524224f30ba4786f47324970aed4aaa':
  h264: do not update the context fields copied between threads after finish_setup()

Conflicts:
	libavcodec/h264.h
	libavcodec/h264_slice.c

See: f111831ed6 and others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 22:15:01 +02:00
Michael Niedermayer
77412f0ecd Merge commit '6d4d3fee63c46d921c4870feab79269af94e84e1'
* commit '6d4d3fee63c46d921c4870feab79269af94e84e1':
  h264: make sure the current picture is not made a long ref multiple times

See: 34ea5f418e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 20:56:30 +02:00
Michael Niedermayer
f620315fa5 Merge commit 'e49e0f58e273237f83b4486f3536931ed1943d18'
* commit 'e49e0f58e273237f83b4486f3536931ed1943d18':
  h264: make sure the slices do not overlap during slice threading

Conflicts:
	libavcodec/h264.h
	libavcodec/h264_slice.c

See: 43b434210e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 18:46:11 +02:00
Niklesh
cf9051deac movtextenc.c: Support for Bold, Italic and Underlined Styles
Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-06-27 09:28:34 -07:00
Anton Khirnov
5ec0bdf2c5 h264: do not update the context fields copied between threads after finish_setup()
Should fix a large number of possible races with frame threading.
2015-06-27 16:48:48 +02:00
Anton Khirnov
6d4d3fee63 h264: make sure the current picture is not made a long ref multiple times
Fixes possible invalid reads, once one of those refs is freed, but the
others remain.
CC: libav-stable@libav.org
2015-06-27 16:46:01 +02:00
Anton Khirnov
e49e0f58e2 h264: make sure the slices do not overlap during slice threading
Based on a patch by Michael Niedermayer <michaelni@gmx.at>.
CC: libav-stable@libav.org
Found-by: Kieran Kunhya <kierank@obe.tv>
2015-06-27 16:43:22 +02:00
Michael Niedermayer
5cccbc3b74 avcodec/jpeg2000dec: Check for mismatching per expected termination
not just at the end

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 15:22:15 +02:00
Michael Niedermayer
8672c0a643 avcodec/jpeg2000dec: Limit poc end fields to whats available in jpeg2000_decode_packets()
Fixes: Ticket4677

Solution based on information from
https://code.google.com/p/openjpeg/issues/detail?id=80

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 11:48:42 +02:00
Michael Niedermayer
aab4dbe534 avcodec/utils: Replace ENOTSUP by AVERROR_PATCHWELCOME
ENOTSUP is not available on all platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 11:19:57 +02:00
Philip Langdale
b69bea3ab8 avcodec: Add flag for experimental HWAccels and use it for VDPAU/HEVC
This HWAccel isn't really usable right now due to an nvidia driver bug,
so we don't want it selected by default.

HWAccels have a capabilities field and there's a comment about flags,
but no flags exist today, so let's add one for experimental hwaccels.
2015-06-26 19:07:51 -07:00
George Boyle
7728d231a6 fate/api-tests: Move api-flac-test to API tests directory.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-27 03:43:23 +02:00
Andreas Cadhalpun
04dfbc9441 s302m: fix arithmetic exception
If nb_samples is zero, the bit_rate calculation results in a division by
zero.

Since ff_get_buffer fails if frame->nb_samples is zero, this can be
fixed by moving the bit_rate calculation after that function call.

That also makes it possible to reuse the already calculated
frame->nb_samples value.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-26 23:35:26 +02:00
Kieran Kunhya
22291c372f avcodec: Add support for per-frame AFD output in h264
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 23:11:17 +02:00
Luca Barbato
92fdc80cab nvenc: Fix NV12 input 2015-06-26 22:18:24 +02:00
Michael Niedermayer
b75c0a72ed avcodec/jpeg2000dec: Fix tp_index for POC
Fixes Ticket2586

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 22:00:29 +02:00
Michael Niedermayer
c56ba5c270 avcodec/jpeg2000dec: Print what is found in place of EPH if EPH is not found
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 22:00:28 +02:00
James Almer
5abd4a9323 libvpx: disable unused function prototypes
Fixes make checkheader

Signed-off-by: James Almer <jamrial@gmail.com>
2015-06-26 16:43:37 -03:00
Michael Niedermayer
c72a831931 avcodec/jpeg2000dec: Support progression order changes
Fixes Ticket4657

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 21:00:10 +02:00
Michael Niedermayer
2ec0ba1e22 avcodec/jpeg2000dec: Parse POCs
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 20:59:05 +02:00
Andreas Cadhalpun
072756cdd2 vc1dec: use get_bits_long and limit the read bits to 32
get_bits should not be used with more than 25 bits.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-26 19:39:29 +02:00
Andreas Cadhalpun
1f1e0a2971 vc1dec: use get_bits_long and limit the read bits to 32
get_bits should not be used with more than 25 bits.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-26 19:20:00 +02:00
Andreas Cadhalpun
151dbe4579 mpegaudiodec: copy AVFloatDSPContext from first context to all contexts
This fixes a segfault when decoding multi-channel MP3onMP4 files.

This is similar to commit cb72230d for MPADSPContext.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-26 19:10:46 +02:00
Michael Niedermayer
7ca0cd5831 avcodec/jpeg2000dec: iterate in tile sample space for CPRL & RPCL
Thats what the spec says should be done
aka iterate in the wrong space and use special cases to patch that up.
It sometimes can result in different order

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 13:44:17 +02:00
Michael Niedermayer
f5822ea379 avcodec/jpeg2000dec: Add missing \n to av_log()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 05:25:42 +02:00
Michael Niedermayer
50b77e364f avcodec/jpeg2000dec: iterate over positions with the special cases from jpeg2000
The order in j2k is not the simple and logic one

Fixes Ticket4670

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 05:25:42 +02:00
Michael Niedermayer
6c4a2f11dd avcodec/jpeg2000dec: Add coords to Jpeg2000Tile
These will be needed in subsequent commits

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 05:25:42 +02:00
Philip Langdale
6e5e139fe3 avcodec/vdpau: Support for VDPAU accelerated HEVC decoding
This change introduces basic support for HEVC decoding through vdpau.
Right now, there are problems with the nvidia driver/library implementation
that mean that frames are incorrectly laid out in memory when they are
returned from the decoder, and it is normally impossible to recover the
complete decoded frame due to loss of data from alignment inconsistencies.

I obviously hope that nvidia will be fixing it in due course - I've verified
the problems exist with their example application.

As such, this support is not useful for any real world application, but I
believe that it is correct (with the caveat that the mangled frames may hide
problems) and will work properly once the nvidia problem is fixed.

Right now it appears that any file encoded by x265 or nvenc is decoded
correctly, but that's because these files don't use a bunch of HEVC
features.

Quick summary:

Features that seem to work:

1) Short Term References
2) Scaling Lists
3) Tiling

Features with known problems:

1) Long Term References

It's hard to tell what's going on here. After I read the nvidia example
app that does not set the IsLongTerm flag on LTRs, and changed my code,
a bunch of frames using LTR started to display correctly, but there
are still samples with glitches that are related to LTRs.

In terms of real world files, both x265 and nvenc only use short term
refs from this list. The divx encoder seems similar.

Signed-off-by: Philip Langdale <philipl@overt.org>
2015-06-25 20:06:47 -07:00
Michael Niedermayer
f1e173049e avcodec/jpeg2000: Remove CBLK limit
This also reduces the amount of memory needed
Fixes Ticket4672

The new code seems slightly faster as well, probably due to better cache usage

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-26 01:00:17 +02:00
Paul B Mahol
cdcf637d56 avcodec/evrc: make it possible to disable postfilter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-25 20:07:01 +00:00
Rodger Combs
388a6f581a lavc+doc: adjust names to reflect ADPCM THP not being GameCube-only
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 19:29:02 +02:00
Ronald S. Bultje
d5a36edda4 vp9: fix profile check for intraonly frames.
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 04:29:03 +02:00
Michael Niedermayer
9ff5e7974a avcodec/jpeg2000dec: Limit x/y step to 1<<30
Fixes infinite loop
Fixes Ticket4663

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 00:43:49 +02:00
Michael Niedermayer
67fc898243 avcodec/jpeg2000: Improve right bottom precinct positions
Fixes Ticket4656

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 00:23:31 +02:00
Michael Niedermayer
2d8bf3d126 avcodec/jpeg2000dec: Check PPx / PPy values
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-25 00:23:31 +02:00
James Zern
766a8346cf libvpxdec: report colorspace
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Zern <jzern@google.com>
2015-06-24 15:09:31 -07:00
James Zern
469398f8b7 libvpxdec: report profile for vp9
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Zern <jzern@google.com>
2015-06-24 14:54:54 -07:00
Michael Niedermayer
eb823df817 Merge commit '5dbd491eb38efab1d1313d4129ed76ab2e98176d'
* commit '5dbd491eb38efab1d1313d4129ed76ab2e98176d':
  TextureDSP: fix erroneous condition which produced blocky output for DXT

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 21:06:58 +02:00
Michael Niedermayer
ffd9d60201 avcodec: Add codec_desc and remapping for AV_CODEC_ID_PCM_S16BE_PLANAR_DEPRECATED
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 20:37:02 +02:00
Michael Niedermayer
8e2fcd1cb4 Merge commit '5a79bf0284a37855636390e620d189a964214c9e'
* commit '5a79bf0284a37855636390e620d189a964214c9e':
  PCM signed 16-bit big-endian planar decoder

Conflicts:
	doc/general.texi
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/pcm.c
	libavcodec/version.h
	libavformat/nut.c

See: 9ba41ae63e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 20:36:26 +02:00
Michael Niedermayer
d7e224ec24 avcodec/jpeg2000: change flags array type to 16bit
reduce memory needed for flags

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 17:46:37 +02:00
Michael Niedermayer
d580255571 vcodec/jpeg2000: Increase cblk size limit to 128
Fixes Ticket4649

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 17:38:05 +02:00
Michael Niedermayer
ffa1de8a3b avcodec/jpeg2000dec: Use 32x32->64bit for 9/7i dequantization
Like the 5/3 case this is needed to avoid overflows and similarly for 16bpp
output pure 32bit operations are insufficient if high quality is wanted

Note, this code-path is only used in bitexact mode, so this should not
affect the speed of any real use-case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 17:09:21 +02:00
Michael Niedermayer
05ef6324d1 avcodec/jpeg2000dec: Add 5/3 de-quantization special case for the lossless case
This avoids a multiplication and 64bits

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 17:05:42 +02:00
Michael Niedermayer
8ff09e9098 avcodec/jpeg2000dec: Use 32x32->64bit for 5/3 dequantization
This fixes overflows, using fewer bits would impact high bit depth quality

Fixes Ticket4654

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 17:03:38 +02:00
Tom Butterworth
5dbd491eb3 TextureDSP: fix erroneous condition which produced blocky output for DXT 2015-06-24 14:45:23 +01:00
Luca Barbato
4d55484391 dds: Fix palette mode on big endian
Found-By: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-24 14:45:16 +01:00
Paul B Mahol
5a79bf0284 PCM signed 16-bit big-endian planar decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-24 14:45:00 +01:00
Michael Niedermayer
49038fc17d Merge commit '41740ef8be6ec409f7eff3932ddba9a9eeec27b1'
* commit '41740ef8be6ec409f7eff3932ddba9a9eeec27b1':
  libvpx: fix test for VPX_IMAGE_ABI_VERSION

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 12:39:21 +02:00
Janne Grunau
41740ef8be libvpx: fix test for VPX_IMAGE_ABI_VERSION 2015-06-24 08:48:52 +02:00
Mark Webster
a88e21f5b7 Fix missing symbols when libvpx has only vp8 enabled
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2015-06-24 08:47:30 +02:00
Janne Grunau
c2de2cf0d2 arm64: constify src in h264qpel dsp function definitions 2015-06-24 08:41:32 +02:00
Michael Niedermayer
89a420b71b avcodec/mpegaudio_parser: Discard ID3v1 tag at the end
Ideally this should be discarded by the demuxer but this is not
possible without fully parsing which would be then very similar
to this. The current ID3v1 discard code in the demuxer does not work
and will be removed in a subsequent commit

The discard code could be adjusted if needed to also discard tags at
other locations than the end or to limit this possibly to input
from the mp3 demuxer or even to move the discarding to the
decoder.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-24 02:48:37 +02:00
Michael Niedermayer
0416b5e033 avcodec/jpeg2000dwt: Replace /2 by >>1
Divisions can be slow if the compiler fails to replace them by shifts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-23 18:59:00 +02:00
Michael Niedermayer
9f997acdd0 avcodec/texturedspenc: Add () to protect macro / argument evaluation order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-23 17:12:00 +02:00
Gwenole Beauchesne
88325c2e0b vaapi_h264: fix RefPicList[] field flags.
Use new H264Ref.reference field to track field picture flags. The
H264Picture.reference flag in DPB is now irrelevant here.

This is a regression from git commit d8151a7, and that affected
multiple interlaced video streams.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2015-06-23 13:31:54 +02:00
Niklesh
813b2f0da3 movtextdec.c: Improve upon dynarrays and text_to_ass
Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-06-22 22:19:35 -07:00
Michael Niedermayer
7a4b8817fe avcodec/texturedsp: Add protective () to RGBA() macro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-23 04:19:05 +02:00
Michael Niedermayer
21d2e3d602 avcodec/dds: Fix palettes on big endian
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:59:28 +02:00
Michael Niedermayer
ff68b83968 Merge commit '5c018ee18895f88e9e1d2174059dcdd48bf872d2'
* commit '5c018ee18895f88e9e1d2174059dcdd48bf872d2':
  DirectDraw Surface image decoder

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/version.h
	tests/fate/image.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:34:56 +02:00
Michael Niedermayer
f067ee57c9 avcodec/jpeg2000dwt: Move large arrays used in the test code away from the stack
This should avoid problems on systems with little stack space and fix some crashes
in fate

crash found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:18:47 +02:00
Michael Niedermayer
8428e2c5f3 avcodec/jpeg2000dwt: Print 1 digit less in the 9/7f DWT test
This avoids test failure due to differing rounding between 32 and 64bit x86

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:18:38 +02:00
Michael Niedermayer
19dc1ed4ad avcodec/jpeg2000dwt: Use a tighter check threshold for the 9/7f DWT test
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 23:06:55 +02:00
Michael Niedermayer
55219a78c7 Merge commit '7ca3e5203f133eb41a0b5c3a1d753a7427ba72e7'
* commit '7ca3e5203f133eb41a0b5c3a1d753a7427ba72e7':
  Hap decoder and encoder

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/allcodecs.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 22:47:32 +02:00
Michael Niedermayer
a5b2b22d9a Merge commit 'c0b105756f61d253bdabcc2bb49453a2557e7c3b'
* commit 'c0b105756f61d253bdabcc2bb49453a2557e7c3b':
  txd: Use the TextureDSP module for decoding

Conflicts:
	configure
	libavcodec/s3tc.c
	libavcodec/s3tc.h
	libavcodec/txd.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 21:15:50 +02:00
Michael Niedermayer
d1dc22dddd Merge commit '8337e0c57345f24cf6471220e5f8a0ea21b7c1d0'
* commit '8337e0c57345f24cf6471220e5f8a0ea21b7c1d0':
  Introduce a TextureDSP module

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 20:57:41 +02:00
Michael Niedermayer
9e5b0f070b Merge commit '2ecfd451649c7a08cb633635df98e59f7c6e2140'
* commit '2ecfd451649c7a08cb633635df98e59f7c6e2140':
  Implement Snappy decompression

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 20:47:21 +02:00
Shivraj Patil
f6276842f3 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for block functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for block functions in new file blockdsp_msa.c

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 20:18:10 +02:00
Vittorio Giovara
5c018ee188 DirectDraw Surface image decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Vittorio Giovara
7ca3e5203f Hap decoder and encoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Vittorio Giovara
c0b105756f txd: Use the TextureDSP module for decoding
Using the internal DXTC routines brings support for non multiple of 4
textures. A new test is added to cover this feature. Hashes differ
since the decoding algorithm is different, though no visual changes
have been spotted.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Vittorio Giovara
8337e0c573 Introduce a TextureDSP module
This module implements generic texture decompression from different
families (DXTC, RGTC, BCn) and texture compression DXTC 1, 3, and 5.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Luca Barbato
2ecfd45164 Implement Snappy decompression
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-22 15:23:08 +01:00
Michael Niedermayer
4e926fb969 avcodec/jpeg2000: Move L band scaling from the 9/7f wavelet to quantization stage
This reduces the number of operations
Its not done for 9/7i as that would overflow thanks to JPEG2000 allowing
32 decomposition levels

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 03:01:24 +02:00
Michael Niedermayer
b1fdf81c6e avcodec/jpeg2000dwt: use 32x32->64 multiplies in the 9/7i DWT
This significantly improves the quality when the integer 9/7 transform
is used

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 02:27:50 +02:00
Michael Niedermayer
6c7b1597c7 avcodec/jpeg2000: Move H band scaling from wavelet into quantization code
This reduces the number of operations done and is equivalent except for
rounding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 02:00:57 +02:00
Michael Niedermayer
69f7ccef8e avcodec/jpeg2000dwt: Move K/X constants to header
this makes them accessible by the rest of the jpeg2000 code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 01:54:51 +02:00
Michael Niedermayer
1c495b0bf6 avcodec/jpeg2000: Move gainb handling into the quantization code
thats how the specification defines it, this also improves numerical
accuracy of the integer wavelet implementation. It otherwise should
be equivalent, in case of overflows this can be reverted.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-22 01:36:05 +02:00
Michael Niedermayer
1e7008675b Merge commit '8655c54160767de1a6b96f8bc310d6e4eaceff48'
* commit '8655c54160767de1a6b96f8bc310d6e4eaceff48':
  libvpx: Support the vp9 extended profiles

Conflicts:
	Changelog
	configure
	libavcodec/libvpx.c
	libavcodec/libvpx.h
	libavcodec/libvpxdec.c
	libavcodec/libvpxenc.c
	libavcodec/version.h

mostly not merged, as requested by jamrial

See: 01e59d48ed
See: 079b7f6eac and others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 22:57:54 +02:00
Michael Niedermayer
30e9ebb14f Merge commit '05bf3f54e6078716f6267df530bf1d474ca3d606'
* commit '05bf3f54e6078716f6267df530bf1d474ca3d606':
  libvpx: Do not set vp8 only parameters when encoding in vp9

Conflicts:
	libavcodec/libvpxenc.c

See: 238ec505e2
See: ae330070ee
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 21:08:05 +02:00
Michael Niedermayer
ae215e2b42 Merge commit '6ec688e1bc76dd93151cbca1c340162ae4b10d77'
* commit '6ec688e1bc76dd93151cbca1c340162ae4b10d77':
  mp3: enable packed main_data decoding in MP4

Conflicts:
	libavcodec/mpegaudiodec_template.c

Only the parts needed to support the available sample are merged
the remaining error checks are left in place

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 20:32:06 +02:00
Michael Niedermayer
3bcf61f495 avcodec/jpeg2000dwt: Fix value of F_LFTG_X and I_LFTG_X
Even if the jpeg2000 spec uses a wrong value this does not
make mathematics work this way, also this has been corrected in the 2004
version AFAIK

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 19:25:35 +02:00
Michael Niedermayer
4299f085f4 avcodec/jpeg2000dwt: also test 9/7 float DWT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 15:52:53 +02:00
Luca Barbato
8655c54160 libvpx: Support the vp9 extended profiles
Bump the minimum libvpx version to 1.3.0 and rework the configure logic
to fail only if no decoders and encoders are found.

Based on the original patch from Vittorio.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-21 16:27:18 +03:00
Michael Niedermayer
6528b90dea avcodec/jpeg2000dwt: List differences for DWT test
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 13:43:02 +02:00
Michael Niedermayer
aa594415a0 avcodec/jpeg2000dwt: increase the number of test iterations
the code had too little coverage

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 13:43:02 +02:00
Michael Niedermayer
d23b3f3940 avcodec/jpeg2000dwt: Also test 9/7 integer DWT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 13:43:02 +02:00
Michael Niedermayer
3bd46914fb avcodec/jpeg2000dwt: Allow testing with a maximum allowed difference
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 13:43:02 +02:00
Rodger Combs
0f67351944 lavc/adpcm: THP: don't use the ADPC/SEEK table when not seeking
This is almost certainly closer to how the actual Nintendo players work,
and fixes some output pops in files with blank ADPC/SEEK tables (like
those from brawlcustommusic).
2015-06-21 10:32:13 +00:00
Paul B Mahol
95ee0fbacf Support demuxing 4gv codec stored in qcp files
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-21 09:30:01 +00:00
Michael Niedermayer
dde6b2a355 avcodec/mjpegdec: dont try to combine fields for decimated multiscope 2 material
Fixes Ticket4535

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 02:53:06 +02:00
James Zern
9b747500f3 libvpxenc: support setting colorspace for vp9
the vp9 bitstream supports 8 values:
unknown (default), bt601, bt709, smpte170, smpte240, bt2020, reserved
and sRGB.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Zern <jzern@google.com>
2015-06-20 16:30:46 -07:00
Rodger Combs
631d56ffc8 lavc/adpcm: THP: fix indentation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-21 00:34:21 +02:00
Michael Niedermayer
e70fd57de5 avcodec/mqcenc: Remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 22:36:15 +02:00
Rodger Combs
6b547180b9 lavc/adpcm: THP: allow channel counts up to 10
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 19:21:53 +02:00
Rodger Combs
8e7a06aa5c lavc/adpcm: THP: handle packets with sample counts not divisible by 14
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 16:33:57 +02:00
Rodger Combs
7e7256c3a4 lavc: add little-endian ADPCM_THP decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 16:33:39 +02:00
Michael Niedermayer
bb9f4f94ac avcodec/jpeg2000dec: Replace TPsot check by assert
The condition is impossible now.
the TPsot type is changed to unsigned int to prevent gcc from producing warnings

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 14:26:34 +02:00
Michael Niedermayer
5ba9ec824a avcodec/jpeg2000dec: Increase tile part limit to 256
This is the maximum that the syntax of jpeg2000 is capable to store

Fixes Ticket4639

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 14:26:34 +02:00
Luca Barbato
05bf3f54e6 libvpx: Do not set vp8 only parameters when encoding in vp9 2015-06-20 12:18:01 +03:00
nu774
6ec688e1bc mp3: enable packed main_data decoding in MP4
14496-3 suggests packing main_data of MP3 that is usually scattered
into multiple frames due to bit reservoir.

However, after packing main_data into a access unit, bitrate index
in the MPEG audio frame header doesn't match with actual frame size.

In order to accept this, this patch removes unnecessary frame size
checking on mp3 decoder.

Also, mov demuxer was changed to use MP3 parser only on special cases
(QT MOV with specific sample description) to avoid re-packetizing.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-20 12:18:01 +03:00
Michael Niedermayer
5358953cdf avcodec/jpeg2000dwt: Fill array using 2d instead of 1d accesses
Avoids gcc warning

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 02:14:19 +02:00
Michael Niedermayer
116e7d5418 avcodec/jpeg2000dwt: Factor dwt test code out so it can be easily used with the other dwts too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 02:10:39 +02:00
Michael Niedermayer
a75ca3ca6a avcodec/jpeg2000dwt: Fix special cases in sd_1d53()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 01:40:17 +02:00
Michael Niedermayer
de99ce4306 avcodec/jpeg2000dwt: add test for the 5/3 wavelet
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 01:37:43 +02:00
Michael Niedermayer
75651cd63f avcodec/jpeg2000dwt: Fix order of operations in integer decomposition wavelets
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-20 00:53:56 +02:00
Michael Niedermayer
7e2bdea764 avcodec/j2kenc: Use JP2 format by default
Without the JP2 fields its not possible to identify the colorspace

Fixes Ticket538

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 21:56:57 +02:00
Michael Niedermayer
9a2fc170b1 avcodec/j2kenc: Support writing JP2 encapsulation
The added option matches openjpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 21:51:25 +02:00
Michael Niedermayer
8edc17b639 avcodec/dpxenc: implement write16/32 as functions
Fixes undefined behavior and segfault

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 16:51:54 +02:00
Shivraj Patil
ee3ef5fda2 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for hpel functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for hpel functions in new file hpeldsp_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-19 14:00:12 +02:00
Michael Niedermayer
d277b05c51 avcodec/fic: Add skip_cursor AVOption
Previous version reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 13:57:36 +02:00
Michael Niedermayer
bb3703a4c3 avcodec/j2kenc: YUV should not use the ICT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 05:12:06 +02:00
Michael Niedermayer
76cc8582fd avcodec/fft-test: fix type of cpuflags
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 02:25:48 +02:00
Andreas Cadhalpun
d216b9debd vp9: don't retain NULL as segmentation_map
This fixes segmentation faults, which were introduced in commit
4ba8f327.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-19 00:07:43 +02:00
Michael Niedermayer
57078e4d25 avcodec/hevc_ps: Only discard overread VPS if a previous is available
Fixes Ticket4621

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-18 18:03:21 +02:00
Michael Niedermayer
7b1c03aa74 avcodec/libx264: Avoid reconfig on equivalent aspect ratios
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-18 14:40:11 +02:00
Shivraj Patil
98eb1ac901 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for qpel functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for qpel functions in new file qpeldsp_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-18 12:33:15 +02:00
Michael Niedermayer
08326e73a2 avcodec/jpeg2000dec: Continue decoding reslevels even when empty ones are encountered
Fixes Ticket4635

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-18 02:23:37 +02:00
Michael Niedermayer
3a6a8f6ee1 avcodec/ffv1enc: fix bps for >8bit yuv when not explicitly set
Fixes Ticket4636

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-18 01:01:06 +02:00
Michael Niedermayer
98b95e7466 Merge commit 'd8d124eebcf2ec1f6a1936b12a4f00a48f08e85c'
* commit 'd8d124eebcf2ec1f6a1936b12a4f00a48f08e85c':
  aic: Improve error reporting

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 20:53:34 +02:00
Michael Niedermayer
4624656797 avcodec/j2kenc: Properly flush the end of the truncated AC stream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 20:39:03 +02:00
Michael Niedermayer
e6190045b3 avcodec/mqcenc: Add ff_mqc_flush_to()
This is needed to separate the end padding from the bitstream, allowing
to end it multiple times without disturbing it.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 20:11:43 +02:00
Michael Niedermayer
2687a51a3f avcodec/jpeg2000dec: Drop unneeded rlevel variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 15:48:12 +02:00
Michael Niedermayer
7c3f7e6ed1 avcodec/jpeg2000dwt: Support 9/7 singularity cases on the encoder side
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 15:24:14 +02:00
James Almer
1e79d5c6e7 libwebpenc: use WebPMemoryWriterClear()
WebPMemoryWriterClear() must be used instead of free() when
libwebp ABI version is > 0x0203.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-17 14:13:43 +01:00
Michael Niedermayer
9841024402 avcodec/jpeg2000dwt: More special cases to handle singularities in 9/7 decode
Fixes Ticket4634

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 15:07:50 +02:00
Vittorio Giovara
d8d124eebc aic: Improve error reporting 2015-06-17 14:06:35 +01:00
Shivraj Patil
63eaf529bc avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for H263 lpf functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for H263 lpf functions in new file h263dsp_msa.c

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 13:50:14 +02:00
Rodger Combs
bb42a7d4d4 lavf/brstm: add support for BFSTM files
Previous version reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 13:24:11 +02:00
Michael Niedermayer
1125c71fd7 avcodec/jpeg2000dwt: assert that mod == 0 for encoding
We are missing the handling of some special cases for this.
These cases should be unused and there should be no reason
to ever use them unless some spec dictates their use

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 00:44:27 +02:00
Andreas Cadhalpun
28efeb6502 doc: avoid incorrect phrase 'allows to'
Also fix typo found by Lou Logan:
Sacrifying -> Sacrificing

Reviewed-by: Lou Logan <lou@lrcd.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-16 21:48:51 +02:00
Paul B Mahol
e0dac40306 avcodec/codec_desc: rename smv video codec name to smvjpeg to match decoder name
Also fixes clash with smv audio codec.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-16 19:17:28 +00:00
Michael Niedermayer
34121ca187 avcodec/jpeg2000dwt: Fix 9/7 IDWT for small sizes
Fixes Ticket4631

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-16 20:33:54 +02:00
Michael Niedermayer
8294ec67b5 avcodec/jpeg2000dwt: add special cases for handling length 1 in 5/3 decode
Fixes Ticket4630

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-16 20:16:53 +02:00
Michael Niedermayer
20657e05bc avcodec/jpeg2000dec: Improve end check
Fixes spurious end mismatch warnings

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-16 18:34:20 +02:00
Michael Niedermayer
36241c4055 avcodec/jpeg2000dec: Fix term_cnt check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-16 18:31:59 +02:00
George Boyle
2469ed32c8 avcodec/flacenc: Fix Invalid Rice order
Fixes ticket #4628.

The problem arose, in the sample file at least, in the last block where the
minimum and maximum Rice partition orders were both 0. In that case, and any
other where pmax == pmin, the original UINT32_MAX placeholder value for
bits[opt_porder] was getting overwritten before the comparison to check if the
current partition order is a new optimal, so the correct partition order and
RiceContext params were not being set.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-16 12:55:20 +02:00
Michael Niedermayer
fefe04259a avcodec/jpeg2000dec: increase tile part limit to 32
Fixes Ticket4629

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 23:24:49 +02:00
Michael Niedermayer
20526f2e2f Merge commit '9af7e8045e3e63ab39adedae9a7c11b1c410af26'
* commit '9af7e8045e3e63ab39adedae9a7c11b1c410af26':
  lavc: Clarify the behaviour of dimension and format context fields

Conflicts:
	libavcodec/avcodec.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 22:11:43 +02:00
Michael Niedermayer
4ed3a01d71 Merge commit '03ca6d70df192125a772dadd01acfe3905aa653f'
* commit '03ca6d70df192125a772dadd01acfe3905aa653f':
  x264: Factor out the reconfiguration code

Conflicts:
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 21:56:26 +02:00
James Zern
a829040c43 libvpxenc: remove stray '\'s
Signed-off-by: James Zern <jzern@google.com>
2015-06-15 12:36:38 -07:00
James Zern
e6c71385f0 libvpxenc: cosmetics: reindent after 2c70436
Signed-off-by: James Zern <jzern@google.com>
2015-06-15 12:36:37 -07:00
Michael Niedermayer
2819aeb0f3 avcodec/jpeg2000dec: Omit mqc reinit after the last pass
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 20:49:04 +02:00
Andreas Cadhalpun
fdc64a1044 h264: er: Copy from the previous reference only if compatible
Also use the frame pixel format instead of the one from the codec
context, which is more robust.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-15 18:32:18 +02:00
Michael Niedermayer
96bbbebaf9 avcodec/jpeg2000dec: Fix Vertically causal context formation
Fixes Ticket4626

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 18:12:45 +02:00
Michael Niedermayer
021351f246 avcodec/mqcdec: set raw flag at the begin of ff_mqc_initdec()
This way it is available to any functions called from ff_mqc_initdec()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 17:11:01 +02:00
Andreas Cadhalpun
a4fbd55d6e h264: er: Copy from the previous reference only if compatible
Also use the frame pixel format instead of the one from the codec
context, which is more robust.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-15 13:39:07 +02:00
Luca Barbato
9af7e8045e lavc: Clarify the behaviour of dimension and format context fields
The AVCodecContext width, height, coded_width, coded_height and format
are used mainly as decoding hints and they get internally overwritten
during the data parsing stage.

Do not assume they match the last AVFrame provided by
avcodec_decode_video2 and assimilated functions since multi-threading
and other frame reordering might make those values to refer to frames
that will be outputted in the future.

CC: libav-stable@libav.org
2015-06-15 13:39:07 +02:00
Luca Barbato
03ca6d70df x264: Factor out the reconfiguration code 2015-06-15 13:39:07 +02:00
Michael Niedermayer
4ec14ce121 avcodec/jpeg2000dec: Improve readability of SOP check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 13:29:41 +02:00
Michael Niedermayer
9ba5fe7f3d avcodec/jpeg2000dec: Remove redundant check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 03:11:58 +02:00
Michael Niedermayer
5b0f55aab9 avcodec/jpeg2000dec: Check reslevelno in RPCL
Fixes out of array read
Fixes Ticket4627

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 03:00:53 +02:00
Michael Niedermayer
a58f1bcc4c avcodec/jpeg2000dec: Skip SOP
Fixes Ticket4625

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 02:32:45 +02:00
Michael Niedermayer
4bfdd967a6 avcodec/jpeg2000dec: Use <0 instead of != 0 for error checking
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 02:19:48 +02:00
Michael Niedermayer
5ef578d03a avcodec/jpeg2000dec: Also include remaining length in "Block length" error message
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-15 01:43:14 +02:00
Michael Niedermayer
ec5164aa31 avcodec/jpeg2000: Fix regression with multiple tiles
Fixes Ticket 4624

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 22:59:50 +02:00
Michael Niedermayer
a206c13289 avcodec/jpeg2000: Change codeblock coords to same origin as bands
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 22:59:50 +02:00
Michael Niedermayer
d9841e53e2 avcodec/jpeg2000: Change precinct coords to same origin as bands
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 22:59:42 +02:00
Michael Niedermayer
59c107292c avcodec/jpeg2000: Fix band coords
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 21:58:38 +02:00
Michael Niedermayer
6b08dc393b avcodec/jpeg2000dec: Print warning if the mqc pointer mismatches at the end
If this occurs on valid and correctly decoded files it should be reduced to debug
level

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 21:40:09 +02:00
Michael Niedermayer
91c8025c44 avcodec/jpeg2000dec: Show the progression order at debug level for all variants
It was previously shown just for some, this makes it consistent

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 21:40:08 +02:00
Michael Niedermayer
742a26c489 avcodec/jpeg2000dec: Print error messages for more error conditions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 15:15:51 +02:00
Andreas Cadhalpun
ed0b1db640 doc: fix spelling errors
Neccessary -> Necessary
formated   -> formatted
thee       -> the
eventhough -> even though
seperately -> separately

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-14 15:09:33 +02:00
Michael Niedermayer
ad072a134f avcodec/jpeg2000dec: Handle format that has planes matching YUVA420P structure but seems not to be that
Outputs something for p0_05.j2k

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 13:01:12 +02:00
Michael Niedermayer
132bf0bbb7 avcodec/jpeg2000dec: Print all cdx/cdy values not just the 2nd and 3rd
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 11:49:49 +02:00
Philip Langdale
1b19d0c632 avcodec/hevc: Track long and short term RPS size for VDPAU
Today, we track the short term RPS size for DXVA, but only if the
SliceHeader RPS is being used. Otherwise it's left uninitialized.

NVIDIA's VDPAU implementation requires that the size be accurately
tracked even if an SPS RPS is being used. In this case, it's really
counting the size of the RPS idx information, but you end up with
mangled output if the value is not accurate.

VDPAU also needs the size of the long term RPS.

Signed-off-by: Philip Langdale <philipl@overt.org>
2015-06-13 21:09:24 -07:00
Philip Langdale
01fac84fe4 avcodec/nvenc: Enable YV12 input format
This has been enabled by recent nvidia driver releases.

Signed-off-by: Philip Langdale <philipl@overt.org>
2015-06-13 21:09:24 -07:00
Michael Niedermayer
4a3bc0d9a5 avcodec/jpeg2000dec: Implement "Reset context probabilities on coding pass boundaries"
No testcase with just this feature known

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 03:38:41 +02:00
Michael Niedermayer
612f8cae06 avcodec/jpeg2000dec: Support RPCL
Fixes Ticket 2792

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-14 02:53:51 +02:00
James Almer
9f815bc2c2 avcodec/jpeg200dsp: add ff_rct_int_{sse2,avx2}
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-06-13 16:53:31 -03:00
James Almer
7912a6830d avcodec/jpeg200dsp: add ff_ict_float_{sse,avx}
Original intrinsics version by Nicolas Bertrand.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-06-13 16:53:27 -03:00
Clément Bœsch
324cf0645d avcodec/ass_split: check ASSSplitContext alloc 2015-06-13 20:39:57 +02:00
Michael Niedermayer
c3517c377e avcodec/jpeg2000dec: Support PCRL
Fixes Ticket4603

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 13:56:49 +02:00
Michael Niedermayer
eb1beb9e1c avcodec/jpeg2000dec: Try to fix remaining DCinema hardcoded TODOs in CPRL
Again, no testcase

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 13:37:56 +02:00
Michael Niedermayer
0a3eb0422a avcodec/jpeg2000dec: try to correct tile location in CPRL code
No testcase

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 13:09:13 +02:00
Michael Niedermayer
7c244349fc avcodec/jpeg2000dec: Factorize component out of CPRL loop
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 13:09:13 +02:00
Michael Niedermayer
86efe83177 avcodec/jpeg2000dec: Fix x/y step TODO for CPRL
No testcase known

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 13:09:13 +02:00
Carl Eugen Hoyos
3323c5f353 Remove a few occurences of "long long" from the libraries. 2015-06-13 09:28:41 +02:00
Shivraj Patil
178ba1fd03 avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for AVC qpel functions
This patch adds MSA (MIPS-SIMD-Arch) optimizations for AVC qpel functions in new file h264qpel_msa.c
Adds new generic macros (needed for this patch) in libavutil/mips/generic_macros_msa.h

Added const to local static array.

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 02:21:55 +02:00
Michael Niedermayer
df037fe107 avcodec/smvjpegdec: assert that the pixel format that has been set by our decoder is valid
If we do check av_pix_fmt_desc_get() then we should fail and
not continue with an invalid pix_fmt

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-13 00:51:29 +02:00
Michael Niedermayer
2cbadf51e8 Merge commit '3b73d5c942f44b37f0e44276ebcfd66c8b12c02d'
* commit '3b73d5c942f44b37f0e44276ebcfd66c8b12c02d':
  fft-test: Use the float fabs() version

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 23:12:06 +02:00
Michael Niedermayer
fd04082af9 Merge commit '2d5176fad1a4556d209cbfb0f681712c7eada4fd'
* commit '2d5176fad1a4556d209cbfb0f681712c7eada4fd':
  on2avc: Use the integer abs() version

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 23:04:30 +02:00
Michael Niedermayer
63b0356274 Merge commit 'b7a4127a45b780d76e6b09427a3d0197c4bc1cdb'
* commit 'b7a4127a45b780d76e6b09427a3d0197c4bc1cdb':
  h264_qpel: Use the correct header

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:55:40 +02:00
Michael Niedermayer
b68b5ec513 Merge commit '5e87080f2c73186066df0b9c43877b4af0beef3a'
* commit '5e87080f2c73186066df0b9c43877b4af0beef3a':
  h264_weight: Fix SSSE3 biweight code with weights of 128

Conflicts:
	libavcodec/x86/h264_weight.asm

See: e100966575
See: fb2288834b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:47:01 +02:00
Michael Niedermayer
85d0df0c30 Merge commit '64a2e844166d62093b45e680874eea8bd1facf5b'
* commit '64a2e844166d62093b45e680874eea8bd1facf5b':
  eamad: Use the correct headers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:42:50 +02:00
Michael Niedermayer
d52c5e9d75 Merge commit '8606e881b02bec2ac24943d22c8afe11d641fac8'
* commit '8606e881b02bec2ac24943d22c8afe11d641fac8':
  mpeg12: Move the vlc bits to a stand alone file

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:34:22 +02:00
Michael Niedermayer
dbf172e6f4 Merge commit 'f1fa1eed2abdc8dfb0af318a43f5d293b81141bd'
* commit 'f1fa1eed2abdc8dfb0af318a43f5d293b81141bd':
  mpegvideo: Expand macro

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:25:21 +02:00
Andreas Cadhalpun
1189af4292 h264: update avctx width/height/pix_fmt when returning frame
Inconsistencies between the dimensions/pixel format of avctx and the
frame can confuse API users.
For example this can crash the demuxing_decoding example.

Back up the previous values and restore them, when decoding the next
frame. This is necessary, because these can be different between the
returned frame and the last decoded frame.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-12 21:22:00 +02:00
Michael Niedermayer
b5c71fba59 Merge commit 'e7af52a68dde9144b273a9598b60bf0f56e1323b'
* commit 'e7af52a68dde9144b273a9598b60bf0f56e1323b':
  mpegvideo: rv10: Move function declaration to a separate header

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 21:05:57 +02:00
Michael Niedermayer
218f58a16a Merge commit 'e3d0f49abb20a551bf6d885f75c354d6d0bbeb9d'
* commit 'e3d0f49abb20a551bf6d885f75c354d6d0bbeb9d':
  mpegvideo: h263: Move all tables to a single file

Conflicts:
	libavcodec/h263.h
	libavcodec/h263data.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 20:57:37 +02:00
Michael Niedermayer
58f63670e1 Merge commit '8b5007a31b8d1ddbe3661bf45a732336450b7d25'
* commit '8b5007a31b8d1ddbe3661bf45a732336450b7d25':
  mpegvideo: Move ER functions to a separate file

Conflicts:
	libavcodec/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 20:47:14 +02:00
Przemysław Sobala
c39637f36a libavcodec/imgconvert.c: support left band while cropping
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 19:52:30 +02:00
Vittorio Giovara
3b73d5c942 fft-test: Use the float fabs() version
Fixes clang warning "absolute value function 'fabsf' given an argument
of type 'double' but has parameter of type 'float' which may cause
truncation of value [-Wabsolute-value]".
2015-06-12 17:15:18 +01:00
Vittorio Giovara
2d5176fad1 on2avc: Use the integer abs() version
Fixes clang warning "floating point absolute value function 'fabsf'
when argument is of integer type [-Wabsolute-value]".
2015-06-12 17:02:49 +01:00
Vittorio Giovara
b7a4127a45 h264_qpel: Use the correct header 2015-06-12 17:02:48 +01:00
Michael Niedermayer
5e87080f2c h264_weight: Fix SSSE3 biweight code with weights of 128
CC: libav-stable@libav.org
Sample-Id: test_bref.mp4

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-06-12 17:02:48 +01:00
Michael Niedermayer
971b377960 avcodec/jpeg2000dec: Reduce verbosity of get_plt()
The existence of such element does not represent an error

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 16:48:57 +02:00
Michael Niedermayer
5b2f9790e6 avcodec/jpeg2000dec: Fallback to yuv if no matching xyz format exists
Fixes Ticket4471

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 16:44:11 +02:00
Michael Niedermayer
eaa8685033 avcodec/jpeg2000dec: Do not abort if prc is outside limits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 16:30:50 +02:00
Michael Niedermayer
3dea13e710 avcodec/jpeg2000dec: Assert that pixel format descriptor is not NULL
We only look up pixel formats from a fixed list so none should ever
fail to be found

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 14:33:53 +02:00
Luca Barbato
64a2e84416 eamad: Use the correct headers
Untangle eamad from the mpeg12.h header and speed up rebuilding.
2015-06-12 12:29:46 +01:00
Luca Barbato
8606e881b0 mpeg12: Move the vlc bits to a stand alone file 2015-06-12 12:29:46 +01:00
Vittorio Giovara
f1fa1eed2a mpegvideo: Expand macro
Having this macro in an header only facilitates the use of such header.
The code increase is minimal and files have one less dependency
on mpegvideo.h.
2015-06-12 12:29:46 +01:00
Vittorio Giovara
e7af52a68d mpegvideo: rv10: Move function declaration to a separate header 2015-06-12 12:26:54 +01:00
Vittorio Giovara
e3d0f49abb mpegvideo: h263: Move all tables to a single file 2015-06-12 12:26:04 +01:00
Vittorio Giovara
8b5007a31b mpegvideo: Move ER functions to a separate file 2015-06-12 11:57:26 +01:00
Michael Niedermayer
e7adb02d3b avcodec/jpeg2000dec: Do not hardcode tile part usage
Fixes part of Ticket 4605

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 04:51:37 +02:00
Michael Niedermayer
1b3fbe41c5 avcodec/jpeg2000dec: Do not print a warning for RLCP
It seems to be working now

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 04:51:30 +02:00
Michael Niedermayer
4af9eb4f75 avcodec/jpeg2000dec: Remove unused variable and argument
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 03:33:31 +02:00
Michael Niedermayer
dc73c7adc0 avcodec/jpeg2000dec: Fix Selective arithmetic coding bypass and Multiple codeword segments
These 2 are highly related so they are in the same commit
Fixes part of Ticket4605
Fixes p0_04.j2k

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 03:12:54 +02:00
Michael Niedermayer
eea92133a1 avcodec/mqcdec: Support raw bypass and non reseting init
Some broken code that used the old mqc is removed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-12 03:02:09 +02:00
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
Michael Niedermayer
653bf3c5a1 avcodec/hq_hqa: Fix signness of tag
Fixes Ticket4509

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 19:11:27 +02:00
Donny Yang
130a6c04a4 avcodec/apng: Add partial support for blending with PAL8 pixel format
Currently restricted to blending pixels that only contain either
0 or 255 in their alpha components

Signed-off-by: Donny Yang <work@kota.moe>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 16:27:57 +02:00
Donny Yang
33292c07fe avcodec/apng: Add support for blending with GRAY8A pixel format
Signed-off-by: Donny Yang <work@kota.moe>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 16:18:34 +02:00
Donny Yang
0ab1c46fe0 avcodec/apng: Add blending support for non-alpha pixel formats
Signed-off-by: Donny Yang <work@kota.moe>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 15:44:22 +02:00
Donny Yang
ed09bb3782 avcodec/apng: Dispose previous frame properly
The spec specifies the dispose operation as how the current (i.e., currently
being rendered) frame should be disposed when the next frame is blended onto it

This is contrary to ffmpeg's current behaviour of interpreting the dispose
operation as how the previous (i.e., already rendered) frame should be disposed

This patch fixes ffmpeg's behaviour to match those of the spec, which involved
a rewrite of the blending function

Signed-off-by: Donny Yang <work@kota.moe>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 15:32:49 +02:00
Vittorio Giovara
925b80d640 mpegvideo: Move OutFormat enum to mpegutils.h
It is necessary to avoid circular header dependencies.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
9bb11be0e5 mpegvideo: Split picture allocation for encoding and decoding
The main ff_alloc_picture() function is made more generic with all the
parameters necessary as arguments. This will allows to move most of the
related functions to a separate file later.

Right now wrappers are provided to try and minimize the number of
changes in the code.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
f8716a1408 mpegvideo: Rework frame_size_alloc function
Use more generic arguments and remove its static attribute since it will
be moved to a separate file.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
da0c8664b4 mpegvideo: Move various temporary buffers to a separate context 2015-06-08 12:39:42 +01:00
Max Poliakovski
4b343f7c35 atrac3plus: give the phase_shift flag a better name.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 11:45:22 +02:00
Max Poliakovski
d765e07322 atrac3plus: add support for GHA phase inversion.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 04:26:04 +02:00
Michael Niedermayer
990605768c avcodec/aacdec: Do not return a uninitialized value
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 02:33:39 +02:00
Michael Niedermayer
153d23ee39 Merge commit 'bc76c46943272515805d7ac48ca39f14826d1fed'
* commit 'bc76c46943272515805d7ac48ca39f14826d1fed':
  aac: Wait to know the channels before allocating frame

Conflicts:
	libavcodec/aacdec.c

See: 676a395ab9
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 02:28:44 +02:00
Michael Niedermayer
476692abdb Merge commit 'a188108ebf28ebac9d2b8fc7d5b391aef45698b3'
* commit 'a188108ebf28ebac9d2b8fc7d5b391aef45698b3':
  aac: Support channel configurations 11 and 12

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 01:31:15 +02:00
Michael Niedermayer
8eb2c411c1 Merge commit '677c804aa3a78d61b21e6423165a252846c20f0e'
* commit '677c804aa3a78d61b21e6423165a252846c20f0e':
  aac: correctly map 7.1ch-wide AAC from FDK AAC encoder

Sample: FDK_7.1ch_wide.aac
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-08 01:29:36 +02:00
Michael Niedermayer
4c4c3d5d5a avcodec/libstagefright: Check for pthread_create() failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-07 21:20:21 +02:00
Luca Barbato
bc76c46943 aac: Wait to know the channels before allocating frame
The channel configuration can be delivered only by the PCE,
try to parse it first and not try to decode until a channel
configuration is set.

CC: libav-stable@libav.org
2015-06-07 10:14:46 +02:00
Sebastian Dröge
a188108ebf aac: Support channel configurations 11 and 12
These are defined in ISO/IEC 14496-3:2009/PDAM 4 for 6.1 and 7.1.
It also defines another 7.1 layout with configuration 14, that one
is not added here for now.

11: 3/3.1    FC FL+FR BL+BR BC LFE
12: 3/2/2.1  FC FL+FR SiL+SiR BL+BR LFE

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-07 10:14:46 +02:00
nu774
677c804aa3 aac: correctly map 7.1ch-wide AAC from FDK AAC encoder
FDK AAC encoder outputs SCE(front)+CPE(front)+CPE(back)+CPE(back) on
MODE_7_1_REAR_SURROUND configuration.
Since decoder couldn't properly map 4 back channels, decoding failed
unless -request_channel_layout 0x8000000000000000 has been specified.
Now we treat first CPE(back) as CPE(side) on channel mapping.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-07 10:14:45 +02:00
Philip Langdale
cc904353fa avcodec/allcodecs: Re-order nvenc encoders below x264/5.
We shouldn't pick nvenc by default.

Signed-off-by: Philip Langdale <philipl@overt.org>
2015-06-06 20:29:17 -07:00