Michael Niedermayer
41a679000f
avcodec/mpegvideo: fix gray*() parameter types
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c60b266eac
avcodec/mpegvideo: support disabling motion compensation
...
This allows analyzing videos without having prior and current frames mixed
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
6a0b5e3476
avcodec/mpegvideo: fix null pointer dereference
...
Fixes: 111342.ogm with ffplay
Found-by: Dale Curtis <dalecurtis@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
c1f92d1358
mpegvideo: remove unused MpegEncContext.b4_stride
11 years ago
Michael Niedermayer
9341e9497b
Fix overriden typos
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Carl Eugen Hoyos
941b2240f2
Do not overwrite VDPAU structures in ff_MPV_frame_start().
...
Fixes crashes with VDR and MPlayer as reported by irc user crow.
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
Michael Niedermayer
72bff8da47
avcodec: Make ff_print_debug_info2() independant of Picture struct
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
6f6c029464
lavc: drop ff_pixfmt_list_420
11 years ago
Michael Niedermayer
8ef9dcf1d7
avcodec/mpegvideo: ff_mpeg_set_erpic() clear destination
...
Fixes crash
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
be039278b5
mpegvideo: move ff_draw_horiz_band() to mpegutils.c
...
Drop the mpegvideo dependency for svq3 in configure.
11 years ago
Vittorio Giovara
e0c16e4e32
mpegvideo: move mpegvideo formats-related defines to mpegutils.h
11 years ago
Vittorio Giovara
d66e305bd1
er: move relevant fields from Picture to ERPicture
...
This is done to disentangle ER from mpegvideo. In order to use a
classic Picture, callers can use ff_mpeg_set_erpic() or use a custom function
to set the fields. Please note that buffers need to be allocated before
calling ff_er_frame_end().
11 years ago
Vittorio Giovara
75af13a0e4
mpegvideo: directly use frames in ff_draw_horiz_band()
11 years ago
Hendrik Leppkes
bc249bd673
mpegvideo: re-indent buffer clearing code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Hendrik Leppkes
fa84231ee8
mpegvideo: fix overwriting hwaccel surface objects
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
42361bdf51
avcodec/mpegvideo: fix buffer clear code so it should work with negative linesizes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
54b2ce7418
mpeg: Drop unused parameters from ff_draw_horiz_band()
11 years ago
Janne Grunau
fb0c9d41d6
avutil: remove timer.h include from internal.h
...
Added libavutil/timer.h include to all files with {START,STOP}_TIMER.
11 years ago
Anton Khirnov
024db24912
mpegvideo: allocate edges when encoding.
...
Allocating edges will be removed from generic code, so the encoder must
handle this explicitly.
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
950fb8acb4
avcodec/mpegvideo: fix ac/dc_val and coded_block table sizes
...
With interlaced vc1 it was possible that accesses could happen outside these
tables before this.
Regression since 017e234c20
Reproduced with a sample from Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Fixes (again) : 480i30__codec_WVC1__mode_2__framerate_29.970__type_2__preproc_17.SIGFPE.bfa.390.wmv
No releases are affected by this
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
a3a55645f0
mpegvideo: remove disabled bfin asm
...
It has been disabled as 'broken' over 3 years ago in b716a792
11 years ago
Anton Khirnov
a4d0c6e050
mpegvideo: move dct_unquantize functions up to avoid forward declarations
11 years ago
Anton Khirnov
aec25b1c46
mpegvideo: split the encoding-only parts of frame_start() into a separate function
...
This introduces some code duplication. However, much of it should go
away once the decoders stop using MpegEncContext.
11 years ago
Anton Khirnov
feded990e3
mpegvideo: set reference/pict_type on generated reference frames
...
Otherwise the generic code will unref them, which can then result in
last_picture_ptr == current_picture_ptr, which causes deadlocks at least
in rv40.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
11 years ago
Ivan Kalvachev
1c63aed232
Convert XvMC to hwaccel v3
...
Signed-off-by: Ivan Kalvachev <ikalvachev@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
34fe125f4b
avcodec/mpegvideo_enc: fix frame skipping with intra only codecs
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
2d1f4288dd
mpegvideo: call av_frame_unref() instead of avcodec_get_frame_defaults().
...
This is a temporary workaround to allow deprecating
avcodec_get_frame_defaults(). The proper solution will be using a
properly allocated AVFrame in Picture.
11 years ago
Anton Khirnov
b06c8bce02
mpegvideo: remove an unneeded call to avcodec_get_frame_defaults().
...
ff_mpeg_unref_picture() already resets the frame.
11 years ago
Anton Khirnov
282c6a1a0e
mpegvideo: make ff_release_unused_pictures() static
...
It is only called from one place in mpegvideo.c now. Also remove the
remove_current parameter, which is always 1.
11 years ago
Anton Khirnov
c99307caee
mpegvideo: make frame_size_alloc() static.
...
It is not called from outside of mpegvideo.c anymore.
11 years ago
Anton Khirnov
0b0a7a751d
mpegvideo: move encode-only parts of common_end() to encode_end()
11 years ago
Anton Khirnov
d0d111d059
mpegvideo: remove commented out cruft from ff_MPV_frame_end()
11 years ago
Anton Khirnov
381a722562
mpegvideo: split the encoding-only parts of ff_MPV_frame_end() into a separate function
11 years ago
Anton Khirnov
b7254288d2
mpegvideo: do not update last_non_b_pict_type in update_thread_context()
...
It is used for encoding only.
11 years ago
Anton Khirnov
1f8eb69079
mpegvideo: move encoding-only initialization from common_init() to encode_init()
11 years ago
Anton Khirnov
bedf952bb8
mpegvideo: move setting encoding-only vars from common_defaults() to encode_defaults()
11 years ago
Anton Khirnov
2cab011f0f
mpegvideo: don't copy input_picture_number in update_thread_context()
...
It is encoding-only, frame threading is not used for encoding.
11 years ago
Anton Khirnov
e62a43f6b1
mpeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext
...
The field remains in MpegEncContext for use in the encoder.
11 years ago
Anton Khirnov
ee8af2dd99
mpeg4videodec: move MpegEncContext.shape to Mpeg4DecContext
11 years ago
Kostya Shishkov
16e7b189c5
mpegvideo: Fix swapping of UV planes for VCR2
11 years ago
Anton Khirnov
a553c6a347
lavc: use buf[0] instead of data[0] in checks whether a frame is allocated
...
data[0] may be NULL for valid frames with hwaccel pixel formats.
11 years ago
Kostya Shishkov
bae14f38d9
mpegvideo: Fix swapping of UV planes for VCR2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
19e30a58fc
Deprecate obsolete XvMC hardware decoding support
...
XvMC has long ago been superseded by newer acceleration APIs, such as
VDPAU, and few downstreams still support it. Furthermore XvMC is not
implemented within the hwaccel framework, but requires its own specific
code in the MPEG-1/2 decoder, which is a maintenance burden.
11 years ago
Diego Biurrun
c7f7bfc9e3
Remove all Alpha architecture optimizations
...
Alpha has been end-of-lifed and no more test machines are available.
11 years ago
Michael Niedermayer
6e87dfb589
mpegvideo: reduce whitespace differences to libav
...
This excludes many changes that worsen readability
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
ccc7129845
lavc: deprecate FF_DEBUG_MV and remove all traces of its use
...
It has not been actually used since
37045e4229
, when the broken vismv code was
removed.
11 years ago
Luca Barbato
72072bf9de
mpegvideo: Drop a faulty assert
...
That check is easily reachable by faulty input.
CC:libav-stable@libav.org
Reported-by: Torsten Sadowski <tsadowski@gmx.net>
11 years ago
Ronald S. Bultje
face578d56
Rewrite emu_edge functions to have separate src/dst_stride arguments.
...
This allows supporting files for which the image stride is smaller than
the max. block size + number of subpel mc taps, e.g. a 64x64 VP9 file
or a 16x16 VP8 file with -fflags +emu_edge.
11 years ago