Commit Graph

32722 Commits

Author SHA1 Message Date
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