Paul B Mahol
a03b69478b
avcodec/exr: fix crash caused by merge
...
Various header informations need to be reset when decoding next frame.
Regression since: 95582b5c
Fixes ticket #4597 .
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-06-06 16:02:19 +00:00
Michael Niedermayer
5dd5b7d531
Revert "avcodec/exr: fix memset first arg in reverse_lut()"
...
This reverts commit 586ba24ff2
.
Fixes Ticket 4386
Found-by: Martin Vignali <martin.vignali@gmail.com>
2015-04-01 19:53:23 +02:00
Paul B Mahol
586ba24ff2
avcodec/exr: fix memset first arg in reverse_lut()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-02-22 17:30:50 +00:00
Michael Niedermayer
81f116d31c
Merge commit 'e0bb74a1403ed77ef369b9d62866f8a4afaf3f1d'
...
* commit 'e0bb74a1403ed77ef369b9d62866f8a4afaf3f1d':
exr: Add a gamma flag to exr loader to avoid banding
Conflicts:
libavcodec/exr.c
See: cd3daad77e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-05 21:58:33 +01:00
Gonzalo Garramuno
e0bb74a140
exr: Add a gamma flag to exr loader to avoid banding
...
This is needed to avoid banding artifacts when gammaing the picture.
Currently, if done with a video filter, the process is done on uints
instead of full float.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-03 02:55:40 +00:00
Michael Niedermayer
a5adeff457
Merge commit '3a6ddfb8745e4b306a5637927fb057f630345e2f'
...
* commit '3a6ddfb8745e4b306a5637927fb057f630345e2f':
exr: check return value
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-15 01:55:21 +01:00
Vittorio Giovara
3a6ddfb874
exr: check return value
...
CC: libav-stable@libav.org
Bug-Id: CID 1198259
2014-11-14 20:25:21 +01:00
Michael Niedermayer
0dceefc5fa
Merge commit '9e500efdbe0deeff1602500ebc229a0a6b6bb1a2'
...
* commit '9e500efdbe0deeff1602500ebc229a0a6b6bb1a2':
Add av_image_check_sar() and use it to validate SAR
Conflicts:
libavcodec/dpx.c
libavcodec/dvdec.c
libavcodec/ffv1dec.c
libavcodec/utils.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-20 22:20:28 +02:00
Justin Ruggles
9e500efdbe
Add av_image_check_sar() and use it to validate SAR
2014-06-20 10:39:33 -04:00
Michael Niedermayer
126927c58e
avcodec/exr: mark gama option as experimental / unsupported
...
Suggested-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-08 21:10:53 +02:00
Gonzalo Garramuno
cd3daad77e
avcodec/exr: Add a gamma flag to exr loader to avoid banding
...
This is needed to avoid banding artifacts when gammaing the picture.
Currently, if done with a video filter, the process is done on uints
instead of full float.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-08 21:00:56 +02:00
Michael Niedermayer
879072018f
avcodec/exr: use av_freep() for saftey
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-01 05:18:26 +02:00
Michael Niedermayer
95582b5ccc
Merge commit '38389058c3308758c6365abd0f6b45c5e62bb90b'
...
* commit '38389058c3308758c6365abd0f6b45c5e62bb90b':
OpenEXR decoder
Conflicts:
Changelog
configure
libavcodec/Makefile
libavcodec/avcodec.h
libavcodec/exr.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-01 03:16:56 +02:00
Jimmy Christensen
38389058c3
OpenEXR decoder
...
Additional fixes and enhancements by Vittorio Giovara, Gonzalo Garramuno,
Nicolas George, Paul B Mahol and Michael Niedermayer.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-01 01:13:09 +02:00
Gonzalo Garramuno
3d20260157
avcodec/exr: read layers
...
EXR files have, like tiffs, multiple channels and layers. I have a
patch for exr.c that allows you to select the layer you want to process
thru a -layer flag. It is not bulletproof but works for all layers that
have 3 channels in them (normals, motion vectors, etc).
The calling convention for ffmpeg is:
ffmpeg -layer Diffuse -i myexr.%d.exr test.mov
Here's an exr image with multiple layers:
http://www.datafilehost.com/d/e45d9a1c
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-18 18:11:23 +01:00
Paul B Mahol
256b986c04
avcodec/exr: stop using deprecated avcodec_set_dimensions()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-11-01 19:05:35 +00:00
Michael Niedermayer
80b1e1c03d
avcodec/exr: fix null pointer dereference
...
Fixes CID1108582
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-19 23:28:08 +02:00
Michael Niedermayer
d0812f91c8
avcodec/exr: favor av_freep() over av_free() for saftey
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-19 23:27:36 +02:00
Paul B Mahol
4413dcc035
avcodec/exr: piz decompression
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-16 14:54:59 +00:00
Paul B Mahol
996c73490c
avcodec/exr: remove pointless initialization
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-10 18:24:49 +00:00
Paul B Mahol
8c7bc7d3e5
avcodec/exr: use avpriv_report_missing_feature()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-09 13:46:44 +00:00
Clément Bœsch
b46f19100b
cosmetics: group remaining .name and .long_name.
...
See b2bed9325
.
2013-10-04 13:33:20 +00:00
Paul B Mahol
88b071a473
exr: set pict_type
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-07-27 12:02:19 +00:00
Paul B Mahol
a9b424879f
lavc & lavf: replace deprecated av_log* functions
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-15 18:10:28 +00:00
Clément Bœsch
1ec94b0f06
lavc: factorize ff_{thread_,re,}get_buffer error messages.
...
Coccinelle profile used:
@@
expression r, ctx, f, loglevel, str, flags;
@@
-if ((r = ff_get_buffer(ctx, f, flags)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_get_buffer(ctx, f, flags)) < 0)
+ return r;
@@
expression r, ctx, f, loglevel, str;
@@
-if ((r = ff_reget_buffer(ctx, f)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_reget_buffer(ctx, f)) < 0)
+ return r;
@@
expression r, ctx, f, loglevel, str, flags;
@@
-if ((r = ff_thread_get_buffer(ctx, f, flags)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_thread_get_buffer(ctx, f, flags)) < 0)
+ return r;
...along with some manual patches for the remaining ones.
2013-03-13 19:00:10 +01:00
Michael Niedermayer
7ff3bfd584
exr: silence warning "libavcodec/exr.c:351:9: warning: variable ret set but not used"
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 15:05:40 +01:00
Michael Niedermayer
80e9e63c94
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
...
* commit '759001c534287a96dc96d1e274665feb7059145d':
lavc decoders: work with refcounted frames.
Anton Khirnov (1):
lavc decoders: work with refcounted frames.
Clément Bœsch (47):
lavc/ansi: reset file
lavc/ansi: re-do refcounted frame changes from Anton
fraps: reset file
lavc/fraps: switch to refcounted frames
gifdec: reset file
lavc/gifdec: switch to refcounted frames
dsicinav: resolve conflicts
smc: resolve conflicts
zmbv: resolve conflicts
rpza: resolve conflicts
vble: resolve conflicts
xxan: resolve conflicts
targa: resolve conflicts
vmnc: resolve conflicts
utvideodec: resolve conflicts
tscc: resolve conflicts
ulti: resolve conflicts
ffv1dec: resolve conflicts
dnxhddec: resolve conflicts
v210dec: resolve conflicts
vp3: resolve conflicts
vcr1: resolve conflicts
v210x: resolve conflicts
wavpack: resolve conflicts
pngdec: fix compilation
roqvideodec: resolve conflicts
pictordec: resolve conflicts
mdec: resolve conflicts
tiertexseqv: resolve conflicts
smacker: resolve conflicts
vb: resolve conflicts
vqavideo: resolve conflicts
xl: resolve conflicts
tmv: resolve conflicts
vmdav: resolve conflicts
truemotion1: resolve conflicts
truemotion2: resolve conflicts
lcldec: fix compilation
libcelt_dec: fix compilation
qdrw: fix compilation
r210dec: fix compilation
rl2: fix compilation
wnv1: fix compilation
yop: fix compilation
tiff: resolve conflicts
interplayvideo: fix compilation
qpeg: resolve conflicts (FIXME/TESTME).
Hendrik Leppkes (33):
012v: convert to refcounted frames
8bps: fix compilation
8svx: resolve conflicts
4xm: resolve conflicts
aasc: resolve conflicts
bfi: fix compilation
aura: fix compilation
alsdec: resolve conflicts
avrndec: convert to refcounted frames
avuidec: convert to refcounted frames
bintext: convert to refcounted frames
cavsdec: resolve conflicts
brender_pix: convert to refcounted frames
cinepak: resolve conflicts
cinepak: avoid using AVFrame struct directly in private context
cljr: fix compilation
cpia: convert to refcounted frames
cscd: resolve conflicts
iff: resolve conflicts and do proper conversion to refcounted frames
4xm: fix reference frame handling
cyuv: fix compilation
dxa: fix compilation
eacmv: fix compilation
eamad: fix compilation
eatgv: fix compilation
escape124: remove unused variable.
escape130: convert to refcounted frames
evrcdec: convert to refcounted frames
exr: convert to refcounted frames
mvcdec: convert to refcounted frames
paf: properly free the frame data on decode close
sgirle: convert to refcounted frames
lavfi/moviesrc: use refcounted frames
Michael Niedermayer (56):
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
resolve conflicts in headers
motion_est: resolve conflict
mpeg4videodec: fix conflicts
dpcm conflict fix
dpx: fix conflicts
indeo3: resolve confilcts
kmvc: resolve conflicts
kmvc: resolve conflicts
h264: resolve conflicts
utils: resolve conflicts
rawdec: resolve conflcits
mpegvideo: resolve conflicts
svq1enc: resolve conflicts
mpegvideo: dont clear data, fix assertion failure on fate vsynth1 with threads
pthreads: resolve conflicts
frame_thread_encoder: simple compilefix not yet tested
snow: update to buffer refs
crytsalhd: fix compile
dirac: switch to new API
sonic: update to new API
svq1: resolve conflict, update to new API
ffwavesynth: update to new buffer API
g729: update to new API
indeo5: fix compile
j2kdec: update to new buffer API
linopencore-amr: fix compile
libvorbisdec: update to new API
loco: fix compile
paf: update to new API
proresdec: update to new API
vp56: update to new api / resolve conflicts
xface: convert to refcounted frames
xan: fix compile&fate
v408: update to ref counted buffers
v308: update to ref counted buffers
yuv4dec: update to ref counted buffers
y41p: update to ref counted frames
xbm: update to refcounted frames
targa_y216: update to refcounted buffers
qpeg: fix fate/crash
cdxl: fix fate
tscc: fix reget buffer useage
targa_y216dec: fix style
msmpeg4: fix fate
h264: ref_picture() copy fields that have been lost too
update_frame_pool: use channel field
h264: Put code that prevents deadlocks back
mpegvideo: dont allow last == current
wmalossless: fix buffer ref messup
ff_alloc_picture: free tables in case of dimension mismatches
h264: fix null pointer dereference and assertion failure
frame_thread_encoder: update to bufrefs
ec: fix used arrays
snowdec: fix off by 1 error in dimensions check
h264: disallow single unpaired fields as references of frames
Paul B Mahol (2):
lavc/vima: convert to refcounted frames
sanm: convert to refcounted frames
Conflicts:
libavcodec/4xm.c
libavcodec/8bps.c
libavcodec/8svx.c
libavcodec/aasc.c
libavcodec/alsdec.c
libavcodec/anm.c
libavcodec/ansi.c
libavcodec/avs.c
libavcodec/bethsoftvideo.c
libavcodec/bfi.c
libavcodec/c93.c
libavcodec/cavsdec.c
libavcodec/cdgraphics.c
libavcodec/cinepak.c
libavcodec/cljr.c
libavcodec/cscd.c
libavcodec/dnxhddec.c
libavcodec/dpcm.c
libavcodec/dpx.c
libavcodec/dsicinav.c
libavcodec/dvdec.c
libavcodec/dxa.c
libavcodec/eacmv.c
libavcodec/eamad.c
libavcodec/eatgq.c
libavcodec/eatgv.c
libavcodec/eatqi.c
libavcodec/error_resilience.c
libavcodec/escape124.c
libavcodec/ffv1.h
libavcodec/ffv1dec.c
libavcodec/flicvideo.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/g723_1.c
libavcodec/gifdec.c
libavcodec/h264.c
libavcodec/h264.h
libavcodec/h264_direct.c
libavcodec/h264_loopfilter.c
libavcodec/h264_refs.c
libavcodec/huffyuvdec.c
libavcodec/idcinvideo.c
libavcodec/iff.c
libavcodec/indeo2.c
libavcodec/indeo3.c
libavcodec/internal.h
libavcodec/interplayvideo.c
libavcodec/ivi_common.c
libavcodec/jvdec.c
libavcodec/kgv1dec.c
libavcodec/kmvc.c
libavcodec/lagarith.c
libavcodec/libopenjpegdec.c
libavcodec/mdec.c
libavcodec/mimic.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mmvideo.c
libavcodec/motion_est.c
libavcodec/motionpixels.c
libavcodec/mpc7.c
libavcodec/mpeg12.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/msrle.c
libavcodec/msvideo1.c
libavcodec/nuv.c
libavcodec/options_table.h
libavcodec/pcx.c
libavcodec/pictordec.c
libavcodec/pngdec.c
libavcodec/pnmdec.c
libavcodec/pthread.c
libavcodec/qpeg.c
libavcodec/qtrle.c
libavcodec/r210dec.c
libavcodec/rawdec.c
libavcodec/roqvideodec.c
libavcodec/rpza.c
libavcodec/smacker.c
libavcodec/smc.c
libavcodec/svq1dec.c
libavcodec/svq1enc.c
libavcodec/targa.c
libavcodec/tiertexseqv.c
libavcodec/tiff.c
libavcodec/tmv.c
libavcodec/truemotion1.c
libavcodec/truemotion2.c
libavcodec/tscc.c
libavcodec/ulti.c
libavcodec/utils.c
libavcodec/utvideodec.c
libavcodec/v210dec.c
libavcodec/v210x.c
libavcodec/vb.c
libavcodec/vble.c
libavcodec/vcr1.c
libavcodec/vmdav.c
libavcodec/vmnc.c
libavcodec/vp3.c
libavcodec/vp56.c
libavcodec/vp56.h
libavcodec/vp6.c
libavcodec/vqavideo.c
libavcodec/wavpack.c
libavcodec/xl.c
libavcodec/xxan.c
libavcodec/zmbv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 03:23:28 +01:00
Paul B Mahol
5a232e5078
exr: use bytestream functions in pxr24_uncompress()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-01 13:16:29 +00:00
Paul B Mahol
33240dfa9a
exr: pxr24 decompression
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
9f3c90a366
exr: fix error message when pixel type is not set
...
This only happens with missing chlist attribute from header.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
4751c6c270
exr: s/bits_per_color_id/pixel_type
...
Previous naming was misleading.
Also fix wrong message about missing
support for 32-bit unsigned int pixel type.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:15 +00:00
Paul B Mahol
a71926a548
exr: track channels properties
...
Needed for proper decoding of channels with subsampling
and also for remaining compression methods.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-28 18:38:14 +00:00
Nicolas George
bf63a474ca
lavc/exr: use size_t instead of int for sizes.
...
Fix a segfault on 64-bits archs.
2013-02-28 19:13:58 +01:00
Paul B Mahol
9774145fe5
exr: simplify decompression path
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-27 16:28:32 +00:00
Paul B Mahol
7b12554c5a
exr: make sure that data_size is not bigger than expected
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
74a78bfe6c
exr: simplify filling channel_buffer[]
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
645f96f129
exr: check color channel subsampling too
...
If there is unsupported subsampling encountered abort
early instead of failing decoding later.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
1a08758e7c
exr: slice threading
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-24 14:27:39 +00:00
Paul B Mahol
89c77b6b15
exr: shorter channel buffer names
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 19:31:00 +00:00
Paul B Mahol
7a930f310a
exr: remove superfluous check
...
get_header_variable_length() already check for
out of array read and returns 0 in such case.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:55 +00:00
Paul B Mahol
fefd4b0924
exr: cosmetics: reindent
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:55 +00:00
Paul B Mahol
9c75c24de4
exr: check if line offset table is complete only once per frame
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
cc0bd78413
exr: support more line orders
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
1178868683
exr: fix overflow check in lineoffset processing
...
Also read data size for raw compressions too and
make sure its value is sane.
Remove code that fills missing blocks with zeroes.
It is marginally useful and make implementation
of actually useful features harder.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
88d7259fd2
exr: merge multiple if () blocks
...
Remove useless comments.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
3456891291
exr: check version too
...
Separate version from flags.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-22 18:59:54 +00:00
Paul B Mahol
59015c1118
exr: constify s in rle_uncompress()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-21 12:02:18 +00:00
Paul B Mahol
a3d890527e
exr: reset compression in decode_frame()
...
This fixes decoding of images if compression changes.
Regression since b040ffc84c
.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-02-21 12:02:18 +00:00
Paul B Mahol
4012cd6c4f
lavc: fix decode_frame() third parameter semantics for rest of video decoders
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-12-05 18:24:43 +00:00
Michael Niedermayer
0d002de4a4
exr: fix twin ;
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-12 17:58:15 +02:00