summaryrefslogtreecommitdiff
path: root/libavcodec/jpeg2000dec.c
Commit message (Collapse)AuthorAge
* avcodec/jpeg2000dec: make SOC finding code more robustMichael Niedermayer2013-09-05
| | | | | | Fixes file from Ticket860 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000: check log2_cblk dimensionsMichael Niedermayer2013-08-24
| | | | | | | | Fixes out of array access Fixes Ticket2895 Found-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/jpeg2000dec: Check cdx/y values more carefullyMichael Niedermayer2013-08-23
| | | | | | | | | | Some invalid values where not handled correctly in the later pixel format matching code. Fixes out of array accesses Fixes Ticket2848 Found-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/jpeg2000dec: fix near null pointer dereferenceMichael Niedermayer2013-08-18
| | | | | | Fixes Ticket2840 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/jpeg2000dec: check sample sepration for validityMichael Niedermayer2013-08-07
| | | | | | | Fixes division by 0 Fixes Ticket2841 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000dec: simplify jpeg2000_read_bitstream_packets()Michael Niedermayer2013-08-02
| | | | | | | 23 lines less less error prone as theres no more need to update *_size on every read Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000dec: Support non subsampled 9-16bit planar pixel formatsMichael Niedermayer2013-07-21
| | | | | | | This applies changes similar to fc6de70c44be05eb0368ab519bfb790431d8dee5 to the >8bit codepath Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000dec: silence unused variable warningMichael Niedermayer2013-07-19
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000dec: Support non subsampled 8bit planar pixel formatsMichael Niedermayer2013-07-18
| | | | | | Fixes file2.jp2 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* jpeg2000dec: parse CDEFMichael Niedermayer2013-07-18
| | | | | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Conflicts: libavcodec/jpeg2000dec.c Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Fix pix_fmt detection in the native jpeg2000 decoder.Carl Eugen Hoyos2013-07-18
| | | | | | | Based on b7a928b by Michael Bradshaw. Fixes ticket #2683. Reviewed-by: Nicolas Bertrand
* jpeg2000: fix overflow in dequantizationMichael Niedermayer2013-07-13
| | | | | | | | 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>
* jpeg2000: Initialize only once mqc arraysNicolas Bertrand2013-07-12
| | | | | | Increases encoding and decoding speed Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '22e18ea39e371030cc78973d1b46aae45a7ea215'Michael Niedermayer2013-07-03
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Optimize output sample conversionMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | Keep the structure fields more consistent after cleanup. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Optimize dequantizationMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | In preparation of supporting multiple tiles. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Speed up jpeg2000_decode_tile()Michael Niedermayer2013-07-02
| | | | | | | | | | | | 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-02
| | | | | | | | | | | | Speed it up a bit. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'd57c737ac30cf079a342fa649fd4888c2d059dd9'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Simplify jpeg2000_decode_packets()Michael Niedermayer2013-07-02
| | | | | | | | | | | | | | | | 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-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Refactor SOT marker parsingMichael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'daeb4e3042f2ecae2d41aaa4cae0bed932539788'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | * commit 'daeb4e3042f2ecae2d41aaa4cae0bed932539788': jpeg2000: Proper cleanup on failure in decode_frame() Conflicts: libavcodec/jpeg2000.c See: 9d56ccf5 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * jpeg2000: Proper cleanup on failure in decode_frame()Luca Barbato2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '589e5b52f634f6b2d307a167a19eef7e7328cb08'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Use the correct sizeof in memset for T1 dataMichael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Simplify init_tile()Michael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Update pixel format supportMichael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Use separate fields for int and float codepathsMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | DWT53 is always int, DWT97 is always float. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'f9581f1414ec8e3e7d0868793cda4f2e4fa113ea'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Improve reduced resolution decodingMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | 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>
* | Merge commit '4cbd5ed11b0161a6a192174934b241e0cc0599a9'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Check that we have enough components for MCTMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | | | | | 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-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Propagate error code from get_cox()Michael Niedermayer2013-07-02
| | | | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '86a2602e16171ddc10c3ec655c23b16ffa595059'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: Drop unused and writeonly fieldsMichael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * jpeg2000: Correctly calculate sgndMichael Niedermayer2013-07-02
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'fd54dd028bc9f7bfb80ebf823a533dc84b73f936'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | | | * 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>
| * jpeg2000: check len before parsing headerMichael Niedermayer2013-07-02
| | | | | | | | | | | | | | | | 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-02
| | | | | | | | | | | | | | | | | | 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>
* | Merge commit '17e5d614a8647d51b9795cb8bccf97ee33ca2d58'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | | | | | | | * commit '17e5d614a8647d51b9795cb8bccf97ee33ca2d58': jpeg2000: Check zero bit-plane validity Conflicts: libavcodec/jpeg2000dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * jpeg2000: Check zero bit-plane validityMichael Niedermayer2013-07-02
| | | | | | | | | | | | Prevent integer overflows. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '7e201d575dc4385eb67314b0419d4d77185e65f4'Michael Niedermayer2013-07-03
|\| | | | | | | | | | | | | * commit '7e201d575dc4385eb67314b0419d4d77185e65f4': jpeg2000: Validate block lengthinc Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * jpeg2000: Validate block lengthincLuca Barbato2013-07-02
| | | | | | | | | | | | | | | | | | | | 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>