Commit Graph

24900 Commits

Author SHA1 Message Date
Stefano Sabatini
4aa2874ab1 lavc/avcodec.h: extend documentation for AVPicture API 2013-07-15 12:24:47 +02:00
Luca Barbato
5b2a29552c indeo: Reject impossible FRAMETYPE_NULL
A frame marked FRAMETYPE_NULL cannot be scalable and requires a
previous frame successfully decoded.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:46:50 +02:00
Luca Barbato
f9e5261cab indeo: Do not reference mismatched tiles
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:46:30 +02:00
Luca Barbato
28dda8a691 indeo: Sanitize ff_ivi_init_planes fail paths
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:29:59 +02:00
Luca Barbato
b0eeb9d442 indeo5: return proper error codes 2013-07-15 11:29:59 +02:00
Luca Barbato
25a6666f6c indeo: Bound-check before applying motion compensation
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-15 11:29:59 +02:00
Michael Niedermayer
febbddbdd5 indeo4: print an error message if ref_mb is needed but unavailable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 15:18:03 +02:00
Michael Niedermayer
76d0a6656b indeo: print errors if transform and block size mismatch
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 14:20:42 +02:00
Michael Niedermayer
a8e5fac1fb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  indeo: Bound-check before applying transform

Conflicts:
	libavcodec/indeo4.c
	libavcodec/indeo5.c
	libavcodec/ivi_common.c

See: af38823709, 0846719dd1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 13:37:40 +02:00
Michael Niedermayer
ccb422a697 Merge commit 'cd78e934c246d1b2510f8fba0abfe40bb75795f6'
* commit 'cd78e934c246d1b2510f8fba0abfe40bb75795f6':
  indeo4: Validate scantable dimension

See: 92f7f1db42
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 13:08:13 +02:00
Michael Niedermayer
8c0bb19522 Merge commit '6255ccf7d51c82ab79bf0cd47a921f572dda4489'
* commit '6255ccf7d51c82ab79bf0cd47a921f572dda4489':
  indeo4: Check the quantization matrix index

Conflicts:
	libavcodec/indeo4.c

See: 8a20774a24

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 12:43:45 +02:00
Michael Niedermayer
5462361937 Merge commit '8435bca087c0e79385763c51de009fd89390b6a5'
* commit '8435bca087c0e79385763c51de009fd89390b6a5':
  indeo4: Do not access missing reference MV

Conflicts:
	libavcodec/indeo4.c

See: 5216245a, aae44fb4

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 12:38:54 +02:00
Michael Niedermayer
ac20ba35e3 Merge commit '031be5b41b54c3b666f31d83fe3ad41c194af8c5'
* commit '031be5b41b54c3b666f31d83fe3ad41c194af8c5':
  ac3dec: Consistently use AC3_BLOCK_SIZE and sizeof

Conflicts:
	libavcodec/ac3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 12:10:38 +02:00
Luca Barbato
dc79685195 indeo: Bound-check before applying transform
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-13 19:11:18 +02:00
Luca Barbato
cd78e934c2 indeo4: Validate scantable dimension
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-13 19:11:18 +02:00
Luca Barbato
6255ccf7d5 indeo4: Check the quantization matrix index
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-13 19:11:18 +02:00
Luca Barbato
8435bca087 indeo4: Do not access missing reference MV
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-13 19:11:18 +02:00
Martin Storsjö
031be5b41b ac3dec: Consistently use AC3_BLOCK_SIZE and sizeof
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-13 19:06:52 +03:00
Martin Storsjö
68e57cde68 ac3dec: Increment channel pointers only once per channel
If the channel mapping map multiple output channels to one
input channel, we should only increment the actual pointer once.

Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-13 18:55:07 +03:00
Nicolas Bertrand
886e1b36f5 jpeg2000: Remove unused passes array in Jpeg200Cblk structure
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-13 14:28:48 +02:00
Nicolas Bertrand
f56fe04de3 jpeg2000: Initialize only once mqc arrays
Improves decoding speed.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-13 07:54:12 +02:00
Carl Eugen Hoyos
8e3c5c70ca g726: Do not try to decode more than one channel.
Ask for a sample instead.

Reviewed-by: Derek Buitenhuis
2013-07-13 17:16:30 +02:00
Michael Niedermayer
4cdb42b428 avcodec/012v: improve stride selection
Fixes decoding some files
Fixes Ticket2126

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-13 16:23:31 +02:00
Michael Niedermayer
f57119b8e5 jpeg2000: fix overflow in dequantization
Fixes decoding of file generated with:
ffmpeg -f lavfi -i smptehdbars=hd720 -pix_fmt rgb48 /tmp/o.jp2

Reviewed-by: Nicolas BERTRAND <nicoinattendu@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-13 12:44:37 +02:00
Nicolas Bertrand
dd1382ac95 jpeg2000: Initialize only once mqc arrays
Increases encoding and decoding speed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 23:43:09 +02:00
Michael Niedermayer
8aea97a49d avcodec/jpeglsdec: Implement the 4th (lossy) transform
Fixes remainder of Ticket893

Std deviation from the intended image is 0.11, max sample error +-1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 17:52:03 +02:00
Michael Niedermayer
cce254373c Merge commit '3802833bc1f79775a1547c5e427fed6e92b77e53'
* commit '3802833bc1f79775a1547c5e427fed6e92b77e53':
  dca: Respect the current limits in the downmixing capabilities

Conflicts:
	libavcodec/dcadec.c

See: 8e77c3846e

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 14:49:27 +02:00
Michael Niedermayer
107a56c1ed Merge commit 'f261e508459e28beca59868a878e1519a44bb678'
* commit 'f261e508459e28beca59868a878e1519a44bb678':
  dca: Error out on missing DSYNC

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 14:13:22 +02:00
Michael Niedermayer
73f940e4d9 Merge commit 'c82da343e635663605bd81c59d872bee3182da73'
* commit 'c82da343e635663605bd81c59d872bee3182da73':
  pcm: always use codec->id instead of codec_id

This is not merged as we consistently use codec_id, while libav against what
the comit message might hint at mixes both in the decoder.
Its fine to use either but it should be consistent.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 14:08:32 +02:00
Michael Niedermayer
0da0caa9a9 Merge commit 'c0d973c41b4568d5bad1295879e35cfa611bdcf2'
* commit 'c0d973c41b4568d5bad1295879e35cfa611bdcf2':
  vdpau: use the correct namespace for the union

Conflicts:
	libavcodec/vdpau.h

See: 68dfe530e0

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 13:47:37 +02:00
Michael Niedermayer
e9348e107b Merge commit 'e9d394f3fad7e8fd8fc80e3b33cb045bbaceb446'
* commit 'e9d394f3fad7e8fd8fc80e3b33cb045bbaceb446':
  mlpdec: Do not set invalid context in read_restart_header

Conflicts:
	libavcodec/mlpdec.c

See: a9cd12ee2a

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 13:28:40 +02:00
Michael Niedermayer
9d47333e3e Merge commit '2b379a925162b6783bd9a81dc03e647e8b65494c'
* commit '2b379a925162b6783bd9a81dc03e647e8b65494c':
  mlpdsp: x86: Respect cpuflags

Conflicts:
	libavcodec/x86/mlpdsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 13:10:53 +02:00
Michael Niedermayer
50617fce07 Merge commit '3abde1a3b49cf299f2aae4eaae6b6cb5270bdc22'
* commit '3abde1a3b49cf299f2aae4eaae6b6cb5270bdc22':
  pcx: Do not overread source buffer in pcx_rle_decode

Conflicts:
	libavcodec/pcx.c

See: 8cd1c0febe
Bytestream based system is left in place and not switched to buf+end, such switch would be
a step backward

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 12:58:13 +02:00
Michael Niedermayer
54bbb90568 Merge commit '170fb593c617cd797d00cf05bfb8d8c21d612893'
* commit '170fb593c617cd797d00cf05bfb8d8c21d612893':
  pcx: K&R formatting cosmetics

Conflicts:
	libavcodec/pcx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 12:36:04 +02:00
Luca Barbato
3802833bc1 dca: Respect the current limits in the downmixing capabilities
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-12 04:34:49 +02:00
Luca Barbato
f261e50845 dca: Error out on missing DSYNC
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-12 04:34:49 +02:00
Luca Barbato
c82da343e6 pcm: always use codec->id instead of codec_id
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-12 04:34:49 +02:00
Luca Barbato
c0d973c41b vdpau: use the correct namespace for the union
Vdp is used by libvdpau, use AVVDPAU as used for the rest.

Reported-by: Alexis Ballier <aballier@gentoo.org>
2013-07-12 04:34:49 +02:00
Luca Barbato
e9d394f3fa mlpdec: Do not set invalid context in read_restart_header
The faulty values rippled further down the codepath causing a
hard-to-track segfault in the assembly code.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-12 04:34:49 +02:00
Luca Barbato
2b379a9251 mlpdsp: x86: Respect cpuflags 2013-07-12 04:34:49 +02:00
Luca Barbato
3abde1a3b4 pcx: Do not overread source buffer in pcx_rle_decode
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-12 04:34:49 +02:00
Luca Barbato
170fb593c6 pcx: K&R formatting cosmetics 2013-07-12 04:34:49 +02:00
Michael Niedermayer
0ef40446a8 mjpegdec: print length too in APPx debug code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 16:28:55 +02:00
Michael Niedermayer
8024b4880c avcodec/jpeglsdec: support xfrm 1-3
Fixes 75% of Ticket893

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 16:10:18 +02:00
Michael Niedermayer
96747e6cbe mjpegdec: parse app-xfrm
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 16:08:49 +02:00
Michael Niedermayer
7afa68d37d mjpegdec: parse app-colr
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 16:08:36 +02:00
Michael Niedermayer
531f016944 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  wmavoice: conceal clearly corrupted blocks

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 11:50:18 +02:00
Michael Niedermayer
45cc62f0a0 Merge commit 'f5c48f5adaead5259660d4eaab2e695d1bac3a08'
* commit 'f5c48f5adaead5259660d4eaab2e695d1bac3a08':
  wmavoice: use init_static_data

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 11:41:34 +02:00
Michael Niedermayer
5698f6bd73 Merge commit '04e9853a210e07b1a150aa2b8e9af0aa3601ff21'
* commit '04e9853a210e07b1a150aa2b8e9af0aa3601ff21':
  wmavoice: return meaningful error codes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 11:33:19 +02:00
Michael Niedermayer
56090b5b80 Merge commit '3865ba7b21aef5d60183719e238361ec8797ab5a'
* commit '3865ba7b21aef5d60183719e238361ec8797ab5a':
  iff: K&R formatting cosmetics

Conflicts:
	libavcodec/iff.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 11:12:48 +02:00
Michael Niedermayer
15cee5e562 mjpegdec: Fix used quant index for gbr
Fixes Ticket1651

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 02:31:58 +02:00
Michael Niedermayer
94e86ae15a mjpegdec: initialize source variables before gbr remap
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-11 02:31:58 +02:00
Paul B Mahol
4511973901 wmalosslessdec: do not set avctx->coded_frame
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-10 19:11:12 +00:00
Michael Niedermayer
8f09957194 avcodec/qdm2: initialize sign_bits
Fixes non deterministic output

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 16:21:33 +02:00
Michael Niedermayer
fbe159e850 avcodec/qdm2: store bits in an integer instead of float variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 16:18:52 +02:00
Michael Niedermayer
2e6338b472 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  qdm2: Conceal broken samples

See: 5ee008e01d

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 16:00:57 +02:00
Luca Barbato
d14a26edb7 wmavoice: conceal clearly corrupted blocks
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-10 15:50:06 +02:00
Luca Barbato
f5c48f5ada wmavoice: use init_static_data 2013-07-10 15:49:58 +02:00
Luca Barbato
04e9853a21 wmavoice: return meaningful error codes 2013-07-10 15:49:51 +02:00
Luca Barbato
7d65e960c7 iff: Do not read over the source buffer
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-10 15:24:42 +02:00
Luca Barbato
3865ba7b21 iff: K&R formatting cosmetics 2013-07-10 15:23:51 +02:00
Michael Niedermayer
564909093a Merge commit 'adadc3f2443d25b375e21e801516ccfd78e0b080'
* commit 'adadc3f2443d25b375e21e801516ccfd78e0b080':
  qdm2: refactor joined stereo support

Conflicts:
	libavcodec/qdm2.c

See: 2b12d1ffd8

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 15:07:20 +02:00
Paul B Mahol
8491f40500 tak: use crc table from lavu
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-10 12:07:53 +00:00
Michael Niedermayer
a3d9a21683 Merge commit 'bbf6a4aa20bfe3d7869b2218e66063602dfb8aa7'
* commit 'bbf6a4aa20bfe3d7869b2218e66063602dfb8aa7':
  imc: Catch a division by zero
  atrac3: Error on impossible encoding/channel combinations

See: 13451f5520

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 12:28:07 +02:00
Luca Barbato
5eaed6d336 atrac3: fix error handling
decode_tonal_components returns a proper AVERROR.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 02:15:43 +02:00
Alexis Ballier
c3ca70204b codec_desc: fix typo in rv20 long_name.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-10 00:27:34 +02:00
Michael Niedermayer
233177a4ec jpegdec: clear EOBRUN on restarts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 23:49:06 +02:00
Michael Niedermayer
1c032e94d0 jpegdec: give handle_rstn() a return code that indicates if restart did happen
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 23:45:31 +02:00
Michael Niedermayer
776155ca29 mjpeg_decode_scan: reset restart state
Fixes Ticket2082
Fixes progressive/refinement + restart jpegs

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 23:43:36 +02:00
Michael Niedermayer
325411a687 snowenc: check minimum resolution
Fixes Ticket1855

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 21:10:45 +02:00
Piotr Bandurski
aa74810fc6 bitstream: fix a crash in case of oom
fixes ticket #2766

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 19:41:22 +02:00
Luca Barbato
87fb18c3e4 imc: Catch a division by zero
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Reviewed-by: Kostya Shishkov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 16:20:50 +02:00
Luca Barbato
4ecdb5ed44 qdm2: Conceal broken samples
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 15:57:46 +02:00
Luca Barbato
adadc3f244 qdm2: refactor joined stereo support
qdm2 does support only two channels. Loop over the run once.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 15:57:32 +02:00
Michael Niedermayer
7d9cb12689 avcodec/wmaprodec: Check block_align
Fixes undefined behavior
Its not known if this condition can be triggered through crafted input.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 15:32:21 +02:00
Michael Niedermayer
0dd99628ea ff_lpc_calc_coefs: assert that the type is levinson or cholesky
Otherwise the code could misbehave (and there are no other types anyway)
Fixes CID700759

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 11:57:45 +02:00
Luca Barbato
bbf6a4aa20 imc: Catch a division by zero
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
12576afe20 adpcm: Write the correct number of samples for ima-dk4
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
50cf5a7fb7 atrac3: Error on impossible encoding/channel combinations
Joint stereo encoded mono is impossible.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
22e76ec635 atrac3: set the getbits context the right buffer_end
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
874c8a17ac atrac3: fix error handling
decode_tonal_components returns a proper AVERROR.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Michael Niedermayer
00b1401df6 avcodec/h264_ps: try to support Ambarella AVC
Fixes Ticket2763

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 05:21:26 +02:00
Michael Niedermayer
a20f049c2a avcodec/libvpxenc: make class names unique
This should fix an infinite loop with -h full

Found-by: <Foofie>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 03:04:31 +02:00
Michael Niedermayer
970c8df735 mpeg12dec: avoid reinitializtation on PS changes when possible.
Fixes Ticket2574

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-08 21:55:04 +02:00
Carl Eugen Hoyos
b86651a208 Check the return value of ff_rv34_decode_init() in rv30.c and rv40.c
Avoids possible null pointer dereferences on oom.

Fixes ticket #2727.
2013-07-08 11:56:16 +02:00
Michael Niedermayer
44d0e520f8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  qdm2: check and reset dithering index per channel

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-08 05:26:17 +02:00
Michael Niedermayer
e1f98f2231 Merge commit '76efedeadb1f6bf79020c44a71dd0cee13d932ad'
* commit '76efedeadb1f6bf79020c44a71dd0cee13d932ad':
  qdm2: formatting cosmetics

Conflicts:
	libavcodec/qdm2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-08 05:10:06 +02:00
Michael Niedermayer
d28a8ad8f3 Merge commit 'f054e309c58894450a5d18cce9799ef58aab9f14'
* commit 'f054e309c58894450a5d18cce9799ef58aab9f14':
  qdm2: use init_static_data
  westwood_vqa: do not free extradata on error in read_header

Conflicts:
	libavformat/westwood_vqa.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-08 05:02:52 +02:00
Michael Niedermayer
b5a87dc193 Merge commit 'c4abc9098cacb227dba39bac6aea16b2bceba0d0'
* commit 'c4abc9098cacb227dba39bac6aea16b2bceba0d0':
  vqavideo: check the version

Conflicts:
	libavcodec/vqavideo.c

See: b226af3910

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-08 04:53:52 +02:00
Paul B Mahol
099e57bc38 zmbvenc: remove unused AVFrame from encoder private context
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-07 23:50:54 +00:00
Paul B Mahol
3bec6a44ea zmbvenc: do not set avctx->coded_frame
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-07 23:45:17 +00:00
Paul B Mahol
ec4e042f33 gif: remove unused AVFrame from encoder private context
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-07 23:06:06 +00:00
Paul B Mahol
bd03f99d05 gif: do not set avctx->coded_frame
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-07 22:57:17 +00:00
Luca Barbato
744a11c996 qdm2: check and reset dithering index per channel
Checking per subband would have the index exceed the
dithering noise table size.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 22:06:35 +02:00
Luca Barbato
76efedeadb qdm2: formatting cosmetics
Apply the usual style plus drop few unnecessary return at the end
of void functions.
2013-07-07 22:06:28 +02:00
Luca Barbato
f054e309c5 qdm2: use init_static_data 2013-07-07 22:06:20 +02:00
Luca Barbato
c4abc9098c vqavideo: check the version
Prevent out of buffer write.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 22:04:05 +02:00
Ronald S. Bultje
46d208e1e0 vp8: Wait for prev_frame to parse segment_map before reading it
This fixes occasional failures of vp8-test-vector-010 with frame-level
multithreading enabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-07 13:30:29 +03:00
Paul B Mahol
19436308b4 dxa: make code independent of sizeof(AVFrame)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-06 16:33:59 +00:00
Michael Niedermayer
2adf8a9c09 Merge commit '4e7f0b082d8c4b360312216b9241bec65ff63b35'
* commit '4e7f0b082d8c4b360312216b9241bec65ff63b35':
  kmvc: Clip pixel position to valid range

The added clip should make no difference, there are already checks for
the index.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 11:17:53 +02:00
Michael Niedermayer
1aeddc3cbf Merge commit '8f689770548c86151071ef976cf9b6998ba21c2a'
* commit '8f689770548c86151071ef976cf9b6998ba21c2a':
  kmvc: use fixed sized arrays in the context

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 10:54:39 +02:00
Michael Niedermayer
104dfaadaa dct_unquantize_h263_intra_c: fix assert condition
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Michael Niedermayer
707b2135fd libavcodec/x86/mpegvideo: Move mmx functions under HAVE_MMX_INLINE
should fix ticket2755

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Michael Niedermayer
abce6dfd9e avcodec/x86/vp3dsp_init: move mmx functions under HAVE_MMX_INLINE
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Luca Barbato
4e7f0b082d kmvc: Clip pixel position to valid range
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-06 14:12:45 +02:00
Luca Barbato
8f68977054 kmvc: use fixed sized arrays in the context
Avoid some boilerplate code to dynamically allocate and then free the
buffers.
2013-07-06 14:12:42 +02:00
Paul B Mahol
d64f3b72e0 replace some deprecated defines
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-06 05:43:24 +00:00
Michael Niedermayer
66537c7efd avcodec/x86/cabac: Disable get_cabac_bypass_x86() on broken llvm/clang
This should fix fate on these platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-06 16:24:27 +02:00
Michael Niedermayer
32de28053d avcodec/x86/cabac: factorize broken llvm/clang check out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-06 16:24:27 +02:00
Michael Niedermayer
98277fd1a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  bitstream_filter: K&R formatting cosmetics

Conflicts:
	libavcodec/bitstream_filter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-06 12:08:43 +02:00
Nigel Touati-Evans
ef8cc06d6e avformat/avidec: Fix incorrect detection of badly interleaved avi
The method guess_ni_flag needs to divide timestamps in the index
by sample_size if it is set in order to compare different streams correctly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 22:07:48 +02:00
Paul B Mahol
6516a25f04 ADPCM IMA WAV 2, 3 and 5 bits decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-05 18:10:27 +00:00
Luca Barbato
4972e5a186 bitstream_filter: K&R formatting cosmetics 2013-07-05 19:38:24 +02:00
Paul B Mahol
48f2750de8 get_bits: add get_bits_le()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-05 16:51:08 +00:00
Peter Große
c6c2231227 libavcodec: use 64bit counter in deprecated audio encoder API to prevent problems regarding negative dts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 13:40:13 +02:00
Michael Niedermayer
9f89bebb7b Merge commit '6a10142faa1cca8ba2bfe51b970754f62d60f320'
* commit '6a10142faa1cca8ba2bfe51b970754f62d60f320':
  indeo: reject negative array indexes

Conflicts:
	libavcodec/ivi_common.c

See: 93927eb334, a93c7ca6ef

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 12:26:25 +02:00
Michael Niedermayer
7d3b55c6a4 Merge commit '6dfacd7ab126aea1392949d1aa10fdc3d3eeb911'
* commit '6dfacd7ab126aea1392949d1aa10fdc3d3eeb911':
  indeo: Cosmetic formatting

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 12:08:22 +02:00
Michael Niedermayer
9b10440dcd Merge commit '62256010e9bc8879e2bf7f3b94af8ff85e239082'
* commit '62256010e9bc8879e2bf7f3b94af8ff85e239082':
  indeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks

Conflicts:
	libavcodec/ivi_common.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 12:02:53 +02:00
Michael Niedermayer
0e2056056f Merge commit 'f6f36ca8ca1b2526d3abff7d7c627322d3bce912'
* commit 'f6f36ca8ca1b2526d3abff7d7c627322d3bce912':
  indeo: Refactor ff_ivi_dec_huff_desc

Conflicts:
	libavcodec/ivi_common.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 11:50:46 +02:00
Michael Niedermayer
cced6f4d58 Merge commit 'e6d8acf6a8fba4743eb56eabe72a741d1bbee3cb'
* commit 'e6d8acf6a8fba4743eb56eabe72a741d1bbee3cb':
  indeo: use a typedef for the mc function pointer
  cabac: x86 version of get_cabac_bypass
  aic: use chroma scan tables while decoding luma component in progressive mode

Conflicts:
	libavcodec/aic.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 11:41:30 +02:00
Stefano Sabatini
0f85c96091 lavc/avcodec.h: document bitstream filter API 2013-07-05 11:03:56 +02:00
Stefano Sabatini
41fe750f4b lavc/bitstream_filter: do not crash in case the argument of av_bitstream_filter_close() is NULL 2013-07-05 00:58:03 +02:00
Michael Niedermayer
cb678cc2cf avcodec/svq1enc: fix frame rotation code
Fixes Ticket2747

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 22:22:04 +02:00
Paul B Mahol
d1c96b28d7 libstagefright: port to refcounted frames
Untested.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-04 20:17:38 +00:00
Paul B Mahol
dda8afc391 libstagefright: unbreak compilation
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-04 20:07:12 +00:00
Sean McGovern
bf18abb2eb Rename "AVClass class" as "AVClass component_class" for external codecs.
The aix header math.h defines "extern int class()" for C.
This fixes compilation on aix with external libraries enabled.

Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
2013-07-04 18:02:17 +02:00
Carl Eugen Hoyos
f32b8130f4 Fix opacity and increase colour dynamics of initial vmd palette. 2013-07-04 18:01:08 +02:00
Luca Barbato
6a10142faa indeo: reject negative array indexes
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-04 16:06:11 +02:00
Luca Barbato
6dfacd7ab1 indeo: Cosmetic formatting
Trim some overly long lines.
2013-07-04 16:06:10 +02:00
Luca Barbato
62256010e9 indeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks
Spin large and mostly self contained blocks into stand alone
functions.
2013-07-04 16:06:10 +02:00
Luca Barbato
f6f36ca8ca indeo: Refactor ff_ivi_dec_huff_desc
Spare an indentation level.
2013-07-04 16:06:10 +02:00
Luca Barbato
e6d8acf6a8 indeo: use a typedef for the mc function pointer 2013-07-04 16:06:10 +02:00
Jason Garrett-Glaser
d222f6e39e cabac: x86 version of get_cabac_bypass
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-04 16:06:10 +02:00
Michael Niedermayer
6d05039c7e avcodec/sonic: Fix usage of init_get_bits() and use init_get_bits8()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 13:40:08 +02:00
Michael Niedermayer
8c707a129a avcodec/svq1dec: use init_get_bits8()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 13:40:08 +02:00
Michael Niedermayer
df6acc81a8 avcodec/ra288: use init_get_bits8()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 13:40:08 +02:00
Kostya Shishkov
410066986f aic: use chroma scan tables while decoding luma component in progressive mode
For some unclear reason Apple decided to use the same scan tables for luma and
chroma in the progressive mode while using different ones for luma in the
interlaced mode.
2013-07-04 12:09:45 +02:00
Carl Eugen Hoyos
565140da17 avcodec/rawdec: Fix 2bpp and 4bpp rawvideo in mov
Restores carefully the old behaviour
(and does not break decoding avi samples).
Fixes Ticket2536

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 02:54:27 +02:00
Michael Niedermayer
5eb23e6b0a Merge commit '22e18ea39e371030cc78973d1b46aae45a7ea215'
* commit '22e18ea39e371030cc78973d1b46aae45a7ea215':
  jpeg2000: Optimize output sample conversion
  jpeg2000: Reset s->numX/Ytiles on tile deallocation
  jpeg2000: Optimize dequantization
  jpeg2000: Do not assume a single tile
  jpeg2000: Speed up jpeg2000_decode_tile()
  jpeg2000: Use EBCOT's CAUSAL and BYPASS mode in decode_cblk()

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 16:36:05 +02:00
Michael Niedermayer
19ff6f55e8 Merge commit 'd57c737ac30cf079a342fa649fd4888c2d059dd9'
* commit 'd57c737ac30cf079a342fa649fd4888c2d059dd9':
  jpeg2000: Simplify jpeg2000_decode_packets()
  jpeg2000: Do not crash on NULL node in tag_tree_decode
  jpeg2000: Refactor SOT marker parsing

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 16:26:01 +02:00
Michael Niedermayer
1abb875c98 Merge commit 'daeb4e3042f2ecae2d41aaa4cae0bed932539788'
* commit 'daeb4e3042f2ecae2d41aaa4cae0bed932539788':
  jpeg2000: Proper cleanup on failure in decode_frame()

Conflicts:
	libavcodec/jpeg2000.c

See: 9d56ccf5

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 16:11:01 +02:00
Michael Niedermayer
ee7da5bacc Merge commit '589e5b52f634f6b2d307a167a19eef7e7328cb08'
* commit '589e5b52f634f6b2d307a167a19eef7e7328cb08':
  jpeg2000: Use the correct sizeof in memset for T1 data
  jpeg2000: Simplify init_tile()
  jpeg2000: Update pixel format support

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 15:45:03 +02:00
Michael Niedermayer
2328e7e865 Merge commit '5bf208f659703895df7926238dcfa8a8175de36b'
* commit '5bf208f659703895df7926238dcfa8a8175de36b':
  jpeg2000: Use separate fields for int and float codepaths
  jpeg2000: Split int/float codepaths depending on the DWT

Conflicts:
	libavcodec/jpeg2000.c
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 15:30:05 +02:00
Michael Niedermayer
11cf4b7247 Merge commit 'f9581f1414ec8e3e7d0868793cda4f2e4fa113ea'
* commit 'f9581f1414ec8e3e7d0868793cda4f2e4fa113ea':
  jpeg2000: Improve reduced resolution decoding
  jpeg2000: Compute quantization for 'scalar derived' in the correct case.
  jpeg2000: Calculate code-block coord in ff_jpeg2000_init_component()

Conflicts:
	libavcodec/jpeg2000.c
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 15:20:37 +02:00
Michael Niedermayer
c7a092cb2d Merge commit '4cbd5ed11b0161a6a192174934b241e0cc0599a9'
* commit '4cbd5ed11b0161a6a192174934b241e0cc0599a9':
  jpeg2000: Fix compute precedence error in lut_gain index
  jpeg2000: Initialize code blocks structures in precincts to 0
  jpeg2000: Check that we have enough components for MCT

Conflicts:
	libavcodec/jpeg2000.c
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 15:03:08 +02:00
Michael Niedermayer
ac3ca3d311 Merge commit 'ef35d6dbc6c3b7ba6b13ac13fc8e797cc1268c8f'
* commit 'ef35d6dbc6c3b7ba6b13ac13fc8e797cc1268c8f':
  jpeg2000: Propagate error code from get_cox()
  jpeg2000: Check that nreslevels2decode has been initialized before use

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:50:51 +02:00
Michael Niedermayer
9dfa5ea5dc Merge commit '86a2602e16171ddc10c3ec655c23b16ffa595059'
* commit '86a2602e16171ddc10c3ec655c23b16ffa595059':
  jpeg2000: Drop unused and writeonly fields
  jpeg2000: Correctly calculate sgnd

Conflicts:
	libavcodec/jpeg2000.h
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:46:10 +02:00
Michael Niedermayer
a4a16821d7 Merge commit 'fd54dd028bc9f7bfb80ebf823a533dc84b73f936'
* commit 'fd54dd028bc9f7bfb80ebf823a533dc84b73f936':
  jpeg2000: check len before parsing header
  jpeg2000: Check component number in get_coc() and get_qcc()

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:38:37 +02:00
Michael Niedermayer
2cad1ea29e Merge commit '17e5d614a8647d51b9795cb8bccf97ee33ca2d58'
* commit '17e5d614a8647d51b9795cb8bccf97ee33ca2d58':
  jpeg2000: Check zero bit-plane validity

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:30:17 +02:00
Michael Niedermayer
db5c93a1a9 Merge commit '7e201d575dc4385eb67314b0419d4d77185e65f4'
* commit '7e201d575dc4385eb67314b0419d4d77185e65f4':
  jpeg2000: Validate block lengthinc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:28:51 +02:00
Michael Niedermayer
f0358dc1d3 Merge commit '278a923c51187d37445d88a6b21082036ec9568d'
* commit '278a923c51187d37445d88a6b21082036ec9568d':
  jpeg2000: Validate SIZ parsing

Conflicts:
	libavcodec/jpeg2000dec.c

This commit is not exactly merged due to bugs in it

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 14:19:35 +02:00
Michael Niedermayer
2e85737b0e Merge commit 'd3cb302b88503c3111e25add196622110c056188'
* commit 'd3cb302b88503c3111e25add196622110c056188':
  jpeg2000: Validate SOT parsing

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 13:28:35 +02:00
Stefano Sabatini
5efbeae38c configure: rename have_incompatible_fork_abi -> have_incompatible_libav_abi
"Fork" is an ambiguous term, since there may be more than one fork, also
"fork" could be confused with the corresponding function. Also it seems
important to point the name of the referenced fork in the symbol.

Note: the old --enable-incompatible-fork-abi command is retained for
compatibility, although it should be considered deprecated.
2013-07-03 13:16:33 +02:00
Michael Niedermayer
57bc64e235 Merge commit '1a3598aae768465a8efc8475b6df5a8261bc62fc'
* commit '1a3598aae768465a8efc8475b6df5a8261bc62fc':
  jpeg2000: Use bytestream2

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 12:54:01 +02:00
Michael Niedermayer
26f6acc66b Merge commit '5efadcb8cdef6fc5ca5f1f72e45ef3b23016b1c4'
* commit '5efadcb8cdef6fc5ca5f1f72e45ef3b23016b1c4':
  jpeg2000: Clean up return paths and error messages

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 12:16:24 +02:00
Michael Niedermayer
b0448e5123 Merge commit 'be3271009ef893fbed9640e8edbd771685fd957b'
* commit 'be3271009ef893fbed9640e8edbd771685fd957b':
  jpeg2000: Define the maximum decomposition levels

Conflicts:
	libavcodec/jpeg2000.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 12:02:11 +02:00
Michael Niedermayer
3f0364327c Merge commit 'fbcc03db8f3919e2ea46d6ad11a00906b1c0ef0e'
* commit 'fbcc03db8f3919e2ea46d6ad11a00906b1c0ef0e':
  jpeg2000: Check code-block size

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 11:55:45 +02:00
Michael Niedermayer
37a970bbb6 Merge commit '5650e331a733711b809bc27f968500f0f5530126'
* commit '5650e331a733711b809bc27f968500f0f5530126':
  jpeg2000: Validate resolution levels

Conflicts:
	libavcodec/jpeg2000dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-03 11:20:39 +02:00
Stefano Sabatini
b2498dcf5c lavc/avcodec.h: fix prolems -> problems typo 2013-07-03 10:15:30 +02:00
Michael Niedermayer
95a57d26d8 jpeg2000: Use the matching coding style struct for transform selection
Fixes a null pointer dereference.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:48 +02:00
Michael Niedermayer
22e18ea39e jpeg2000: Optimize output sample conversion
67935 -> 29984 kcycles

Reviewed-by: Nicolas BERTRAND <nicoinattendu@gmail.com>

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:48 +02:00
Michael Niedermayer
c4604b8792 jpeg2000: Merge rescaling with interleaving in 9/7 IDWT
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:48 +02:00
Michael Niedermayer
f0552e63a6 jpeg2000: Reset s->numX/Ytiles on tile deallocation
Keep the structure fields more consistent after cleanup.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:48 +02:00
Michael Niedermayer
d57c737ac3 jpeg2000: Simplify jpeg2000_decode_packets()
Raise PATCHWELCOME error in case of non-implemented progression order.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Luca Barbato
daeb4e3042 jpeg2000: Proper cleanup on failure in decode_frame()
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
e11099db20 jpeg2000: Optimize dequantization
Float:   4700 -> 2700 cycles
Integer: 4400 -> 2800 cycles

(sandybridge  i7)

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
09d5929f37 jpeg2000: Do not crash on NULL node in tag_tree_decode
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
c1dcbc590d jpeg2000: Do not assume a single tile
In preparation of supporting multiple tiles.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
aa16bbaf9b jpeg2000: Refactor SOT marker parsing
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
53d5d89c1b jpeg2000: Speed up jpeg2000_decode_tile()
Skip processing bands with dimension set to 0.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
64f6570c6e jpeg2000: Use EBCOT's CAUSAL and BYPASS mode in decode_cblk()
Speed it up a bit.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:47 +02:00
Michael Niedermayer
589e5b52f6 jpeg2000: Use the correct sizeof in memset for T1 data
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
5bf208f659 jpeg2000: Use separate fields for int and float codepaths
Split stepsize and data into int and float variants.
Eliminates a number of casts and simplifies spotting errors.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
f9581f1414 jpeg2000: Improve reduced resolution decoding
Correctly scale down the component coordinates and
clean up some redundant code.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
5b73916d34 jpeg2000: Simplify init_tile()
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
a458b91cf4 jpeg2000: Split int/float codepaths depending on the DWT
DWT53 is always int, DWT97 is always float.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
33e665a6ab jpeg2000: Update pixel format support
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
db13e02c6f jpeg2000: Compute corrections of sub-band coordinates
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
690c8af97b jpeg2000: Remove unneeded variable initialization
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:46 +02:00
Michael Niedermayer
4cbd5ed11b jpeg2000: Fix compute precedence error in lut_gain index
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
ef35d6dbc6 jpeg2000: Propagate error code from get_cox()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
952f7ed3c0 jpeg2000: Compute quantization for 'scalar derived' in the correct case.
Scalar derived case is represented by the JPEG2K_QSTY_SI define.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
b44925ae6b jpeg2000: Initialize code blocks structures in precincts to 0
Prevent use of uninitialized memory / valgrind failure.

Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
78962d3df4 jpeg2000: Check that nreslevels2decode has been initialized before use
Avoid buffer overread.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
4e11b15534 jpeg2000: Calculate code-block coord in ff_jpeg2000_init_component()
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
cf04af2086 jpeg2000: Check that we have enough components for MCT
Avoid overread.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
b564784a20 jpeg2000: Check that there is a SOT before SOD
Avoid overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
2c3901b2c3 jpeg2000: Remove unneeded returns
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:45 +02:00
Michael Niedermayer
86a2602e16 jpeg2000: Drop unused and writeonly fields
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
fd54dd028b jpeg2000: check len before parsing header
Avoid overread.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
17e5d614a8 jpeg2000: Check zero bit-plane validity
Prevent integer overflows.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Luca Barbato
7e201d575d jpeg2000: Validate block lengthinc
Currently we are using an array with a static data size.

Similar to a patch with the same purpose by Michael Niedermayer.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
278a923c51 jpeg2000: Validate SIZ parsing
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
d3cb302b88 jpeg2000: Validate SOT parsing
Avoid some overreads.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
ac921338a4 jpeg2000: Correctly calculate sgnd
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
eae63e3c15 jpeg2000: Check component number in get_coc() and get_qcc()
Avoid overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:44 +02:00
Michael Niedermayer
1a3598aae7 jpeg2000: Use bytestream2
Prevent a number of overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:43 +02:00
Luca Barbato
5efadcb8cd jpeg2000: Clean up return paths and error messages
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:43 +02:00
Luca Barbato
be3271009e jpeg2000: Define the maximum decomposition levels
And define the resolution levels according.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:43 +02:00
Michael Niedermayer
fbcc03db8f jpeg2000: Check code-block size
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-02 20:05:43 +02:00