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>
2014-06-13 18:40:21 +02:00
Michael Niedermayer
c5fc8ae126
avcodec/mpegvideo: fix edge emulation with uvlinesize below 25
...
Fixes fate-vsynth3-wmv2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-13 01:56:01 +02:00
Michael Niedermayer
67911cc57b
Merge commit '0ddc53dabbc6f636d062b187ea27934610aaad30'
...
* commit '0ddc53dabbc6f636d062b187ea27934610aaad30':
mpegvideo: synchronize AVFrame pointers in ERContext fully
Conflicts:
libavcodec/mpegvideo.c
See: 8ef9dcf1d7
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-11 22:30:49 +02: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
Michael Niedermayer
98a6806fdd
Merge commit '368f50359eb328b0b9d67451f56fda20b3255f9a'
...
* commit '368f50359eb328b0b9d67451f56fda20b3255f9a':
dsputil: Split off quarterpel bits into their own context
Conflicts:
configure
libavcodec/dsputil.c
libavcodec/h263dec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/vc1dec.c
libavcodec/vc1dsp.c
libavcodec/x86/dsputil_init.c
libavcodec/x86/qpeldsp.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-30 02:43:34 +02:00
Michael Niedermayer
a9a312d299
Merge commit '3832a6590156e6abc575bed51cbffa78617ee5fd'
...
* commit '3832a6590156e6abc575bed51cbffa78617ee5fd':
dsputil: Move ff_alternate_*_scan tables to mpegvideo
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-30 00:30:45 +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
Michael Niedermayer
fa0f7c024e
Merge commit 'a871ef0cc936612bdb0e643196be72efcf0c8986'
...
* commit 'a871ef0cc936612bdb0e643196be72efcf0c8986':
hwaccel: Rename priv_data_size to frame_priv_data_size
Conflicts:
libavcodec/avcodec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-11 23:49:13 +02: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
Michael Niedermayer
41a679000f
avcodec/mpegvideo: fix gray*() parameter types
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-02 17:12:42 +02:00
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>
2014-05-02 16:51:39 +02:00
Michael Niedermayer
b3d48c315d
Merge commit 'c1f92d13589d431e576d719dd44427486a5e05cd'
...
* commit 'c1f92d13589d431e576d719dd44427486a5e05cd':
mpegvideo: remove unused MpegEncContext.b4_stride
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-30 00:28:51 +02:00
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>
2014-04-29 14:52:12 +02:00
Anton Khirnov
c1f92d1358
mpegvideo: remove unused MpegEncContext.b4_stride
2014-04-29 14:49:42 +02:00
Michael Niedermayer
9341e9497b
Fix overriden typos
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-27 15:20:45 +02:00
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.
2014-04-18 05:08:24 +02:00
Michael Niedermayer
59a53842d3
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: operate with pointers to AVFrames instead of whole structs
Conflicts:
libavcodec/h261dec.c
libavcodec/h263dec.c
libavcodec/intrax8.c
libavcodec/mpeg12enc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/mpegvideo_xvmc.c
libavcodec/msmpeg4.c
libavcodec/ratecontrol.c
libavcodec/vaapi.c
libavcodec/vc1dec.c
libavcodec/vdpau_vc1.c
See: fc567ac49e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-09 15:18:46 +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
Michael Niedermayer
72bff8da47
avcodec: Make ff_print_debug_info2() independant of Picture struct
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-27 22:43:05 +01:00
Michael Niedermayer
6ee2911996
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
lavc: drop ff_pixfmt_list_420
Conflicts:
libavcodec/flvdec.c
libavcodec/msmpeg4dec.c
libavcodec/rv10.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-23 03:56:43 +01:00
Vittorio Giovara
6f6c029464
lavc: drop ff_pixfmt_list_420
2014-03-23 01:56:58 +01:00
Michael Niedermayer
329a3286d6
Merge commit 'be039278b5ebd8075d90a3508db2aed5adf59e02'
...
* commit 'be039278b5ebd8075d90a3508db2aed5adf59e02':
mpegvideo: move ff_draw_horiz_band() to mpegutils.c
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 13:23:48 +01:00
Michael Niedermayer
9517900bef
Merge commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b'
...
* commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b':
mpegvideo: move mpegvideo formats-related defines to mpegutils.h
Conflicts:
libavcodec/h264_cabac.c
libavcodec/h264_cavlc.c
libavcodec/h264_mvpred.h
libavcodec/svq1enc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 12:36:48 +01:00
Michael Niedermayer
8ef9dcf1d7
avcodec/mpegvideo: ff_mpeg_set_erpic() clear destination
...
Fixes crash
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 05:13:59 +01:00
Michael Niedermayer
533bc4c0a3
Merge commit 'd66e305bd1b4f3e91ae4e7e549148509d0811672'
...
* commit 'd66e305bd1b4f3e91ae4e7e549148509d0811672':
er: move relevant fields from Picture to ERPicture
Conflicts:
libavcodec/error_resilience.c
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 05:08:46 +01:00
Michael Niedermayer
3ddf9b5b77
Merge commit '75af13a'
...
* commit '75af13a':
mpegvideo: directly use frames in ff_draw_horiz_band()
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 04:35:48 +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
Hendrik Leppkes
bc249bd673
mpegvideo: re-indent buffer clearing code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-25 13:47:16 +01:00
Hendrik Leppkes
fa84231ee8
mpegvideo: fix overwriting hwaccel surface objects
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-25 13:47:10 +01:00
Michael Niedermayer
42361bdf51
avcodec/mpegvideo: fix buffer clear code so it should work with negative linesizes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-23 18:14:59 +01:00
Michael Niedermayer
fbafd64acc
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpeg: Drop unused parameters from ff_draw_horiz_band()
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-29 17:05:51 +01:00
Diego Biurrun
54b2ce7418
mpeg: Drop unused parameters from ff_draw_horiz_band()
2014-01-29 16:37:23 +01:00
Michael Niedermayer
965fa6b0d9
Merge commit 'fb0c9d41d685abb58575c5482ca33b8cd457c5ec'
...
* commit 'fb0c9d41d685abb58575c5482ca33b8cd457c5ec':
avutil: remove timer.h include from internal.h
Conflicts:
libavcodec/ffv1dec.c
libavutil/internal.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-26 01:54:55 +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
Michael Niedermayer
d83707c641
Merge commit '024db24912a39316b0ef0b7d793307d62da038f4'
...
* commit '024db24912a39316b0ef0b7d793307d62da038f4':
mpegvideo: allocate edges when encoding.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-20 17:09:35 +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
Michael Niedermayer
2830f287e2
Merge commit 'ebfe622bb1ca57cecb932e42926745cba7161913'
...
* commit 'ebfe622bb1ca57cecb932e42926745cba7161913':
mpegvideo: drop support for real (non-emulated) edges
Conflicts:
libavcodec/mpegvideo.c
libavcodec/mpegvideo_motion.c
libavcodec/wmv2.c
If this is slower on a major platform then it should be investigated
and potentially reverted.
See: 8fc52a5ef9
See: 3969b4b861
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-09 14:19:24 +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
Michael Niedermayer
adc09a353c
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: remove disabled bfin asm
Conflicts:
libavcodec/bfin/mpegvideo_bfin.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 03:13:54 +01:00
Michael Niedermayer
9b9f64fe31
Merge commit 'a4d0c6e0503562d4cc8f9f6d02d84d7b32583b15'
...
* commit 'a4d0c6e0503562d4cc8f9f6d02d84d7b32583b15':
mpegvideo: move dct_unquantize functions up to avoid forward declarations
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 03:03:02 +01:00
Michael Niedermayer
fb17f03dad
Merge commit 'aec25b1c4650944d32706bfd40eb02bbd5587303'
...
* commit 'aec25b1c4650944d32706bfd40eb02bbd5587303':
mpegvideo: split the encoding-only parts of frame_start() into a separate function
Conflicts:
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 02:56:29 +01:00
Michael Niedermayer
532b93b516
Merge commit 'feded990e3ef9af4a0b827d5b6d8fe86f0b94942'
...
* commit 'feded990e3ef9af4a0b827d5b6d8fe86f0b94942':
mpegvideo: set reference/pict_type on generated reference frames
Conflicts:
libavcodec/mpegvideo.c
The picture type is left at P type as it was explicitly set before
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 00:16:58 +01:00
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>
2014-01-03 20:35:55 +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