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
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
Ivan Kalvachev
1c63aed232
Convert XvMC to hwaccel v3
...
Signed-off-by: Ivan Kalvachev <ikalvachev@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-22 22:03:47 +01:00
Michael Niedermayer
34fe125f4b
avcodec/mpegvideo_enc: fix frame skipping with intra only codecs
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-20 15:04:40 +01:00
Michael Niedermayer
3b2b07397c
Merge commit '2d1f4288dd02a624cb8b86ab06371d6434c9da69'
...
* commit '2d1f4288dd02a624cb8b86ab06371d6434c9da69':
mpegvideo: call av_frame_unref() instead of avcodec_get_frame_defaults().
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-12 00:08:08 +01:00
Michael Niedermayer
efb5ebe832
Merge commit 'b06c8bce02b15115a4789252365df2dda0c4713c'
...
* commit 'b06c8bce02b15115a4789252365df2dda0c4713c':
mpegvideo: remove an unneeded call to avcodec_get_frame_defaults().
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-11 23:55:51 +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
Michael Niedermayer
52b69fa142
Merge commit '282c6a1a0ef3e8c8e180c15b39cfe5b89704d848'
...
* commit '282c6a1a0ef3e8c8e180c15b39cfe5b89704d848':
mpegvideo: make ff_release_unused_pictures() static
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 03:46:47 +01:00
Michael Niedermayer
f1db3f5f59
Merge commit 'c99307caee01441cfde24f3b7b0db3037b7022dc'
...
* commit 'c99307caee01441cfde24f3b7b0db3037b7022dc':
mpegvideo: make frame_size_alloc() static.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 03:29:33 +01:00
Michael Niedermayer
08667c2678
Merge commit '0b0a7a751de02464a33717e70352f696372ba1c4'
...
* commit '0b0a7a751de02464a33717e70352f696372ba1c4':
mpegvideo: move encode-only parts of common_end() to encode_end()
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 03:12:10 +01:00
Michael Niedermayer
e3b7f0e184
Merge commit 'd0d111d0592bfd6b2b8bcd2321986c0fc493455d'
...
* commit 'd0d111d0592bfd6b2b8bcd2321986c0fc493455d':
mpegvideo: remove commented out cruft from ff_MPV_frame_end()
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 02:54:45 +01:00
Michael Niedermayer
26c2e3bf1a
Merge commit '381a722562bcc0b623acf6a00a583fe989bcb72a'
...
* commit '381a722562bcc0b623acf6a00a583fe989bcb72a':
mpegvideo: split the encoding-only parts of ff_MPV_frame_end() into a separate function
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 02:48:09 +01:00
Michael Niedermayer
d5050bae80
Merge commit 'b7254288d222013e20539c530b1ec5d324ed5352'
...
* commit 'b7254288d222013e20539c530b1ec5d324ed5352':
mpegvideo: do not update last_non_b_pict_type in update_thread_context()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 02:18:50 +01:00
Michael Niedermayer
20b28fc7b0
Merge commit '1f8eb69079880ef1f394c498dfdf471f91222a06'
...
* commit '1f8eb69079880ef1f394c498dfdf471f91222a06':
mpegvideo: move encoding-only initialization from common_init() to encode_init()
Conflicts:
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 02:12:59 +01:00
Michael Niedermayer
2951b7fb1d
Merge commit 'bedf952bb80ae26427854dcde56c139ecb87d4a0'
...
* commit 'bedf952bb80ae26427854dcde56c139ecb87d4a0':
mpegvideo: move setting encoding-only vars from common_defaults() to encode_defaults()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 01:58:55 +01:00
Michael Niedermayer
16338b4fb9
Merge commit '2cab011f0f02fcff8a0629a611bcac2f0459f04a'
...
* commit '2cab011f0f02fcff8a0629a611bcac2f0459f04a':
mpegvideo: don't copy input_picture_number in update_thread_context()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 01:52:53 +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
Anton Khirnov
0b0a7a751d
mpegvideo: move encode-only parts of common_end() to encode_end()
2013-12-05 13:25:26 +01:00
Anton Khirnov
d0d111d059
mpegvideo: remove commented out cruft from ff_MPV_frame_end()
2013-12-05 13:25:15 +01:00
Anton Khirnov
381a722562
mpegvideo: split the encoding-only parts of ff_MPV_frame_end() into a separate function
2013-12-05 13:23:55 +01:00
Anton Khirnov
b7254288d2
mpegvideo: do not update last_non_b_pict_type in update_thread_context()
...
It is used for encoding only.
2013-12-05 13:23:33 +01:00
Anton Khirnov
1f8eb69079
mpegvideo: move encoding-only initialization from common_init() to encode_init()
2013-12-05 13:23:03 +01:00
Anton Khirnov
bedf952bb8
mpegvideo: move setting encoding-only vars from common_defaults() to encode_defaults()
2013-12-05 13:22:55 +01:00
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.
2013-12-05 13:22:46 +01:00
Michael Niedermayer
e2f63be012
Merge commit 'e62a43f6b1a9c0c82e1df33c0c038e32029c0aa4'
...
* commit 'e62a43f6b1a9c0c82e1df33c0c038e32029c0aa4':
mpeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext
Conflicts:
libavcodec/mpeg4videodec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:45:05 +01:00
Michael Niedermayer
ad13b8ca9b
Merge commit 'ee8af2dd99dcb7a01a667deedec81d1aa2a00d72'
...
* commit 'ee8af2dd99dcb7a01a667deedec81d1aa2a00d72':
mpeg4videodec: move MpegEncContext.shape to Mpeg4DecContext
Conflicts:
libavcodec/h263dec.c
libavcodec/mpeg4videodec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:35:52 +01:00
Anton Khirnov
e62a43f6b1
mpeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext
...
The field remains in MpegEncContext for use in the encoder.
2013-11-29 14:19:47 +01:00
Anton Khirnov
ee8af2dd99
mpeg4videodec: move MpegEncContext.shape to Mpeg4DecContext
2013-11-29 14:19:47 +01:00
Michael Niedermayer
56e122787e
Merge commit 'a553c6a347d3d28d7ee44c3df3d5c4ee780dba23'
...
* commit 'a553c6a347d3d28d7ee44c3df3d5c4ee780dba23':
lavc: use buf[0] instead of data[0] in checks whether a frame is allocated
Conflicts:
libavcodec/h264_refs.c
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-19 03:56:53 +01:00
Kostya Shishkov
16e7b189c5
mpegvideo: Fix swapping of UV planes for VCR2
2013-11-19 02:05:51 +01:00
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.
2013-11-18 18:09:48 +01:00
Michael Niedermayer
91e00c4a78
Merge commit '458446acfa1441d283dacf9e6e545beb083b8bb0'
...
* commit '458446acfa1441d283dacf9e6e545beb083b8bb0':
lavc: Edge emulation with dst/src linesize
Conflicts:
libavcodec/cavs.c
libavcodec/h264.c
libavcodec/hevc.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/rv34.c
libavcodec/svq3.c
libavcodec/vc1dec.c
libavcodec/videodsp.h
libavcodec/videodsp_template.c
libavcodec/vp3.c
libavcodec/vp8.c
libavcodec/wmv2.c
libavcodec/x86/videodsp.asm
libavcodec/x86/videodsp_init.c
Changes to the asm are not merged, they are left for volunteers or
in their absence for later.
The changes this merge introduces are reordering of the function
arguments
See: face578d56
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-15 15:07:10 +01:00
Kostya Shishkov
bae14f38d9
mpegvideo: Fix swapping of UV planes for VCR2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-14 07:33:59 +01:00
Michael Niedermayer
5231eecdaf
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
Deprecate obsolete XvMC hardware decoding support
Conflicts:
libavcodec/mpeg12.c
libavcodec/mpeg12dec.c
libavcodec/mpegvideo.c
libavcodec/options_table.h
libavutil/pixdesc.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-14 03:26:35 +01:00
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.
2013-11-13 21:07:45 +01:00
Diego Biurrun
c7f7bfc9e3
Remove all Alpha architecture optimizations
...
Alpha has been end-of-lifed and no more test machines are available.
2013-11-13 20:45:49 +01:00
Michael Niedermayer
6e87dfb589
mpegvideo: reduce whitespace differences to libav
...
This excludes many changes that worsen readability
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-03 01:24:01 +01:00
Michael Niedermayer
c6c03dfdf1
Merge commit 'ccc71298456d97f64f539e303c771d04dcb33c53'
...
* commit 'ccc71298456d97f64f539e303c771d04dcb33c53':
lavc: deprecate FF_DEBUG_MV and remove all traces of its use
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-01 18:22:42 +01:00
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.
2013-10-31 20:21:13 +01:00
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>
2013-10-23 10:49:48 +02:00
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.
2013-09-28 20:28:08 -04:00
Ronald S. Bultje
c341f734e5
Convert multiplier for MV from int to ptrdiff_t.
...
This prevents emulated_edge_mc from not undoing mvy*stride-related
integer overflows.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-28 11:28:09 +02:00
Michael Niedermayer
dcc7686ae7
avcodec/mpegvideo: drop emu edge check from chroma_4mv_motion_lowres()
...
This is in line with the other functions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 17:15:24 +02:00
Michael Niedermayer
0ebc372856
Merge commit '5f24fe82e5fcf227abb5ebf62aa9bc246fda8c0d'
...
* commit '5f24fe82e5fcf227abb5ebf62aa9bc246fda8c0d':
mpegvideo: Initialize chroma_*_shift and codec_tag even if the size is 0
Conflicts:
libavcodec/mpegvideo.c
The chroma_*_shift and codec_tag code was not under a size!=0 check in ffmpeg
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-24 14:55:14 +02:00
Martin Storsjö
5f24fe82e5
mpegvideo: Initialize chroma_*_shift and codec_tag even if the size is 0
...
This fixes breakage in a few fate tests on certain setups
(that for some reason didn't break on OS X) after the previous
commit (8812a8057
). Currently, some video streams are initialized
in ff_MPV_common_init with width/height set at 0 and only changed
to a proper video size with ff_MPV_common_frame_size_change later.
The breakage was diagnosed by Anton Khirnov.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-24 14:02:23 +03:00
Michael Niedermayer
4f5454d201
avcodec/mpegvideo: reduce log level for messages about allocating frames.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 14:20:59 +02:00
Michael Niedermayer
259292f9d4
avcodec/mpegvideo: Dont incorrectly warn about missing keyframes
...
Files starting with B frames in presentation order generated the
"no keyframe" warning before this change.
Based on patch by: Robert Krüger <krueger@lesspain.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 01:45:11 +02:00
Michael Niedermayer
8251529ff3
Merge commit '70dd8892bf00923af838756dfbb356a9b1e4e40d'
...
* commit '70dd8892bf00923af838756dfbb356a9b1e4e40d':
mpegvideo: Replace arch initialization ifdeffery by standard conditionals
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 14:53:44 +02:00
Diego Biurrun
70dd8892bf
mpegvideo: Replace arch initialization ifdeffery by standard conditionals
2013-08-28 23:59:24 +02:00
Michael Niedermayer
68b63a3432
mpegvideo: Use picture_ptr instead of picture in ff_mpeg_draw_horiz_band()
...
Fixes strides and issue with mplayer and mpeg2 field pictures
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-20 00:19:21 +02:00
Michael Niedermayer
a0c6c8e53e
Revert "Merge commit of 'vdpau: remove old-style decoders'"
...
This reverts commit bf36dc50ea
, reversing
changes made to b7fc2693c7
.
Conflicts:
libavcodec/h264.c
Keeping support for the old VDPAU API has been requested by our VDPAU maintainer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-17 22:17:49 +02:00
Michael Niedermayer
bf36dc50ea
Merge commit '578ea75a9e4ac56e0bbbbe668700be756aa699f8'
...
* commit '578ea75a9e4ac56e0bbbbe668700be756aa699f8':
vdpau: remove old-style decoders
Conflicts:
libavcodec/allcodecs.c
libavcodec/h263dec.c
libavcodec/h264.c
libavcodec/mpeg12dec.c
libavcodec/mpeg4videodec.c
libavcodec/vc1dec.c
libavcodec/vdpau.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-06 13:24:22 +02:00
Rémi Denis-Courmont
578ea75a9e
vdpau: remove old-style decoders
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-08-05 11:15:49 +02:00
Michael Niedermayer
5e763920a4
avcodec/mpegvideo: update disabled assert() to av_assert0()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-27 15:23:13 +02:00
Michael Niedermayer
205f423e28
libavcodec/mpegvideo: change some asserts to av_assert0()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-26 22:29:55 +02:00
Michael Niedermayer
c88bbc01eb
avcodec/mpegvideo: replace assert about interlaced EC by debug av_log()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-26 22:29:47 +02:00
Michael Niedermayer
104dfaadaa
dct_unquantize_h263_intra_c: fix assert condition
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Carl Eugen Hoyos
712ef25116
Avoid a null pointer dereference after oom on frame size change in mpegvideo.c.
...
Fixes ticket #2735 .
2013-06-30 23:45:37 +02:00
Michael Niedermayer
0abe923d20
mpegvideo: fix forgotten lowres op_index limits
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 19:55:27 +02:00
Michael Niedermayer
c2625c26c5
mpegvideo: implement ff_put_h264_chroma_mc1 & ff_avg_h264_chroma_mc2
...
These are needed for lowres 3
This may fix Ticket2538
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-29 19:48:03 +02:00
Michael Niedermayer
5f44f47b72
mpegvideo_enc: do not unreference frames before the code is done with them
...
Fixes Ticket2592
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-25 20:30:50 +02:00
Michael Niedermayer
1724123c65
Merge commit '3eae9b030cbbdc263f69834b791624613032d548'
...
* commit '3eae9b030cbbdc263f69834b791624613032d548':
mpegvideo: unref buffers in ff_mpeg_unref_picture on frame size changes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-23 10:25:25 +02:00
Janne Grunau
3eae9b030c
mpegvideo: unref buffers in ff_mpeg_unref_picture on frame size changes
...
ff_mpeg_unref_picture clears the flag indicating that the frame needs to
be reallocated after a frame size change. Since we have now reference
counted buffers we can unref the buffers immediately.
2013-05-22 15:40:12 +02:00
Michael Niedermayer
d61681f9e9
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: unref old current_picture before allocating a new one
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-20 12:07:17 +02:00
Janne Grunau
4b79668154
mpegvideo: unref old current_picture before allocating a new one
...
Allows decoding with only three frame buffers with frame reference
counting. Fixes VAAPI based decoding in vlc which uses only three
frame buffers for the mpegvideo-based codecs.
2013-05-19 23:02:35 +02:00
Jindrich Makovicka
259af1b923
mpegvideo: allocate sufficiently large scratch buffer for interlaced vid
...
MPV_decode_mb_internal needs 3 * 16 * linesize bytes of scratch buffer
For interlaced content, linesize is multiplied by two after the allocation
of the scratch buffer, and the dest_cr pointer ends past the buffer.
This patch makes ff_mpv_frame_size_alloc allocate a total of
(aligned line_size) * 2 * 16 * 3 bytes, which suffices even for the
interlaced case.
CC:libav-stable@libav.org
Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-17 07:49:05 +02:00
Michael Niedermayer
efc08e00cc
Merge commit 'b3ea76624ad1baab0b6bcc13f3f856be2f958110'
...
* commit 'b3ea76624ad1baab0b6bcc13f3f856be2f958110':
vf_aspect: use the name 's' for the pointer to the private context
Remove commented-out debug #define cruft
Conflicts:
libavcodec/4xm.c
libavcodec/dvdsubdec.c
libavcodec/ituh263dec.c
libavcodec/mpeg12.c
libavfilter/avfilter.c
libavfilter/vf_aspect.c
libavfilter/vf_fieldorder.c
libavformat/rtmpproto.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-16 09:56:43 +02:00
Michael Niedermayer
0d83b5722e
Merge commit '9cacdabd1c8cd257a942d8289349c37d992989b7'
...
* commit '9cacdabd1c8cd257a942d8289349c37d992989b7':
jpegls: cosmetics: Drop some unnecessary parentheses
mpegvideo: Remove commented-out PARANOID debug cruft
Conflicts:
libavcodec/jpegls.c
libavcodec/mpegvideo.c
libavcodec/x86/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-16 09:19:11 +02:00
Diego Biurrun
2832ea26f3
Remove commented-out debug #define cruft
2013-05-16 00:23:30 +02:00
Diego Biurrun
004b81c465
mpegvideo: Remove commented-out PARANOID debug cruft
2013-05-15 23:53:42 +02:00
Michael Niedermayer
c67bca2b5a
avcodec/mpegvideo: Fix edge emu with lowres
...
Fixes a few green artifacts at the top
Fixes rest of Ticket 2535
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 01:18:56 +02:00
Michael Niedermayer
bca50e5cd5
avcodec/mpegvideo: Fix block height for lowres 3 interlaced blocks
...
Fixes green trash
Fixes part of Ticket2535
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 01:17:45 +02:00
Michael Niedermayer
0aa095483d
Merge commit '6fee1b90ce3bf4fbdfde7016e0890057c9000487'
...
* commit '6fee1b90ce3bf4fbdfde7016e0890057c9000487':
avcodec: Add av_cold attributes to init functions missing them
Conflicts:
libavcodec/aacpsy.c
libavcodec/atrac3.c
libavcodec/dvdsubdec.c
libavcodec/ffv1.c
libavcodec/ffv1enc.c
libavcodec/h261enc.c
libavcodec/h264_parser.c
libavcodec/h264dsp.c
libavcodec/h264pred.c
libavcodec/libschroedingerenc.c
libavcodec/libxvid_rc.c
libavcodec/mpeg12.c
libavcodec/mpeg12enc.c
libavcodec/proresdsp.c
libavcodec/rangecoder.c
libavcodec/videodsp.c
libavcodec/x86/proresdsp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 11:34:29 +02:00
Diego Biurrun
6fee1b90ce
avcodec: Add av_cold attributes to init functions missing them
2013-05-04 21:09:45 +02:00
Michael Niedermayer
cae8f469fe
Merge commit '38282149b6ce8f4b8361e3b84542ba9aa8a1f32f'
...
* commit '38282149b6ce8f4b8361e3b84542ba9aa8a1f32f':
ppc: More consistent arch initialization
Conflicts:
libavcodec/fft.h
libavcodec/mpegaudiodsp.c
libavcodec/mpegaudiodsp.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-01 18:08:13 +02:00
Diego Biurrun
38282149b6
ppc: More consistent arch initialization
2013-04-30 12:19:45 +02:00
Michael Niedermayer
8d86cf4cfa
Merge commit 'feec9349d35b3a46d0c6a05e3b23626050b76a77'
...
* commit 'feec9349d35b3a46d0c6a05e3b23626050b76a77':
mpegvideo: unref cur/next/prev frames when flushing
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-24 10:11:34 +02:00
Hendrik Leppkes
feec9349d3
mpegvideo: unref cur/next/prev frames when flushing
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-04-23 19:11:59 +02:00
Michael Niedermayer
4824aea7af
avcodec/mpegvideo: change asserts to av_asserts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-20 21:31:19 +02:00
Ronald S. Bultje
f4fed5a2f9
mpegvideo: Use hpeldsp instead of dsputil for half-pel functions
...
This also converts vc1, since that is mpegvideo-based.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:21 +03:00
Michael Niedermayer
6ae03353de
mpegvideo: Make the table reallocation more robust.
...
This fixes out of array writes after resolution changes
No FFmpeg releases are known to be affected by this
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 02:11:34 +01:00
Michael Niedermayer
46c48d546d
mpegvideo: fix null pointer dereference on switching streams
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 21:54:36 +01:00
Michael Niedermayer
7b3ca7ae8b
mpegvideo/h264: drop period_since_free
...
This should not be needed anymore
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 19:27:32 +01:00
Michael Niedermayer
2cdedcbcea
Merge commit '75644335b907919057960716508477239c26fed4'
...
* commit '75644335b907919057960716508477239c26fed4':
lavc: Move start code finding to utils.c
Conflicts:
configure
libavcodec/mpegvideo.c
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:22:48 +01:00
Martin Storsjö
75644335b9
lavc: Move start code finding to utils.c
...
This allows dropping the mpegvideo dependency from a number of
components.
This also fixes standalone building of the h264 parser, which
was broken in 64e438697
.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:48:12 +02:00
Michael Niedermayer
f7fee8f700
Merge commit 'c3ebfcd6e1327ca7bbcaee822e593c2da6cfd352'
...
* commit 'c3ebfcd6e1327ca7bbcaee822e593c2da6cfd352':
mpegvideo: allocate hwaccel privdata after the frame buffer
h264: allocate hwaccel privdata after the frame buffer
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-20 11:57:28 +01:00
Michael Niedermayer
54b0bef390
Merge commit '4e70d66ded537cadd32dbd02a38c3d86a203c812'
...
* commit '4e70d66ded537cadd32dbd02a38c3d86a203c812':
mpegvideo: fix allocation of the hwaccel_picture_private data
lavc: update the doxy for avcodec_decode_{video,audio} wtih refcounting.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-20 11:43:29 +01:00
Hendrik Leppkes
c3ebfcd6e1
mpegvideo: allocate hwaccel privdata after the frame buffer
...
This ensures the hwaccel privdata does not leak when a frame buffer could
not be allocated (and toggle the assert when the frame is re-used).
Having no frame buffer available is quite common when using the DXVA2
hwaccel in situations where the DXVA2 renderer is being re-allocated, for
example when moving between displays.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-19 11:20:22 +01:00
Hendrik Leppkes
4e70d66ded
mpegvideo: fix allocation of the hwaccel_picture_private data
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-19 11:18:42 +01:00
Michael Niedermayer
64308941d4
mpegvideo: Fix exported qp table offest
...
Found-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 14:38:09 +01:00
Michael Niedermayer
df4517106a
Merge commit 'ee8704916de79158da8a48a9ea5be819e83d23ba'
...
* commit 'ee8704916de79158da8a48a9ea5be819e83d23ba':
mpegvideo: reindent
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 13:08:04 +01:00
Michael Niedermayer
f45fdb123f
Merge commit '19cac8e301419dcde31526d15196a952ddf2c4c7'
...
* commit '19cac8e301419dcde31526d15196a952ddf2c4c7':
mpegvideo: remove useless references to h264 and svq3
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 12:56:43 +01:00
Ronald S. Bultje
4ba5dbc0e4
mpegvideo: use hpeldsp instead of dsputil for half-pel functions.
...
This also converts vc1, since that is mpegvideo-based.
2013-03-13 03:58:00 +01:00
Michael Niedermayer
3c1326411d
Merge commit '37045e422903695e610cca6ecb753df643ab9380'
...
* commit '37045e422903695e610cca6ecb753df643ab9380':
mpegvideo: drop vismv code
Conflicts:
libavcodec/mpegvideo.c
vismv code works fine, and thus only the unused fields are droped
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 12:57:54 +01:00
Michael Niedermayer
53fd4f5594
avcodec: fix motion vector vissualization
...
was broken by the buffer ref stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 11:23:07 +01:00
Michael Niedermayer
6ae4372532
h264/mpegvideo: fix ff_print_debug_info2 arguments
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 11:06:35 +01:00
Michael Niedermayer
ee3c3dd523
ff_alloc_picture: free tables in case of dimension mismatches
...
Fixes memory corruption
In theory this should not be needed but its better to check at
one place than to hope 50 other places set the flags correctly
2013-03-12 03:23:55 +01:00
Michael Niedermayer
9e73f6d1f9
mpegvideo: dont allow last == current
...
this fixes deadlocks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 03:23:53 +01:00
Michael Niedermayer
80e9e63c94
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
...
* commit '759001c534287a96dc96d1e274665feb7059145d':
lavc decoders: work with refcounted frames.
Anton Khirnov (1):
lavc decoders: work with refcounted frames.
Clément Bœsch (47):
lavc/ansi: reset file
lavc/ansi: re-do refcounted frame changes from Anton
fraps: reset file
lavc/fraps: switch to refcounted frames
gifdec: reset file
lavc/gifdec: switch to refcounted frames
dsicinav: resolve conflicts
smc: resolve conflicts
zmbv: resolve conflicts
rpza: resolve conflicts
vble: resolve conflicts
xxan: resolve conflicts
targa: resolve conflicts
vmnc: resolve conflicts
utvideodec: resolve conflicts
tscc: resolve conflicts
ulti: resolve conflicts
ffv1dec: resolve conflicts
dnxhddec: resolve conflicts
v210dec: resolve conflicts
vp3: resolve conflicts
vcr1: resolve conflicts
v210x: resolve conflicts
wavpack: resolve conflicts
pngdec: fix compilation
roqvideodec: resolve conflicts
pictordec: resolve conflicts
mdec: resolve conflicts
tiertexseqv: resolve conflicts
smacker: resolve conflicts
vb: resolve conflicts
vqavideo: resolve conflicts
xl: resolve conflicts
tmv: resolve conflicts
vmdav: resolve conflicts
truemotion1: resolve conflicts
truemotion2: resolve conflicts
lcldec: fix compilation
libcelt_dec: fix compilation
qdrw: fix compilation
r210dec: fix compilation
rl2: fix compilation
wnv1: fix compilation
yop: fix compilation
tiff: resolve conflicts
interplayvideo: fix compilation
qpeg: resolve conflicts (FIXME/TESTME).
Hendrik Leppkes (33):
012v: convert to refcounted frames
8bps: fix compilation
8svx: resolve conflicts
4xm: resolve conflicts
aasc: resolve conflicts
bfi: fix compilation
aura: fix compilation
alsdec: resolve conflicts
avrndec: convert to refcounted frames
avuidec: convert to refcounted frames
bintext: convert to refcounted frames
cavsdec: resolve conflicts
brender_pix: convert to refcounted frames
cinepak: resolve conflicts
cinepak: avoid using AVFrame struct directly in private context
cljr: fix compilation
cpia: convert to refcounted frames
cscd: resolve conflicts
iff: resolve conflicts and do proper conversion to refcounted frames
4xm: fix reference frame handling
cyuv: fix compilation
dxa: fix compilation
eacmv: fix compilation
eamad: fix compilation
eatgv: fix compilation
escape124: remove unused variable.
escape130: convert to refcounted frames
evrcdec: convert to refcounted frames
exr: convert to refcounted frames
mvcdec: convert to refcounted frames
paf: properly free the frame data on decode close
sgirle: convert to refcounted frames
lavfi/moviesrc: use refcounted frames
Michael Niedermayer (56):
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
resolve conflicts in headers
motion_est: resolve conflict
mpeg4videodec: fix conflicts
dpcm conflict fix
dpx: fix conflicts
indeo3: resolve confilcts
kmvc: resolve conflicts
kmvc: resolve conflicts
h264: resolve conflicts
utils: resolve conflicts
rawdec: resolve conflcits
mpegvideo: resolve conflicts
svq1enc: resolve conflicts
mpegvideo: dont clear data, fix assertion failure on fate vsynth1 with threads
pthreads: resolve conflicts
frame_thread_encoder: simple compilefix not yet tested
snow: update to buffer refs
crytsalhd: fix compile
dirac: switch to new API
sonic: update to new API
svq1: resolve conflict, update to new API
ffwavesynth: update to new buffer API
g729: update to new API
indeo5: fix compile
j2kdec: update to new buffer API
linopencore-amr: fix compile
libvorbisdec: update to new API
loco: fix compile
paf: update to new API
proresdec: update to new API
vp56: update to new api / resolve conflicts
xface: convert to refcounted frames
xan: fix compile&fate
v408: update to ref counted buffers
v308: update to ref counted buffers
yuv4dec: update to ref counted buffers
y41p: update to ref counted frames
xbm: update to refcounted frames
targa_y216: update to refcounted buffers
qpeg: fix fate/crash
cdxl: fix fate
tscc: fix reget buffer useage
targa_y216dec: fix style
msmpeg4: fix fate
h264: ref_picture() copy fields that have been lost too
update_frame_pool: use channel field
h264: Put code that prevents deadlocks back
mpegvideo: dont allow last == current
wmalossless: fix buffer ref messup
ff_alloc_picture: free tables in case of dimension mismatches
h264: fix null pointer dereference and assertion failure
frame_thread_encoder: update to bufrefs
ec: fix used arrays
snowdec: fix off by 1 error in dimensions check
h264: disallow single unpaired fields as references of frames
Paul B Mahol (2):
lavc/vima: convert to refcounted frames
sanm: convert to refcounted frames
Conflicts:
libavcodec/4xm.c
libavcodec/8bps.c
libavcodec/8svx.c
libavcodec/aasc.c
libavcodec/alsdec.c
libavcodec/anm.c
libavcodec/ansi.c
libavcodec/avs.c
libavcodec/bethsoftvideo.c
libavcodec/bfi.c
libavcodec/c93.c
libavcodec/cavsdec.c
libavcodec/cdgraphics.c
libavcodec/cinepak.c
libavcodec/cljr.c
libavcodec/cscd.c
libavcodec/dnxhddec.c
libavcodec/dpcm.c
libavcodec/dpx.c
libavcodec/dsicinav.c
libavcodec/dvdec.c
libavcodec/dxa.c
libavcodec/eacmv.c
libavcodec/eamad.c
libavcodec/eatgq.c
libavcodec/eatgv.c
libavcodec/eatqi.c
libavcodec/error_resilience.c
libavcodec/escape124.c
libavcodec/ffv1.h
libavcodec/ffv1dec.c
libavcodec/flicvideo.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/g723_1.c
libavcodec/gifdec.c
libavcodec/h264.c
libavcodec/h264.h
libavcodec/h264_direct.c
libavcodec/h264_loopfilter.c
libavcodec/h264_refs.c
libavcodec/huffyuvdec.c
libavcodec/idcinvideo.c
libavcodec/iff.c
libavcodec/indeo2.c
libavcodec/indeo3.c
libavcodec/internal.h
libavcodec/interplayvideo.c
libavcodec/ivi_common.c
libavcodec/jvdec.c
libavcodec/kgv1dec.c
libavcodec/kmvc.c
libavcodec/lagarith.c
libavcodec/libopenjpegdec.c
libavcodec/mdec.c
libavcodec/mimic.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mmvideo.c
libavcodec/motion_est.c
libavcodec/motionpixels.c
libavcodec/mpc7.c
libavcodec/mpeg12.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/msrle.c
libavcodec/msvideo1.c
libavcodec/nuv.c
libavcodec/options_table.h
libavcodec/pcx.c
libavcodec/pictordec.c
libavcodec/pngdec.c
libavcodec/pnmdec.c
libavcodec/pthread.c
libavcodec/qpeg.c
libavcodec/qtrle.c
libavcodec/r210dec.c
libavcodec/rawdec.c
libavcodec/roqvideodec.c
libavcodec/rpza.c
libavcodec/smacker.c
libavcodec/smc.c
libavcodec/svq1dec.c
libavcodec/svq1enc.c
libavcodec/targa.c
libavcodec/tiertexseqv.c
libavcodec/tiff.c
libavcodec/tmv.c
libavcodec/truemotion1.c
libavcodec/truemotion2.c
libavcodec/tscc.c
libavcodec/ulti.c
libavcodec/utils.c
libavcodec/utvideodec.c
libavcodec/v210dec.c
libavcodec/v210x.c
libavcodec/vb.c
libavcodec/vble.c
libavcodec/vcr1.c
libavcodec/vmdav.c
libavcodec/vmnc.c
libavcodec/vp3.c
libavcodec/vp56.c
libavcodec/vp56.h
libavcodec/vp6.c
libavcodec/vqavideo.c
libavcodec/wavpack.c
libavcodec/xl.c
libavcodec/xxan.c
libavcodec/zmbv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 03:23:28 +01:00
Anton Khirnov
ee8704916d
mpegvideo: reindent
2013-03-11 18:24:16 +01:00
Anton Khirnov
19cac8e301
mpegvideo: remove useless references to h264 and svq3
...
The h264 decoder does not use mpegvideo anymore. The svq3 decoder only
uses ff_draw_horiz_band().
2013-03-11 18:24:06 +01:00
Michael Niedermayer
fee484edaf
Merge commit 'ad0c9f2d5d81e22207c6ccecc426bf7306acc327'
...
* commit 'ad0c9f2d5d81e22207c6ccecc426bf7306acc327':
lavc: move AVFrame.hwaccel_picture_private to Picture.
Conflicts:
libavcodec/avcodec.h
libavcodec/mpegvideo.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 19:35:37 +01:00
Michael Niedermayer
43c6c18690
Merge commit 'd88738e4038b162708dc2f5342e10c1694edfd89'
...
* commit 'd88738e4038b162708dc2f5342e10c1694edfd89':
mpegvideo: Conditionally build error_resilience bits
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-08 15:17:25 +01:00
Anton Khirnov
37045e4229
mpegvideo: drop vismv code
...
It has been broken for over a year without anyone complaining or
noticing, thus proving that nobody ever uses it.
2013-03-08 07:40:41 +01:00
Anton Khirnov
759001c534
lavc decoders: work with refcounted frames.
2013-03-08 07:38:30 +01:00
Anton Khirnov
ad0c9f2d5d
lavc: move AVFrame.hwaccel_picture_private to Picture.
...
This field is private and should not be present in a public struct. It
is only used in DXVA with mpegvideo-based decoders currently.
2013-03-08 07:36:01 +01:00
Martin Storsjö
d88738e403
mpegvideo: Conditionally build error_resilience bits
...
This breaks the dependency of mpegvideo on error_resilience allowing
compilation of components that depend on the former w/o the latter.
2013-03-07 15:04:49 +01:00
Ronald S. Bultje
8d061989dd
lavc: Split out ff_hwaccel_pixfmt_list_420[] over individual codecs
...
Not all hwaccels implement all codecs, so using one single list for
multiple such codecs means some codecs will be represented in the list,
even though they don't actually handle that codec. Copying specific
lists in each codec fixes that.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-06 21:18:50 +02:00
Michael Niedermayer
a3a97129e7
mpegvideo: make ff_print_debug_info independant of mpegvideo
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-19 02:46:05 +01:00
Ronald S. Bultje
e2789d3e33
split out ff_hwaccel_pixfmt_list_420[] over individual codecs.
...
Not all hwaccels implement all codecs, so using one single list for
multiple such codecs means some codecs will be represented in the list,
even though they don't actually handle that codec. Copying specific
lists in each codec fixes that.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-18 21:44:22 +01:00
Michael Niedermayer
ddbbfd95be
Merge commit '1d0feb5d1ac04d187b335f0e8d411c9f40b3a885'
...
* commit '1d0feb5d1ac04d187b335f0e8d411c9f40b3a885':
mpegvideo: split ff_draw_horiz_band().
Conflicts:
libavcodec/vc1dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-16 19:00:39 +01:00
Michael Niedermayer
1fad547cef
Merge commit '54974c62982ae827becdbdb9b620b7ba75d079a0'
...
* commit '54974c62982ae827becdbdb9b620b7ba75d079a0':
error_resilience: decouple ER from MpegEncContext
Conflicts:
libavcodec/error_resilience.c
libavcodec/h263dec.c
libavcodec/h264.c
libavcodec/mpegvideo.c
libavcodec/vc1dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-16 18:54:56 +01:00
Anton Khirnov
1d0feb5d1a
mpegvideo: split ff_draw_horiz_band().
...
Split out dependency on MpegEncContext.
2013-02-15 16:10:19 +01:00
Anton Khirnov
54974c6298
error_resilience: decouple ER from MpegEncContext
2013-02-15 16:10:11 +01:00
Michael Niedermayer
55151aa101
Merge commit '0b016eb99d38738e2c53e36549a4732a0f863b2e'
...
* commit '0b016eb99d38738e2c53e36549a4732a0f863b2e':
dsputil: Move ff_block_permute to mpegvideo_enc
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-09 11:44:46 +01:00
Diego Biurrun
0b016eb99d
dsputil: Move ff_block_permute to mpegvideo_enc
2013-02-07 22:05:25 +01:00
Michael Niedermayer
c7002e3d3d
Merge commit '12b54a1f39fee22fa0399825ae47a43e60bad4c5'
...
* commit '12b54a1f39fee22fa0399825ae47a43e60bad4c5':
mpegvideo: remove an unused function parameter
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-07 14:28:30 +01:00
Michael Niedermayer
c4e394e460
Merge commit '79dad2a932534d1155079f937649e099f9e5cc27'
...
* commit '79dad2a932534d1155079f937649e099f9e5cc27':
dsputil: Separate h264chroma
Conflicts:
libavcodec/dsputil_template.c
libavcodec/ppc/dsputil_ppc.c
libavcodec/vc1dec.c
libavcodec/vc1dsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-07 13:09:35 +01:00
Anton Khirnov
12b54a1f39
mpegvideo: remove an unused function parameter
2013-02-06 21:48:48 +01:00
Michael Niedermayer
78dc4cb26d
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: initialize dummy reference frames.
Conflicts:
libavcodec/mpegvideo.c
tests/ref/fate/filter-yadif-mode1
The luma init is left at 0x80 as it was previously, and tested and
working since a long time. Its also mandated to be 0x80 by at least
one specification. Cases that need different values already had
code in place to handle them.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-06 16:59:32 +01:00
Anton Khirnov
293065bdb5
mpegvideo: initialize dummy reference frames.
...
Do not rely on get_buffer initializing them.
Changes yadif tests (off by one in one border pixel), because yadif
reads from those uninitialized lines.
2013-02-06 10:21:52 +01:00
Michael Niedermayer
f5c0b9aa6f
Merge commit '96753bd00d6d4046db6818c0aadc21bf2a11d77b'
...
* commit '96753bd00d6d4046db6818c0aadc21bf2a11d77b':
dsputil: x86: Correct the number of registers used in put_no_rnd_pixels16_l2
dsputil: add missing HAVE_YASM guard
hwaccel: do not offer unsupported pixel formats
vdpau: add missing pixel format for H.264
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-27 16:30:01 +01:00
Rémi Denis-Courmont
78bc4d69eb
hwaccel: do not offer unsupported pixel formats
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-27 07:03:22 +01:00
Michael Niedermayer
ac8987591f
Merge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'
...
* commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f':
Drop DCTELEM typedef
Conflicts:
libavcodec/alpha/dsputil_alpha.h
libavcodec/alpha/motion_est_alpha.c
libavcodec/arm/dsputil_init_armv6.c
libavcodec/bfin/dsputil_bfin.h
libavcodec/bfin/pixels_bfin.S
libavcodec/cavs.c
libavcodec/cavsdec.c
libavcodec/dct-test.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/dsputil_template.c
libavcodec/eamad.c
libavcodec/h264_cavlc.c
libavcodec/h264idct_template.c
libavcodec/mpeg12.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/ppc/dsputil_altivec.c
libavcodec/proresdsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-23 17:44:56 +01:00
Diego Biurrun
88bd7fdc82
Drop DCTELEM typedef
...
It does not help as an abstraction and adds dsputil dependencies.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2013-01-22 18:32:56 -08:00
Michael Niedermayer
cf061a9c3b
Merge commit 'aeaf268e52fc11c1f64914a319e0edddf1346d6a'
...
* commit 'aeaf268e52fc11c1f64914a319e0edddf1346d6a':
vp3: integrate clear_blocks with idct of previous block.
mpegvideo: fix loop condition in draw_line()
dvdsubdec: parse the size from the extradata
Conflicts:
libavcodec/dvdsubdec.c
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-20 13:57:10 +01:00
Xi Wang
992b031838
mpegvideo: fix loop condition in draw_line()
...
The loop condition `x = ex' is incorrect. It should be `x <= ex'.
This bug was introduced in commit c65dfac4
"mpegvideo.c: K&R formatting
and cosmetics."
CC:libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-19 22:20:43 +01:00
Michael Niedermayer
e1d7d4bd13
mpegvideo: reset context state on failed thread update.
...
Fixes assertion failure
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-17 23:43:35 +01:00
Michael Niedermayer
8ac8f04993
mpegvideo: Fix long standing race condition with frame threads
...
Since resolution change support this also was exploitable, which is
how it was found.
Fixes read after free and out of array reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-15 05:34:37 +01:00
Michael Niedermayer
41bdef1d39
Merge commit '200e8ac92007bc2fe30da05d3bd00ab620842a6b'
...
* commit '200e8ac92007bc2fe30da05d3bd00ab620842a6b':
vdpau: Add MPEG-4 decoding via hwaccel infrastructure
vdpau: Add MPEG-1/2 decoding via hwaccel infrastructure
Conflicts:
configure
libavcodec/Makefile
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-14 13:48:30 +01:00
Rémi Denis-Courmont
aaf9d0e8f3
vdpau: Add MPEG-1/2 decoding via hwaccel infrastructure
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-01-13 14:53:47 +01:00
Michael Niedermayer
d9226b3717
mpegvideo: dont leave stale pointers in next/last picture
...
Fixes out of array reads
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-12 04:46:08 +01:00
Michael Niedermayer
39d178806d
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: initialize videodsp with correct pixel depth
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-26 15:19:35 +01:00
Janne Grunau
1f4ea4e068
mpegvideo: initialize videodsp with correct pixel depth
...
Fixes decoding of 9/10 bit per pixel h264 videos as reported in
https://bugzilla.libav.org/show_bug.cgi?id=404 .
2012-12-26 00:24:21 +01:00
Michael Niedermayer
a41bf09d9c
Merge commit '6906b19346ae8a330bfaa1c16ce535be10789723'
...
* commit '6906b19346ae8a330bfaa1c16ce535be10789723':
lavc: add missing files for arm
lavc: introduce VideoDSPContext
Conflicts:
configure
libavcodec/arm/dsputil_init_armv5te.c
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/dsputil_template.c
libavcodec/h264.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/x86/dsputil_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-21 17:18:43 +01:00
Ronald S. Bultje
8c53d39e7f
lavc: introduce VideoDSPContext
...
Move some functions from dsputil. The idea is that videodsp contains
functions that are useful for a large and varied set of video decoders.
Currently, it contains emulated_edge_mc() and prefetch().
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-20 13:40:45 +01:00
Michael Niedermayer
73db0bf1b0
mpegvideo: increase scratchpad sizes
...
These where reduced in f1d8763a02
and this change can cause out of array accesses.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-20 03:58:13 +01:00
Michael Niedermayer
7e90053822
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo: increase edge_emu_buffer size for VC1
lavc: merge latest x86inc.asm fixes with x264
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-20 02:51:35 +01:00
Michael Niedermayer
642a655f7d
Merge commit 'f1d8763a02b5fce9a7d9789e049d74a45b15e1e8'
...
* commit 'f1d8763a02b5fce9a7d9789e049d74a45b15e1e8':
mpegvideo: allocate scratch buffers after linesize is known
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-19 15:44:59 +01:00
Janne Grunau
45635885e4
mpegvideo: increase edge_emu_buffer size for VC1
...
The VC1 decoder uses edge_emu_buffer simultaneously for luma and chroma
and needs more space. That was not a problem before f1d8763a02
since the size for edge_emu_buffer was always calculated with 2 byte per
pixel since the linesize was not known.
Fixes occasionally fate errors in vc1_sa10143.
2012-12-19 07:57:22 +01:00
Janne Grunau
f1d8763a02
mpegvideo: allocate scratch buffers after linesize is known
...
Since we can't know which stride a custom get_buffer() implementation is
going to use we have to allocate this scratch buffers after the linesize
is known. It was pretty safe for 8 bit per pixel pixel formats since we
always allocated memory for up to 16 bits per pixel. It broke hoever
with cmdutis.c's alloc_buffer() and high pixel bit depth since it
allocated larger edges than mpegvideo expected.
Fixes fuzzed sample nasa-8s2.ts_s244342.
2012-12-18 19:48:30 +01:00
Michael Niedermayer
2f265d9087
Merge commit '6a27ae28f9bde981e85c82cf5bf42c5f43fb6f13'
...
* commit '6a27ae28f9bde981e85c82cf5bf42c5f43fb6f13':
mpegvideo: treat delayed pictures as used
Conflicts:
libavcodec/h264.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-14 15:36:37 +01:00
Janne Grunau
6a27ae28f9
mpegvideo: treat delayed pictures as used
...
This requires to move the avcodec_default_free_buffers() call to
ff_MPV_common_end() since otherwise delayed pictures would get freed
during a size change.
2012-12-13 21:02:42 +01:00
Michael Niedermayer
78ac7ee970
Merge commit '5d471b73d20616f5ac701ff62e5de49465cda264'
...
* commit '5d471b73d20616f5ac701ff62e5de49465cda264':
rtpdec: K&R formatting and spelling cosmetics
cosmetics: Fix dropable --> droppable typo
Conflicts:
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-10 01:27:10 +01:00