Michael Niedermayer
468ae6a734
avcodec/proresdec2: decode picture header before frame allocation
...
Fixes: Timeout (21sec -> 0.3sec)
Fixes: 13716/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PRORES_fuzzer-5755593333145600
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
6 years ago
Paul B Mahol
49d792fff6
avcodec/proresdec2: allow changing resolution
6 years ago
Paul B Mahol
3cc5576ee1
avcodec/proresdec2: add new line at end of debug message
6 years ago
Martin Vignali
ffafa53dbf
avcodec/proresdec : add 12b decoding
...
based on patch by Kieran Kunhya
ticket 7163
6 years ago
Martin Vignali
fddc92d454
avcodec/proresdec : add unpack alpha 12 func
6 years ago
Martin Vignali
859604fe9d
avcodec/proresdec : make inline func for unpack alpha
6 years ago
Martin Vignali
1cccf9365d
avcodec/proresdec : put unpack alpha func in prores ctx
6 years ago
Martin Vignali
c097a32e93
avcodec/proresdec : rename dsp part for 10b and check dspinit for supported bits per raw sample
...
based on patch by Kieran Kunhya
6 years ago
Martin Vignali
a970920026
avcodec/proresdec : move dsp init after codec tag check
6 years ago
Vittorio Giovara
aefbb2bf02
proresdec2: Parse codec_tag and export profile information
6 years ago
Vittorio Giovara
cdc487bfc8
prores: Use profile names in the various encoders and decoders
...
Export FF_PROFILE_PRORES_* symbols publicly, add a missing one.
6 years ago
Paul B Mahol
3aacb0d196
avcodec/proresdec2: add frame threading support
6 years ago
Paul B Mahol
81d78fe13b
avcodec/proresdec2: add missing frame color metadata
...
Stolen from removed decoder.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
7 years ago
Paul B Mahol
99d24499c2
avcodec/proresdec2: make long name more descriptive
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
7 years ago
James Almer
f399172d6e
avcodec/proresdec: align dequantization matrix buffers
...
Should fix ticket #6838
Signed-off-by: James Almer <jamrial@gmail.com>
7 years ago
Carl Eugen Hoyos
ce508f0bcc
lavc/proresdec2: Do not mix variable declaration and statement.
...
Fixes ticket #6728 .
7 years ago
Martin Vignali
cbbec68847
libavcodec/blockdsp : add AVX version
...
Also modify the required alignment, to 32 instead of 16
for several codecs
Signed-off-by: James Almer <jamrial@gmail.com>
7 years ago
Michael Niedermayer
4ee77cefae
avcodec/proresdec2: Use LAST_SKIP_BITS where possible
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 years ago
Michael Niedermayer
c37138e01a
avcodec/proresdec2: SKIP_BITS() does not work with len=32
...
Fixes: invalid shift
Fixes: 3482/clusterfuzz-testcase-minimized-5446915875405824
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 years ago
Michael Niedermayer
4f5eaf0b59
avcodec/proresdec2: Check bits in DECODE_CODEWORD(), fixes invalid shift
...
Fixes: runtime error: shift exponent 42 is too large for 32-bit type 'unsigned int'
Fixes: 3410/clusterfuzz-testcase-minimized-5313377960198144
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
7 years ago
Muhammad Faiz
31f61b0d4f
avcodec: do not use AVFrame accessor
...
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
8 years ago
Michael Niedermayer
8aa4f3bb4f
avcodec/proresdec2: Do not discard frames with bad slices
...
The code previously completely discarded frames that had any error in a slice
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
8 years ago
Håvard Espeland
9c43703620
avcodec/proresdec2: Add support for grayscale videos
...
Signed-off-by: Håvard Espeland <espeland@mixedrealities.no>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
9 years ago
Carl Eugen Hoyos
bd1d67efe8
lavc/proresdec2: Fix slice_count for very high resolutions.
...
QT ignores the value written in the frame header.
Issue reported by forum user Koracas.
9 years ago
Ronald S. Bultje
229843aa35
Replace av_dlog with ff_dlog.
...
ff_dlog checks compilability, and is non-public. av_dlog is deprecated
and no longer exists if FF_API_DLOG=0.
10 years ago
Michael Niedermayer
c4c6aea397
avcodec/proresdec2: Reset slice_count on deallocation
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
aca48725af
avcodec/proresdec2: Use av_malloc_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
ef6b85e9b8
avcodec/proresdec2: propagate error codes
...
Based-on: 44690dfa68
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Clément Bœsch
b46f19100b
cosmetics: group remaining .name and .long_name.
...
See b2bed9325
.
11 years ago
Reimar Döffinger
547c2f002a
Make decoding alpha optional for some codecs.
...
For codecs where decoding of a whole plane can simply
be skipped, we should offer applications to not decode
alpha for better performance (ca. 30% less CPU usage
and 40% reduced memory bandwidth).
It also means applications do not need to implement support
(even if it is rather simple) for YUVA formats in order to be
able to play these files.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
11 years ago
Paul B Mahol
3dcd3e08f6
avcodec/proresdec2: remove duplicated tables
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
11 years ago
Paul B Mahol
43497d8a83
avcodec/proresdec2: return meaningful error codes
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
11 years ago
Michael Niedermayer
30df9789a9
proresdec: Fix end condition
...
Fixes out of array writes
No FFmpeg release is affected by this
This also fixes some artifacts
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Carl Eugen Hoyos
e32bbd4112
proresdec2: Only try to decode alpha plane if four output planes were allocated.
...
Fixes a crash with MPlayer.
12 years ago
Kostya Shishkov
d13fa0e995
proresdec2: Support decoding transparency information.
...
Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
12 years ago
Clément Bœsch
859f7da543
lavc/prores: restore pict_type and key_frame setting.
12 years ago
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>
12 years ago
Michael Niedermayer
c871244306
proresdec: check input size before reading qmats, prevent overreading.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
8e6511c1e1
proresdec2: avoid VLA and use SliceContext instead.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
5a03a3d998
proresdec2: use ff_dsputil_init() avoid deprecated ff_ less variant.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
67f17e7202
proresdec2: Fix 16 vs. 8bit compiler warnings.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
0065080320
proresdec: Fix read via negative index in a global array.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Paul B Mahol
7099f36578
lavc: replace rest of deprecated FF_*_TYPE with AV_PICTURE_TYPE_*
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
2b73cddd40
proresdec: Check yuv slice data sizes.
...
Fixes overread
Fixes Ticket812
Bug found by: Oana Stratulat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
29179239f5
proresdec: add UPDATE_CACHE, should fix decoding with -Os
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
1a2484fc4e
get_bits: drop the a32 reader.
...
that way qatar maintains the code for me and i dont need to resolve conflicts.
If someone wants the a32 reader back, only thing you need to do is maintain
it, i would be happy to have it back, iam just not volunteering to maintain
it due to lack of time.
Based on: a1e98f198e
by Mans Rullgard.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Clément Bœsch
66160bdb01
cleanup: remove two extraneous semicolons.
13 years ago
Michael Niedermayer
4b9e9a57ee
proresdec: rename to avoid confusion
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Janne Grunau
19ec283f49
prores: add missing feature warning for alpha
13 years ago
Michael Niedermayer
337496980e
prores: use C idct for fate as the SSE code is not matching the SSE* code down at the bits
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago