Carl Eugen Hoyos
7b51b8020c
lavc/j2kenc: Support AV_PIX_FMT_PAL8.
2018-05-25 20:09:22 +02:00
Michael Niedermayer
b5587fd2c6
avcodec/jpeg2000: Only allocate Jpeg2000Pass for the encoder
...
Reduces memory needed.
Fixes: OOM
Fixes: 4427/clusterfuzz-testcase-minimized-5106919271301120
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-01 23:12:07 +01:00
Michael Niedermayer
0674087004
avcodec/j2kenc: Fix out of array access in encode_cblk()
...
Fixes: 4427/clusterfuzz-testcase-minimized-5106919271301120
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-01 23:12:07 +01:00
Michael Niedermayer
7c191dfba7
avcodec/j2kenc: Only allocate cblk.data once
...
Fixes: memleak
Found-by: <jamrial>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-24 04:04:39 +01:00
Michael Niedermayer
3d5822d9cf
avcodec/jpeg2000: Dynamically allocate codeblock data
...
Fixes: OOM
Fixes: 3541/clusterfuzz-testcase-minimized-6469958596820992
Adds support for decoding codeblock data larger than 8kb
Reduces decoder memory consumption
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-22 13:06:50 +01:00
Martin Vignali
4ada428aae
avcodec: remove remaining uses of avcodec_get_chroma_sub_sample
...
Replace them with av_pix_fmt_get_chroma_sub_sample.
Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-06 19:13:03 -03:00
Aaron Boxer
b6b4b0a65e
avcodec/j2kenc: Add attribution to OpenJPEG project:
...
http://ghostscript.com/~tor/gs-browse/gs/openjpeg/libopenjpeg/t1.c
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-04-01 17:35:15 +02:00
Derek Buitenhuis
f3af379b5c
Merge commit '2862b63783b5556f7f3fb2d097629bc6879f833a'
...
* commit '2862b63783b5556f7f3fb2d097629bc6879f833a':
lavc: Move prediction_method to codec private options
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-03 16:49:19 +00:00
Carl Eugen Hoyos
f253c34175
lavc/j2kenc: Remove experimental flag.
...
The encoder produces valid and - if requested - lossless files.
2015-09-04 23:48:32 +02:00
Michael Niedermayer
29d147c94d
Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'
...
* commit '059a934806d61f7af9ab3fd9f74994b838ea5eba':
lavc: Consistently prefix input buffer defines
Conflicts:
doc/examples/decoding_encoding.c
libavcodec/4xm.c
libavcodec/aac_adtstoasc_bsf.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.h
libavcodec/asvenc.c
libavcodec/avcodec.h
libavcodec/avpacket.c
libavcodec/dvdec.c
libavcodec/ffv1enc.c
libavcodec/g2meet.c
libavcodec/gif.c
libavcodec/h264.c
libavcodec/h264_mp4toannexb_bsf.c
libavcodec/huffyuvdec.c
libavcodec/huffyuvenc.c
libavcodec/jpeglsenc.c
libavcodec/libxvid.c
libavcodec/mdec.c
libavcodec/motionpixels.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/noise_bsf.c
libavcodec/nuv.c
libavcodec/nvenc.c
libavcodec/options.c
libavcodec/parser.c
libavcodec/pngenc.c
libavcodec/proresenc_kostya.c
libavcodec/qsvdec.c
libavcodec/svq1enc.c
libavcodec/tiffenc.c
libavcodec/truemotion2.c
libavcodec/utils.c
libavcodec/utvideoenc.c
libavcodec/vc1dec.c
libavcodec/wmalosslessdec.c
libavformat/adxdec.c
libavformat/aiffdec.c
libavformat/apc.c
libavformat/apetag.c
libavformat/avidec.c
libavformat/bink.c
libavformat/cafdec.c
libavformat/flvdec.c
libavformat/id3v2.c
libavformat/isom.c
libavformat/matroskadec.c
libavformat/mov.c
libavformat/mpc.c
libavformat/mpc8.c
libavformat/mpegts.c
libavformat/mvi.c
libavformat/mxfdec.c
libavformat/mxg.c
libavformat/nutdec.c
libavformat/oggdec.c
libavformat/oggparsecelt.c
libavformat/oggparseflac.c
libavformat/oggparseopus.c
libavformat/oggparsespeex.c
libavformat/omadec.c
libavformat/rawdec.c
libavformat/riffdec.c
libavformat/rl2.c
libavformat/rmdec.c
libavformat/rtpdec_latm.c
libavformat/rtpdec_mpeg4.c
libavformat/rtpdec_qdm2.c
libavformat/rtpdec_svq3.c
libavformat/sierravmd.c
libavformat/smacker.c
libavformat/smush.c
libavformat/spdifenc.c
libavformat/takdec.c
libavformat/tta.c
libavformat/utils.c
libavformat/vqf.c
libavformat/westwood_vqa.c
libavformat/xmv.c
libavformat/xwma.c
libavformat/yop.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 23:15:19 +02:00
Michael Niedermayer
444e9874a7
Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'
...
* commit 'def97856de6021965db86c25a732d78689bd6bb0':
lavc: AV-prefix all codec capabilities
Conflicts:
cmdutils.c
ffmpeg.c
ffplay.c
libavcodec/8svx.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/adpcm.c
libavcodec/alac.c
libavcodec/atrac3plusdec.c
libavcodec/bink.c
libavcodec/dnxhddec.c
libavcodec/dvdec.c
libavcodec/dvenc.c
libavcodec/ffv1dec.c
libavcodec/ffv1enc.c
libavcodec/fic.c
libavcodec/flacdec.c
libavcodec/flacenc.c
libavcodec/flvdec.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/gifdec.c
libavcodec/h261dec.c
libavcodec/hevc.c
libavcodec/iff.c
libavcodec/imc.c
libavcodec/libopenjpegdec.c
libavcodec/libvo-aacenc.c
libavcodec/libvorbisenc.c
libavcodec/libvpxdec.c
libavcodec/libvpxenc.c
libavcodec/libx264.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mpegaudiodec_float.c
libavcodec/msmpeg4dec.c
libavcodec/mxpegdec.c
libavcodec/nvenc_h264.c
libavcodec/nvenc_hevc.c
libavcodec/pngdec.c
libavcodec/qpeg.c
libavcodec/ra288.c
libavcodec/rv10.c
libavcodec/s302m.c
libavcodec/sp5xdec.c
libavcodec/takdec.c
libavcodec/tiff.c
libavcodec/tta.c
libavcodec/utils.c
libavcodec/v210dec.c
libavcodec/vp6.c
libavcodec/vp9.c
libavcodec/wavpack.c
libavcodec/yop.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:50:18 +02:00
Michael Niedermayer
94d68a41fa
Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'
...
* commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615':
lavc: AV-prefix all codec flags
Conflicts:
doc/examples/muxing.c
ffmpeg.c
ffmpeg_opt.c
ffplay.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/ac3enc_float.c
libavcodec/atrac1.c
libavcodec/atrac3.c
libavcodec/atrac3plusdec.c
libavcodec/dcadec.c
libavcodec/ffv1enc.c
libavcodec/h264.c
libavcodec/h264_loopfilter.c
libavcodec/h264_mb.c
libavcodec/imc.c
libavcodec/libmp3lame.c
libavcodec/libtheoraenc.c
libavcodec/libtwolame.c
libavcodec/libvpxenc.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpegaudiodec_template.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/nellymoserdec.c
libavcodec/nellymoserenc.c
libavcodec/nvenc.c
libavcodec/on2avc.c
libavcodec/options_table.h
libavcodec/opus_celt.c
libavcodec/pngenc.c
libavcodec/ra288.c
libavcodec/ratecontrol.c
libavcodec/twinvq.c
libavcodec/vc1_block.c
libavcodec/vc1_loopfilter.c
libavcodec/vc1_mc.c
libavcodec/vc1dec.c
libavcodec/vorbisdec.c
libavcodec/vp3.c
libavcodec/wma.c
libavcodec/wmaprodec.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:10:35 +02:00
Michael Niedermayer
e36db49b7b
avcodec: Add a min size parameter to ff_alloc_packet2()
...
This parameter can be used to inform the allocation code about how much
downsizing might occur, and can be used to optimize how to allocate the
packet
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 19:57:52 +02:00
Michael Niedermayer
d759f7f1d0
avcodec/j2kenc: remove unused variable
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-10 23:24:20 +02:00
Carl Eugen Hoyos
97fa0f37fe
lavc/j2kenc: Enable yuv42x and yuv41x encoding.
...
Fixes ticket #535 .
Fixes ticket #4524 .
2015-07-06 00:06:54 +02:00
Michael Niedermayer
9f653e6d36
avcodec/j2kenc: Support user specified tile dimensions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-03 18:23:08 +02:00
Carl Eugen Hoyos
0f5b996531
lavc/j2kenc: Make jp2 output compatible with Kakadu.
...
Fixes ticket #4689 .
2015-06-30 15:00:38 +02:00
Michael Niedermayer
5c047f3ad4
avcodec/j2kenc: store libavcodec ident in a comment unless bitexact mode is used
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-30 13:45:03 +02: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
Michael Niedermayer
7e2bdea764
avcodec/j2kenc: Use JP2 format by default
...
Without the JP2 fields its not possible to identify the colorspace
Fixes Ticket538
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 21:56:57 +02:00
Michael Niedermayer
9a2fc170b1
avcodec/j2kenc: Support writing JP2 encapsulation
...
The added option matches openjpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 21:51:25 +02:00
Michael Niedermayer
bb3703a4c3
avcodec/j2kenc: YUV should not use the ICT
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-19 05:12:06 +02:00
Michael Niedermayer
4624656797
avcodec/j2kenc: Properly flush the end of the truncated AC stream
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 20:39:03 +02:00
Michael Niedermayer
2580bae54a
avcodec/j2kenc: Use ret < 0 instead of ret != 0 for error checks
...
This is how most code in FFmpeg checks for failures
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-16 18:47:14 +02:00
Himangi Saraogi
b020a25df2
avcodec/j2kenc: Initialize variable to silence compiler warnings
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-25 15:06:36 +01:00
Michael Niedermayer
2daf580284
avcodec/j2kenc: use av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-08 23:12:26 +02:00
Michael Niedermayer
8443b27072
avcodec/j2kenc: drop dependancy on sizeof(AVFrame)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-17 16:57:58 +01:00
Clément Bœsch
b46f19100b
cosmetics: group remaining .name and .long_name.
...
See b2bed9325
.
2013-10-04 13:33:20 +00: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
9d56ccf5af
j2k/jpeg2000dec: merge
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-31 03:10:08 +02:00
Michael Niedermayer
62d00aa22f
jpeg2000/j2k: merge j2k/jpeg2000.c/h
...
Now only j2kdec / jpeg2000dec.c remain
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 14:57:58 +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
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
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
9c66da517f
j2kenc: Zero DWT struct on allocation
...
Should fix fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 02:47:25 +02:00
Michael Niedermayer
8cf57efdd7
j2k/jpeg2000: merge lowres code
...
This also fixes lowres use with ffplay
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 00:30:06 +02:00
Michael Niedermayer
d4a4661342
j2k/jpeg2000: merge j2k & jpeg2000 dwts, drop j2k dwt
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 21:54:07 +02:00
Michael Niedermayer
ee189701a6
j2kenc: Allow encoding with the 9/7 wavelet
...
Also add a fate test that tests 9/7
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 18:50:18 +02:00
Michael Niedermayer
243cc38d94
j2k: change fixed point of stepsize to 16.16
...
This seems more natural and matches jpeg2000
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 17:58:06 +02:00
Michael Niedermayer
1b5cb6c00a
j2k/jpeg2000: Partially merge quantization code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 17:50:54 +02:00
Michael Niedermayer
c2e942099a
j2k: drop cblknx/y from Jpeg2000Band
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 15:55:29 +02:00
Michael Niedermayer
8c2e201c4f
j2k/jpeg2000: drop xi/yi0/1 from Jpeg2000Prec
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 15:53:42 +02:00
Michael Niedermayer
cbaa0871c2
j2kenc: switch to cblk in prec
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-27 15:13:18 +02:00
Michael Niedermayer
bd89b2b22a
j2k/jpeg2000: log2_prec size cleanup
...
This also changes the cblk size storage method to what jpeg2000 uses
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 22:29:11 +02:00
Michael Niedermayer
b4013899e2
j2k: s/ff_j2k_getsigctxno/ff_jpeg2000_getsigctxno/g
...
Also add a related comment
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 18:22:16 +02:00
Michael Niedermayer
e66faf71eb
j2k: merge ff_j2k_init_tier1_luts()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 18:07:48 +02:00
Michael Niedermayer
69b9773980
j2k: s/getnbctxno/getsigctxno/g
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 18:07:48 +02:00
Michael Niedermayer
5157ec89ef
j2k: redesign vert_causal_ctx_csty implementation
...
The old implementation was incomplete and could not have worked
This also fixes some warnings
New code is untested as i dont seem to have a sample file that uses this.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 18:07:48 +02:00
Michael Niedermayer
d42106c3ac
j2k: rename a few inline functions and data tables to match jpeg2000
...
also inlcudes some other cosmetics
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-26 14:02:44 +02:00