Vittorio Giovara
378a00087f
mpegvideo: Move tables to a separate file
2015-05-31 13:06:19 +02:00
Vittorio Giovara
2f15846ad7
mpegvideo: wmv2: Move function declarations
2015-05-31 13:06:19 +02:00
Anton Khirnov
fa1923f182
mpegvideo: Move ff_*_rl functions to a separate file
2015-05-28 15:38:43 +01:00
Vittorio Giovara
419e3404d0
mpegvideo: Drop exchange_uv() function and use its code directly
...
Code is small enough that there is no advantage in a separate function.
2015-05-28 15:38:43 +01:00
Vittorio Giovara
4e17946f10
mpegvideo: Rework various functions not to use MpegEncContext directly
2015-05-22 15:34:39 +01:00
Vittorio Giovara
a3f4c930ac
mpegvideo: Have ff_mpeg_ref_picture use AVCodecContext directly
2015-05-22 15:34:39 +01:00
Vittorio Giovara
d528045558
mpegvideo: Have ff_mpeg_unref_picture use AVCodecContext directly
...
This skips setting the memory to 0 but allows for reuse on different
contextes. Oracle did not report any unsual activity because of it.
2015-05-22 15:34:39 +01:00
Vittorio Giovara
9c1db92ad3
mpegvideo: Drop err_recognition
...
It is just a duplicate of an AVCodecContext member so use it instead.
2015-05-22 15:34:39 +01:00
Vittorio Giovara
848e86f74d
mpegvideo: Drop flags and flags2
...
They are just duplicates of AVCodecContext members so use those instead.
2015-05-22 15:34:39 +01:00
Vittorio Giovara
6a85dfc830
lavc: Replace av_dlog and tprintf with internal macros
2015-04-19 12:41:59 +01:00
Anton Khirnov
e44b58924f
lavc: deprecate unused AVCodecContext.stream_codec_tag
2015-01-27 09:14:39 +01:00
Anton Khirnov
cf1e0786ed
error_resilience: move the MECmpContext initialization into ER code
...
Currently, it needs to be initialized by the ER caller (which is
currently either a mpegvideo decoder or h264dec). However, since none of
those decoders use MECmpContext for anything except ER, it makes more
sense to handle it purely inside ER.
2015-01-27 09:07:59 +01:00
Vittorio Giovara
d75190aa93
mpegvideo: move REBASE_PICTURE where it is used
...
Drop an unused #undef from h264 decoder.
2014-12-15 15:46:34 +01:00
Michael Niedermayer
894545cb71
mpegvideo: exit cleanly when ff_mpv_common_frame_size_change() fails
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-03 12:52:53 +00:00
Michael Niedermayer
7a38987f24
mpegvideo: free_context_frame() cannot fail, make it return void
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-03 12:52:04 +00:00
Michael Niedermayer
c45eeb2dbf
mpegvideo: replace assert about interlaced EC with debug av_log()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-03 12:51:43 +00:00
Vittorio Giovara
898e9a24ef
mpegvideo: check mpv return value
...
CC: libav-stable@libav.org
Bug-Id: CID 1238786
2014-11-11 11:26:02 +01:00
Gabriel Dume
f929ab0569
cosmetics: Write NULL pointer equality checks more compactly
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-08-15 03:18:18 -07:00
Diego Biurrun
835f798c7d
mpegvideo: cosmetics: Lowercase ugly uppercase MPV_ function name prefixes
2014-08-15 01:26:33 -07:00
John Stebbins
998c9f15d1
idct: remove call to ff_idctdsp_init from ff_MPV_common_init
...
One step in untangling the mpegvideo code and fixing some problems in
the order that initialization is being done in h263dec and h261dec.
2014-08-14 07:58:49 -07:00
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>
2014-07-21 23:18:29 +02:00
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
2014-07-17 09:07:10 -07:00
Diego Biurrun
e3fcb14347
dsputil: Split off IDCT bits into their own context
2014-06-30 07:58:46 -07:00
Diego Biurrun
fab9df63a3
dsputil: Split off global motion compensation bits into a separate context
2014-06-23 09:58:17 -07:00
Diego Biurrun
7b9ef8d701
mpeg: Split error resilience bits off into a separate file
2014-06-22 17:36:37 -07:00
Diego Biurrun
8d695dc411
mpeg: Mark ff_mpeg_set_erpic() static
...
It is not used outside of the file.
2014-06-22 06:28:46 -07:00
Diego Biurrun
e74433a8e6
dsputil: Split clear_block*/fill_block* off into a separate context
2014-06-18 14:07:23 -07:00
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>.
2014-06-11 21:28:27 +02:00
Diego Biurrun
368f50359e
dsputil: Split off quarterpel bits into their own context
2014-05-29 06:48:31 -07:00
Diego Biurrun
3832a65901
dsputil: Move ff_alternate_*_scan tables to mpegvideo
2014-05-29 06:41:15 -07:00
Anton Khirnov
a871ef0cc9
hwaccel: Rename priv_data_size to frame_priv_data_size
...
This describes more accurately what this field is for.
2014-05-11 14:59:07 +02:00
Anton Khirnov
c1f92d1358
mpegvideo: remove unused MpegEncContext.b4_stride
2014-04-29 14:49:42 +02:00
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>
2014-04-09 02:12:19 +02:00
Vittorio Giovara
6f6c029464
lavc: drop ff_pixfmt_list_420
2014-03-23 01:56:58 +01:00
Vittorio Giovara
be039278b5
mpegvideo: move ff_draw_horiz_band() to mpegutils.c
...
Drop the mpegvideo dependency for svq3 in configure.
2014-03-16 23:05:39 +01:00
Vittorio Giovara
e0c16e4e32
mpegvideo: move mpegvideo formats-related defines to mpegutils.h
2014-03-16 23:04:41 +01:00
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().
2014-03-16 23:01:00 +01:00
Vittorio Giovara
75af13a0e4
mpegvideo: directly use frames in ff_draw_horiz_band()
2014-03-16 23:01:00 +01:00
Diego Biurrun
54b2ce7418
mpeg: Drop unused parameters from ff_draw_horiz_band()
2014-01-29 16:37:23 +01:00
Janne Grunau
fb0c9d41d6
avutil: remove timer.h include from internal.h
...
Added libavutil/timer.h include to all files with {START,STOP}_TIMER.
2014-01-25 21:50:20 +01:00
Anton Khirnov
024db24912
mpegvideo: allocate edges when encoding.
...
Allocating edges will be removed from generic code, so the encoder must
handle this explicitly.
2014-01-20 12:50:14 +01:00
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.
2014-01-09 09:41:19 +01:00
Anton Khirnov
a3a55645f0
mpegvideo: remove disabled bfin asm
...
It has been disabled as 'broken' over 3 years ago in b716a792
2014-01-03 16:54:24 +01:00
Anton Khirnov
a4d0c6e050
mpegvideo: move dct_unquantize functions up to avoid forward declarations
2014-01-03 16:54:00 +01:00
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.
2014-01-03 16:52:49 +01:00
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
2014-01-03 16:36:43 +01:00
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.
2013-12-11 20:39:55 +01:00
Anton Khirnov
b06c8bce02
mpegvideo: remove an unneeded call to avcodec_get_frame_defaults().
...
ff_mpeg_unref_picture() already resets the frame.
2013-12-11 20:39:55 +01:00
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.
2013-12-05 13:26:50 +01:00
Anton Khirnov
c99307caee
mpegvideo: make frame_size_alloc() static.
...
It is not called from outside of mpegvideo.c anymore.
2013-12-05 13:25:46 +01:00