summaryrefslogtreecommitdiffstats
path: root/libavcodec/jpeg2000dec.c
Commit message (Collapse)AuthorAgeFilesLines
* jpeg2000: Check block lengthLuca Barbato2013-10-091-0/+7
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* jpeg2000dec: Add more checks when parsing headersMartin Storsjö2013-09-171-0/+4
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* jpeg2000: Initialize only once mqc arraysNicolas Bertrand2013-07-131-0/+1
| | | | | | Improves decoding speed. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Use the matching coding style struct for transform selectionMichael Niedermayer2013-07-021-2/+4
| | | | | | | | 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>
* jpeg2000: Optimize output sample conversionMichael Niedermayer2013-07-021-25/+44
| | | | | | | | 67935 -> 29984 kcycles Reviewed-by: Nicolas BERTRAND <nicoinattendu@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Reset s->numX/Ytiles on tile deallocationMichael Niedermayer2013-07-021-0/+1
| | | | | | Keep the structure fields more consistent after cleanup. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Optimize dequantizationMichael Niedermayer2013-07-021-15/+16
| | | | | | | | | Float: 4700 -> 2700 cycles Integer: 4400 -> 2800 cycles (sandybridge i7) Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Do not assume a single tileMichael Niedermayer2013-07-021-5/+11
| | | | | | In preparation of supporting multiple tiles. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Speed up jpeg2000_decode_tile()Michael Niedermayer2013-07-021-0/+4
| | | | | | Skip processing bands with dimension set to 0. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Use EBCOT's CAUSAL and BYPASS mode in decode_cblk()Michael Niedermayer2013-07-021-25/+40
| | | | | | Speed it up a bit. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Simplify jpeg2000_decode_packets()Michael Niedermayer2013-07-021-6/+20
| | | | | | | | 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>
* jpeg2000: Do not crash on NULL node in tag_tree_decodeMichael Niedermayer2013-07-021-0/+3
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Refactor SOT marker parsingMichael Niedermayer2013-07-021-26/+18
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Proper cleanup on failure in decode_frame()Luca Barbato2013-07-021-6/+10
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Use the correct sizeof in memset for T1 dataMichael Niedermayer2013-07-021-2/+3
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Simplify init_tile()Michael Niedermayer2013-07-021-6/+4
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Update pixel format supportMichael Niedermayer2013-07-021-30/+20
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Use separate fields for int and float codepathsMichael Niedermayer2013-07-021-14/+15
| | | | | | | 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>
* jpeg2000: Split int/float codepaths depending on the DWTMichael Niedermayer2013-07-021-15/+20
| | | | | | DWT53 is always int, DWT97 is always float. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Improve reduced resolution decodingMichael Niedermayer2013-07-021-12/+6
| | | | | | | Correctly scale down the component coordinates and clean up some redundant code. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Calculate code-block coord in ff_jpeg2000_init_component()Michael Niedermayer2013-07-021-9/+0
| | | | | | 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>
* jpeg2000: Check that we have enough components for MCTMichael Niedermayer2013-07-021-0/+7
| | | | | | | | 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>
* jpeg2000: Check that there is a SOT before SODMichael Niedermayer2013-07-021-0/+16
| | | | | | | | 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>
* jpeg2000: Remove unneeded returnsMichael Niedermayer2013-07-021-5/+1
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Propagate error code from get_cox()Michael Niedermayer2013-07-021-4/+8
| | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Drop unused and writeonly fieldsMichael Niedermayer2013-07-021-5/+3
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Correctly calculate sgndMichael Niedermayer2013-07-021-1/+1
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: check len before parsing headerMichael Niedermayer2013-07-021-2/+3
| | | | | | | | 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>
* jpeg2000: Check component number in get_coc() and get_qcc()Michael Niedermayer2013-07-021-1/+16
| | | | | | | | | 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>
* jpeg2000: Check zero bit-plane validityMichael Niedermayer2013-07-021-4/+10
| | | | | | Prevent integer overflows. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Validate block lengthincLuca Barbato2013-07-021-0/+6
| | | | | | | | | | 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>
* jpeg2000: Validate SIZ parsingMichael Niedermayer2013-07-021-4/+38
| | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Validate SOT parsingMichael Niedermayer2013-07-021-0/+13
| | | | | | Avoid some overreads. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Use bytestream2Michael Niedermayer2013-07-021-108/+108
| | | | | | | Prevent a number of overreads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Clean up return paths and error messagesLuca Barbato2013-07-021-39/+38
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Define the maximum decomposition levelsLuca Barbato2013-07-021-1/+1
| | | | | | And define the resolution levels according. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000: Check code-block sizeMichael Niedermayer2013-07-021-0/+6
| | | | | | 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>
* jpeg2000: Validate resolution levelsLuca Barbato2013-07-021-1/+6
| | | | | | There are 32 maximum decomposition levels, thus 33 resolution levels. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* jpeg2000dec: don't use deprecated PIX_FMT valuesAnton Khirnov2013-05-151-4/+4
|
* jpeg2000dec: Use correct printf length modifier for pointer differencesDiego Biurrun2013-05-141-2/+2
| | | | | Also eliminate an unnecessary cast. Fixes the following warning: jpeg2000dec.c:1200:20: warning: format ‘%lX’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘long long unsigned int’
* jpeg2000dec: initialize static data just onceJanne Grunau2013-05-061-14/+18
|
* jpeg2000dec: cleanup properly after decoding errorsJanne Grunau2013-05-061-6/+7
| | | | Fixes memory leak in fate-redcode-demux.
* jpeg2000: Fix uninitialized data errors pointed out by valgrind/memcheckNicolas Bertrand2013-05-061-4/+13
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* jpeg2000: Add mutlti-threading support to decoderNicolas Bertrand2013-04-231-2/+5
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* jpeg2kdec: output is native endian AV_PIX_FMT_XYZ12Janne Grunau2013-04-221-1/+1
|
* JPEG 2000 decoder for DCinemaNicolas Bertrand2013-04-221-0/+1336
Based on the 2007 GSoC project from Kamil Nowosad <k.nowosad@students.mimuw.edu.pl> Updated to current programming standards, style and many more small fixes by Diego Biurrun <diego@biurrun.de>. Signed-off-by: Diego Biurrun <diego@biurrun.de>
OpenPOWER on IntegriCloud