Commit Graph

24246 Commits

Author SHA1 Message Date
Michael Niedermayer 84a6bc2357 jpeg2000: tag_tree_size: replace check by assert
This function is never called with values large enough for the
error condition to occur

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 14:43:09 +02:00
Michael Niedermayer 8bedbb82ce j2k/jpeg2000: split data pointer in int & float.
This fixes a TODO item and unifies both decoders structures
It also fixes undefined behavior due to aliasing violations

I choose 2 fields instead of a union because mistakely using the
wrong type with a union will lead to hard to debug "wrong output"
while with 2 fields mistakely using the wrong type will crash
with a null pointer derefernce which is much easier to debug

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 14:18:53 +02:00
Michael Niedermayer 1a7ae6be2a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  arm: Include hpeldsp_neon.o if h264qpel is enabled

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 11:21:45 +02:00
Michael Niedermayer e119d1b345 Merge commit 'efb7968cfe8b285ab4f27b363719b7c92d19ec74'
* commit 'efb7968cfe8b285ab4f27b363719b7c92d19ec74':
  arm: Don't unconditionally build dsputil files

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 11:02:21 +02:00
Michael Niedermayer 0b539da4c7 Merge commit '36a7df8cf1115aa37a1b0d42324ecde5ab6c2304'
* commit '36a7df8cf1115aa37a1b0d42324ecde5ab6c2304':
  arm: Only build the FFT init files if FFT is enabled

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 10:57:14 +02:00
Michael Niedermayer 3a0e21f037 Merge commit '186599ffe0a94d587434e5e46e190e038357ed99'
* commit '186599ffe0a94d587434e5e46e190e038357ed99':
  build: cosmetics: Place unconditional before conditional OBJS lines

Conflicts:
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 10:49:43 +02:00
Michael Niedermayer 1bbbbb0a32 Merge commit '9b9b2e9f3036abfd42916bcf734af14b4cb686aa'
* commit '9b9b2e9f3036abfd42916bcf734af14b4cb686aa':
  build: arm: cosmetics: Place all OBJS declarations in alphabetical order

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 10:37:52 +02:00
Michael Niedermayer 103ffde5a3 Merge commit '701966730ce10290fd49c5ccedd73f505680f764'
* commit '701966730ce10290fd49c5ccedd73f505680f764':
  vmd: drop incomplete chunks and spurious samples

Conflicts:
	libavcodec/vmdav.c

2 of the changes are replaced by assert0s, as they should
be impossible.
The actual bug is likely caused by a invalid block_align
which is checked for and thus impossible in ffmpeg.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 10:36:52 +02:00
Michael Niedermayer ab78e21ea2 Merge commit '676da248cad49debc40720baa13214f0b94dcc71'
* commit '676da248cad49debc40720baa13214f0b94dcc71':
  vmd: refactor the inner decode loop

Conflicts:
	libavcodec/vmdav.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 09:44:57 +02:00
Michael Niedermayer 8ef89833d0 Merge commit 'c8f3cb9119c2183680d44a509a1b5a9817a3bee9'
* commit 'c8f3cb9119c2183680d44a509a1b5a9817a3bee9':
  vmd: return meaningful errors

Conflicts:
	libavcodec/vmdav.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 09:37:14 +02:00
Michael Niedermayer 455ae871a8 libavcodec/smvjpegdec: pass flags / idct algo into jpeg avctx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 03:30:01 +02:00
Martin Storsjö 86113667c0 arm: Include hpeldsp_neon.o if h264qpel is enabled
A few of the h264qpel neon functions are shared with other
hpeldsp functions in this file.

This fixes standalone compilation of the h264 decoder on arm.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:37 +03:00
Martin Storsjö efb7968cfe arm: Don't unconditionally build dsputil files
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:35 +03:00
Martin Storsjö 36a7df8cf1 arm: Only build the FFT init files if FFT is enabled
This fixes build errors in cases where FFT is disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:33 +03:00
Diego Biurrun 186599ffe0 build: cosmetics: Place unconditional before conditional OBJS lines
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:31 +03:00
Diego Biurrun 9b9b2e9f30 build: arm: cosmetics: Place all OBJS declarations in alphabetical order
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:27 +03:00
Reimar Döffinger dccaad3bcd wamenc: handle failure to encode.
This is necessary since the switch to floating point
input means there is no longer sufficient input data
validation.
There is a good chance that other encoders are affected
by similar issues.
This problem can be triggered by trying to encode
extremely large values and probably also with Inf and
possibly also NaNs.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-05-29 22:31:16 +02:00
Luca Barbato 701966730c vmd: drop incomplete chunks and spurious samples
Odd chunk size makes no sense for stereo and incomplete chunks are
not supported.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-29 21:30:21 +02:00
Michael Niedermayer ac025d6eca j2kdec: remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 19:57:03 +02:00
Michael Niedermayer 0abe923d20 mpegvideo: fix forgotten lowres op_index limits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 19:55:27 +02:00
Michael Niedermayer c2625c26c5 mpegvideo: implement ff_put_h264_chroma_mc1 & ff_avg_h264_chroma_mc2
These are needed for lowres 3

This may fix Ticket2538

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 19:48:03 +02:00
Paul B Mahol 7984ed87c1 tiff: support inverted fill_order for packbits compression
Fixes #1995.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-05-29 13:43:03 +00:00
Paul B Mahol 30d7dcce4c tiff: add helper function for fill_order case
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-05-29 13:42:55 +00:00
Paul B Mahol b257d9a01f alac: use init_get_bits8()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-05-29 12:37:33 +00:00
Paul B Mahol 7469be099e lavc/tta: use init_get_bits8()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-05-29 12:30:07 +00:00
Luca Barbato 676da248ca vmd: refactor the inner decode loop
Simplify a little, assume empty frames are acceptable and
do not pointlessly reinit the bytestream2 contexts using
possibly wrong size values.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-29 12:11:47 +02:00
Luca Barbato c8f3cb9119 vmd: return meaningful errors
CC: libav-stable@libav.org
2013-05-29 12:11:47 +02:00
Luca Barbato 91a6944e56 vmd: use the PALETTE_COUNT constant uniformly
While at it drop useless parentheses.
2013-05-29 12:11:47 +02:00
Michael Niedermayer 200ef1e3c3 Merge commit '9f30fb5a773d59298d8d45c741b3fd971d84c97b'
* commit '9f30fb5a773d59298d8d45c741b3fd971d84c97b':
  configure: Don't pass -mthumb or -march= to MSVC
  mpeg12: skip frames consistently

Conflicts:
	libavcodec/mpeg12dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 11:06:26 +02:00
Michael Niedermayer 7a2edcf1c8 Merge commit '89806691b1c39181c63d95e0fddc30f11e2a7b04'
* commit '89806691b1c39181c63d95e0fddc30f11e2a7b04':
  wavpack: check that all the channels were coded.
  wavpack: check that there aren't too many blocks per packet

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 05:01:35 +02:00
Michael Niedermayer 4d2825a317 Merge commit '7d039e70a5ff23a7deaa866684d2e8872acc5169'
* commit '7d039e70a5ff23a7deaa866684d2e8872acc5169':
  wavpack: extract channel information from the bitstream

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 04:37:58 +02:00
Michael Niedermayer 8543575cc4 Merge commit '78f75b6fa421dd39a715588e9487579f1ce5bada'
* commit '78f75b6fa421dd39a715588e9487579f1ce5bada':
  wavpack: extract sample rate from the bitstream
  configure: support gcc-4.8 instrumentation

Conflicts:
	libavcodec/wavpack.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 04:33:27 +02:00
Michael Niedermayer e755c8ac46 Merge commit '4a27a52a1f74016095b7aee1b4a422cf62217ade'
* commit '4a27a52a1f74016095b7aee1b4a422cf62217ade':
  fate: Don't use files from SRC_PATH in the actual tests
  indeo4: reuse context block VLC for band instead of defaulting

Conflicts:
	tests/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 04:02:23 +02:00
Michael Niedermayer ca90ca8ce3 Merge commit '6647aa0426e73839b9b1d1c9d86188f469167531'
* commit '6647aa0426e73839b9b1d1c9d86188f469167531':
  indeo4: add missing Haar and slanted transforms
  dxtory v2 support

Conflicts:
	libavcodec/indeo4.c
	libavcodec/ivi_dsp.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 03:52:16 +02:00
Michael Niedermayer a58e10e5d1 Merge commit '728214992e3698305550c1762f973d2ac567f016'
* commit '728214992e3698305550c1762f973d2ac567f016':
  vc1dec: Remove interlaced warning
  vc1dec: Fix mixed field/frame intensity compensation
  vc1dec: Match addressing between compensation and MC in vc1_mc_4mv_chroma4
  vc1dec: Handle top and bottom blocks in vc1_mc_4mv_chroma4() differently if needed
  vc1dec: Fix doxy for vc1_mc_4mv_chroma4()
  vc1dec: Drop old use_ic code from vc1_b_mc
  vc1: Use shuffled use_ic instead of equally shuffled mv_mode
  vc1dec: Implement intensity compensation for vc1_interp_mc()

Conflicts:
	Changelog
	libavcodec/vc1dec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 03:28:18 +02:00
Michael Niedermayer 28923f1923 Merge commit '28243b0d35b47bbf9abbd454fc444a6e0a9e7b71'
* commit '28243b0d35b47bbf9abbd454fc444a6e0a9e7b71':
  vc1dec: Redesign the intensity compensation

Conflicts:
	libavcodec/vc1.c
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 03:00:04 +02:00
Michael Niedermayer 83fd377c94 j2k/jpeg2000: merge float DWT and related code
the float conditions are largely changed to check the DWT
instead of the bitexact flag, which previously was wrong
(DWT53 is always int)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 00:29:25 +02:00
Michael Niedermayer a510abd5d1 j2kdec:merge mct_decode from jpeg2000
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 23:49:11 +02:00
Michael Niedermayer c37d735c1c jpeg2000dec: mct_decode: remove unused return
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 23:49:11 +02:00
Michael Niedermayer fe7136ef82 j2k/jpeg2000: split stepsize in float & int variables
This is more clear and less prone to mistakes.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 22:16:14 +02:00
Michael Niedermayer aa0d11ed0b jpeg2000dec: remove unneeded returns
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 22:16:14 +02:00
Michael Niedermayer f7129ab928 j2k/jpeg2000: fix typo in lut_gain index
no testcase

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 22:16:14 +02:00
Janne Grunau bf20cdbd86 mpeg12: skip frames consistently
The decoder did not start predicted frames with missing references but
called the end of frame handling on them anyway. This caused an
assertion in the VA API HW accelorator since it tried to render a
picture with uninitialized buffers.
2013-05-28 19:18:10 +02:00
Michael Niedermayer 32475f56f3 j2kdec/jpeg2000dec: partially merge quantization code
The quantization code needs more work, not so much work
merging but more work investigating what is correct.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 19:02:00 +02:00
Michael Niedermayer f0a2c8285a j2kdec: Try to fix 8bps output case
Ive no test samples for which this makes a difference but it
matches the 16bit implementation.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 18:58:46 +02:00
Anton Khirnov 89806691b1 wavpack: check that all the channels were coded. 2013-05-28 17:47:24 +02:00
Anton Khirnov eae1b8451a wavpack: check that there aren't too many blocks per packet 2013-05-28 17:47:17 +02:00
Anton Khirnov 7d039e70a5 wavpack: extract channel information from the bitstream
This way we don't require the caller to parse the block header. It also
allows the channel configuration to change mid-stream.
2013-05-28 17:47:04 +02:00
Anton Khirnov 78f75b6fa4 wavpack: extract sample rate from the bitstream
This way we don't require the caller to parse the block header. It also
allows the sample rate to change mid-stream.
2013-05-28 17:46:03 +02:00
Kostya Shishkov 2cf5d29110 indeo4: reuse context block VLC for band instead of defaulting
Currently if no custom block VLC is specified for band, a default block VLC
will be used, while the global block VLC stored in the context should be used
instead.

This fixes decoding of one sample I have.
2013-05-28 14:10:58 +02:00