James Yu
16e6652286
aarch64: NEON intrinsics dct_unquantize_h263.
...
Intrinsics only used on aarch64 since the existing ARMv7 NEON asm
is slightly faster (Cortex-A9, gcc-4.8, micro-benchmarks and full
decoding time).
Signed-off-by: James Yu <james.yu@linaro.org>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
11 years ago
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
11 years ago
Michael Niedermayer
f32c5d1a8d
avcodec/mpegvideo: clip mv visualization arrows so that their direction is maintained
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c8b2cf4996
avcodec/mpegvideo: flip motion vector visualization for backward motion vectors
...
Also support changing arrow head/tail shape
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Clément Bœsch
7ac7e8793d
avcodec/mpegvideo: small indent fix in vismv code
11 years ago
Diego Biurrun
e3fcb14347
dsputil: Split off IDCT bits into their own context
11 years ago
Michael Niedermayer
504475f38e
avcodec/mpegvideo: dont overwrite emu_edge buffer
...
Fixes vsynth3 fate failures on mips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
fab9df63a3
dsputil: Split off global motion compensation bits into a separate context
11 years ago
Diego Biurrun
7b9ef8d701
mpeg: Split error resilience bits off into a separate file
11 years ago
Diego Biurrun
8d695dc411
mpeg: Mark ff_mpeg_set_erpic() static
...
It is not used outside of the file.
11 years ago
Diego Biurrun
e74433a8e6
dsputil: Split clear_block*/fill_block* off into a separate context
11 years ago
Carl Eugen Hoyos
076ab9f7e3
Fix all VDPAU decoders.
...
Fixes ticket #3726 .
11 years ago
Michael Niedermayer
dffb85a982
avcodec/mpegvideo: check that linesize is not too small
...
Note linesize is rounded up to at least a multiple of 8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c5fc8ae126
avcodec/mpegvideo: fix edge emulation with uvlinesize below 25
...
Fixes fate-vsynth3-wmv2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Janne Grunau
0ddc53dabb
mpegvideo: synchronize AVFrame pointers in ERContext fully
...
Since error resilience uses AVFrame pointers instead of references it
has to copy NULL pointers too. After a codec flush the last/next frame
pointers in MpegEncContext are NULL and the old pointers remaining in
ERContext are invalid. Fixes a crash in vlc for android thumbnailer.
Reported and debugged by Adrien Maglo <magsoft@videolan.org>.
11 years ago
Diego Biurrun
368f50359e
dsputil: Split off quarterpel bits into their own context
11 years ago
Diego Biurrun
3832a65901
dsputil: Move ff_alternate_*_scan tables to mpegvideo
11 years ago
Anton Khirnov
a871ef0cc9
hwaccel: Rename priv_data_size to frame_priv_data_size
...
This describes more accurately what this field is for.
11 years ago
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