Michael Niedermayer
547fce9585
avcodec/h264_slice: Clear table pointers to avoid stale pointers
...
Might fix Ticket3889
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
09450c5509
avcodec/h264: fix time_base and framerate
...
They are not just inverses of each other.
This should restore behavior to before the introduction of framerate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Anton Khirnov
7ea1b3472a
lavc: deprecate the use of AVCodecContext.time_base for decoding
...
When decoding, this field holds the inverse of the framerate that can be
written in the headers for some codecs. Using a field called 'time_base'
for this is very misleading, as there are no timestamps associated with
it. Furthermore, this field is used for a very different purpose during
encoding.
Add a new field, called 'framerate', to replace the use of time_base for
decoding.
10 years ago
Rémi Denis-Courmont
ce42316321
h264: Always invoke the get_format() callback
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years ago
Vittorio Giovara
e87f5e4e5f
h264: fully check cropping amount from sps
...
Even if sps.crop is true, the cropping amount may be zero.
Fixes a sample with a valid but broken container cropping.
10 years ago
Carl Eugen Hoyos
cc0acdbd68
lavc/h264_slice: Add a missing newline to an error message.
10 years ago
Michael Niedermayer
1fa35e4352
avcodec/h264_slice: More complete cleanup in h264_slice_header_init()
...
Fixes null pointer dereference
Fixes Ticket3873
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Diego Biurrun
835f798c7d
mpegvideo: cosmetics: Lowercase ugly uppercase MPV_ function name prefixes
11 years ago
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
11 years ago
Luca Barbato
2db953f846
h264: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
11 years ago
Justin Ruggles
9e500efdbe
Add av_image_check_sar() and use it to validate SAR
11 years ago
Stefano Sabatini
d381109ce8
lavc/h264_slice: clarify informational message in case of disabled slice multi-threaded decoding
...
Also suggest what can be done to workaround the limitation.
11 years ago
Michael Niedermayer
5bf5e6b1c0
avcodec/h264: Use named identifier for single thread fall-back return from ff_h264_decode_slice_header()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
7eae8cd870
avcodec/h264: fix frame skip code
...
Fixes Ticket3475
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9025072e6c
avcodec/h264_slice: support skipping loop filtering for non key frames
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9140d37af2
avcodec/h264: use the correct level for droping non intra frames
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
0f45e643cc
avcodec/h264_slice: fix macro ()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
67afcefb35
lavc: Add new VDA hwaccel
...
It leverages the new hwaccel 1.2 features:
- get_buffer2 is never called
- the internal context is automatically initialized/deinitialized
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
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
Anton Khirnov
5c1d7246cd
lavc: set AVCodecContext.hwaccel in ff_get_format()
...
This way each decoder does not have to do the same thing manually.
11 years ago
Anton Khirnov
632ad2248e
lavc: Add an internal wrapper around get_format()
...
It will be useful in the following commits.
11 years ago
Michael Niedermayer
7ef01a7878
avcodec/h264: mark recovery_cnt==0 frames as keyframes
...
Fixes Ticket3063
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
9d76dd952f
h264: drop commented out cruft
11 years ago
Carl Eugen Hoyos
ced0d6c14d
Use correct msvc type specifiers for ptrdiff_t and size_t.
...
The Windows runtime aborts if it finds %t or %z.
Fixes ticket #3472 .
Reviewed-by: Ronald Bultje
11 years ago
Janne Grunau
34c5a6660a
h264: codec reinit: remove statements without effect
...
avctx->coded_{height,width} will always equal h->{height,width} since
init_dimensions() does that explicitly, Size changes are detected by
changes in mb_{height,width} earlier and propagated through the
needs_reinit variable.
11 years ago
Michael Niedermayer
8710ee11d7
avcodec/h264: clear cur_pic structure instead of duplicating it in ff_h264_update_thread_context()
...
Fixes crash
Found-by: iive
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
bce2abc936
avcodec/h264: use ff_h264_set_erpic() instead of memset
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Luca Barbato
f51d0f39c0
h264: Split h264 slice decoding from nal decoding
11 years ago
Vittorio Giovara
e9a77f4bc0
h264: move macroblock decoding into its own file
11 years ago
Yogender Kumar Gupta
6f7ca1f55b
avcodec/h264: fix Lossless Decoding (Profile 244) for 8x8 Intra Prediction
...
This is limited to the case where x264_build = -1, to not break x264 decoding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
6102dda1d7
avcodec/h264: h264_set_erpic() clear destination
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
8e92ff2546
avcodec/h264: be more tolerant on what pixel format changes trigger reinits
...
Fixes Ticket3260
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
d24e9a99a4
h264 does not depend on mpegvideo any more
11 years ago
Vittorio Giovara
e0c16e4e32
mpegvideo: move mpegvideo formats-related defines to mpegutils.h
11 years ago
Vittorio Giovara
136034d86b
h264: Remove MotionEstContext and move the relevant fields to H264Context
...
Unused buffers scratchpad and temp have been dropped too.
11 years ago
Vittorio Giovara
e3c2d0f3d4
h264: Replace mpegvideo-specific MAX_THREADS by private define
11 years ago
Vittorio Giovara
5d1c2e53ab
h264: Replace mpegvideo-specific MAX_PICTURE_COUNT by private define
11 years ago
Vittorio Giovara
9b749c8274
h264: move relevant fields from Picture to H264Picture
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
1c79b1625d
h264: directly use frames in ff_h264_draw_horiz_band()
11 years ago
Diego Biurrun
f2408ec9d7
Give IDCT matrix transpose macro a more descriptive name
...
This also avoids a macro name clash and related warning on ARM.
11 years ago
Michael Niedermayer
4f4cc43fd8
avcodec/h264: allow mixing idr and non idr slices with frame threading again
...
This combination exists in the wild
Fixes Ticket3131
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
64bb64f704
avcodec/h264: fix droped frame handling also for threads > 1
...
Seems i mistakely tested just with threads=1
Fixes part of Ticket3386
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
b5005def8a
avcodec/h264: avoid using lost frames as references
...
Fixes Ticket3386
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
72e6913140
avcodec/h264: clear chroma planes when flags gray is used
...
Fixes Ticket3397
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Luca Barbato
d922c5a5fb
h264: Fix a typo from the previous commit
...
f777504f64
changed a - in +
CC: libav-stable@libav.org
11 years ago
Michael Niedermayer
8c55ff3933
avcodec/h264: use subsample factors of the used pixel format
...
Fixes out of array read
Fixes: 1cb91c36c4e55463f14aacb9bdf55b38-asan_heap-oob_106cbce_5617_cov_11212800_h264_mmx_chroma_intra_lf.mp4
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
76dd01ecd4
avcodec/h264: fix sign error
...
regression since f777504f64
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
f777504f64
h264: Lower bound check for slice offsets
...
And use the value from the specification.
Sample-Id: 00000451-google
Found-by: Mateusz j00ru Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Luca Barbato
fea6db064b
h264: informative error reporting in decode_slice_header()
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
11 years ago