Anton Khirnov
33f10546ec
vc1: check that slices have a positive height
...
Fixes possible invalid reads.
CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
8 years ago
Vittorio Giovara
41ed7ab45f
cosmetics: Fix spelling mistakes
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
Vittorio Giovara
ca8c759173
intrax8: Remove mpegvideo dependency
9 years ago
Vittorio Giovara
9fa888c028
intrax8: Keep a reference to the decoder blocks
9 years ago
Vittorio Giovara
d0540fd021
intrax8: Pass macroblock size to ff_intrax8_common_init
...
Helps in decoupling this code from mpegvideo.
9 years ago
Vittorio Giovara
1eaae7abb8
intrax8: Reference the current AVCodecContext
...
It will be needed to initialize BlockDSP in the next commit.
9 years ago
Vittorio Giovara
68127e1bf8
intrax8: Keep a reference to the context idctdsp
...
Use it instead of the embedded mpegvideo one. Update init function
signature to load it directly from the callers.
9 years ago
Vittorio Giovara
d909f43b5c
vc1dec: wmv2dec: Validate ff_intrax8_common_init return value
9 years ago
Mark Thompson
d264c720f7
lavu: deprecate AV_PIX_FMT_VAAPI_*, replace with AV_PIX_FMT_VAAPI
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years ago
Vittorio Giovara
e66fa35392
vc1dec: Check group allocations separatedly
...
This avoids accessing NULL pointers in case of error.
9 years ago
Vittorio Giovara
01f0e6a0c9
vc1dec: Fix leak on error for array allocations
...
The deinit function in the 'error' section will correctly free
everything.
9 years ago
Vittorio Giovara
f91d94bdfc
vc1dec: Properly call deinit function on error
9 years ago
Vittorio Giovara
35b1cd343c
vc1dec: Drop commented out cruft
9 years ago
Anton Khirnov
2c6811397b
lavc: add profiles to AVCodecDescriptor
...
The profiles are a property of the codec, so it makes sense to export
them through AVCodecDescriptors, not just the codec implementations.
9 years ago
Vittorio Giovara
059a934806
lavc: Consistently prefix input buffer defines
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years ago
Vittorio Giovara
def97856de
lavc: AV-prefix all codec capabilities
...
Express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years ago
Vittorio Giovara
7c6eb0a1b7
lavc: AV-prefix all codec flags
...
Convert doxygen to multiline and express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
10 years ago
Andreas Cadhalpun
072756cdd2
vc1dec: use get_bits_long and limit the read bits to 32
...
get_bits should not be used with more than 25 bits.
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years ago
Vittorio Giovara
31a117a0e6
mpegvideo: msmpeg4: Move function declarations
10 years ago
Steve Lhomme
d8039ef8d2
D3D11va: add a Direct3D11 video decoder similar to DXVA2
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years ago
Vittorio Giovara
848e86f74d
mpegvideo: Drop flags and flags2
...
They are just duplicates of AVCodecContext members so use those instead.
10 years ago
Vittorio Giovara
6a85dfc830
lavc: Replace av_dlog and tprintf with internal macros
10 years ago
Peter Meerwald
9abc80f1ed
libavcodec: Make use of av_clip functions
...
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years ago
Diego Biurrun
7f9f771eac
avcodec: Don't anonymously typedef structs
10 years ago
Vittorio Giovara
1a02e78653
vc1: initialize color properties
10 years ago
Luca Barbato
04d14c9b68
vc1: Split the decoder in components
...
Speed up the overall compilation time.
10 years ago
Luca Barbato
68211c70af
vc1: Do not assume seek happens after decoding
...
If a seek is requested before the decoding start there is no
current picture.
CC: libav-stable@libav.org
10 years ago
Michael Niedermayer
a97328afef
vc1: Use logical instead of bitwise or for twomv
...
CC: libav-stable@libav.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Tim Walker <tdskywalker@gmail.com>
10 years ago
Tim Walker
b5fe13448b
vc1: Use logical instead of bitwise or for coded_inter
...
This appears to be the intended behavior.
10 years ago
Diego Biurrun
d456baafb6
vc1: Add missing parentheses to conditions in vc1_decode_b_mb_intfr()
11 years ago
Gabriel Dume
4b1f5e5090
cosmetics: Write NULL pointer inequality checks more compactly
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
11 years ago
Gabriel Dume
f929ab0569
cosmetics: Write NULL pointer equality checks more compactly
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
11 years ago
Diego Biurrun
835f798c7d
mpegvideo: cosmetics: Lowercase ugly uppercase MPV_ function name prefixes
11 years ago
Ben Avison
adf8227cf4
vc-1: Add platform-specific start code search routine to VC1DSPContext.
...
Initialise VC1DSPContext for parser as well as for decoder.
Note, the VC-1 code doesn't actually use the function pointer yet.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Diego Biurrun
e3fcb14347
dsputil: Split off IDCT bits into their own context
11 years ago
Diego Biurrun
7b9ef8d701
mpeg: Split error resilience bits off into a separate file
11 years ago
Diego Biurrun
e74433a8e6
dsputil: Split clear_block*/fill_block* off into a separate context
11 years ago
Diego Biurrun
368f50359e
dsputil: Split off quarterpel bits into their own context
11 years ago
Anton Khirnov
5c1d7246cd
lavc: set AVCodecContext.hwaccel in ff_get_format()
...
This way each decoder does not have to do the same thing manually.
11 years ago
Anton Khirnov
632ad2248e
lavc: Add an internal wrapper around get_format()
...
It will be useful in the following commits.
11 years ago
Alessandro Ghedini
cdf6eb5a97
vc1: Do not return an error when skipping b frames
...
This caused mpv (and possibly others) to fallback to software decoding after
seeking a VC1 stream.
Bug-Id: 667
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
wm4
f6774f905f
mpegvideo: operate with pointers to AVFrames instead of whole structs
...
The most interesting parts are initialization in ff_MPV_common_init() and
uninitialization in ff_MPV_common_end().
ff_mpeg_unref_picture and ff_thread_release_buffer have additional NULL
checks for Picture.f, because these functions can be called on
uninitialized or partially initialized Pictures.
NULL pointer checks are added to ff_thread_release_buffer() stub function.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
11 years ago
Vittorio Giovara
c611148340
vc1dec: fix a possible unitialized variable warning
11 years ago
Rémi Denis-Courmont
654c7446a8
vc1dec: improve hwaccel #ifdefs
11 years ago
Vittorio Giovara
6f6c029464
lavc: drop ff_pixfmt_list_420
11 years ago
Vittorio Giovara
e0c16e4e32
mpegvideo: move mpegvideo formats-related defines to mpegutils.h
11 years ago
Anton Khirnov
ebfe622bb1
mpegvideo: drop support for real (non-emulated) edges
...
Several decoders disable those anyway and they are not measurably faster
on x86. They might be somewhat faster on other platforms due to missing
emu edge SIMD, but the gain is not large enough (and those decoders
relevant enough) to justify the added complexity.
11 years ago
Michael Niedermayer
d8fd183683
vc1: Fix mb_height for field pictures
...
Tables are always allocated now with sufficient space for either progressive
or interlaced content. The alternative would be to detect a change
and reallocate.
This fixes decoding of a sample.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Anton Khirnov
66499f34b5
mpegvideo: do not set current_picture_ptr in decoders
...
This code was originally added in
5f1948111a
to h263 to set decoded frame
pts to some random numbers (removed in
a1c5cc429d
) and then cargo culted to other
decoders.
The code is left in h263dec for now, since some part of the decoder
(apparently OBMC) relies on the specific previous frame to be reused.
11 years ago
Anton Khirnov
ac1fc92ea4
vc1dec: move setting repeat_pict after frame_start() has been called.
...
This will allow removing the hacks where each decoder sets
current_picture_ptr on its own.
11 years ago