Ronald S. Bultje
1e4a77d001
vp9: apply mv scaling workaround only when subsampling is enabled.
10 years ago
Ronald S. Bultje
dc96c0f9fc
vp9: read all 4x4 blocks in sub8x8 blocks individually with scalability.
10 years ago
Ronald S. Bultje
e12188e143
vp9: fix segmentation map referencing upon framesize change.
10 years ago
Ronald S. Bultje
23ba4538f9
vp9: add inter-frame profile 2/3 suport.
10 years ago
Ronald S. Bultje
b224b165cb
vp9: add keyframe profile 2/3 support.
10 years ago
Ronald S. Bultje
346ce5da19
vp9: parse profile 2/3 bitdepth in frame header.
10 years ago
Ronald S. Bultje
01e59d48ed
vp9: add profile 2/3 to exported profiles.
10 years ago
Ronald S. Bultje
ed68fccf76
vp9: error out if chroma subsampling changes between frames.
...
This can happen after an intra-only frame. For reference, see:
https://groups.google.com/a/webmproject.org/forum/#!msg/webm-discuss/zaoTxREZjq8/v5Enht87AhcJ
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
James Almer
079b7f6eac
vp9: add profile names
...
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
10 years ago
Ronald S. Bultje
2a7d7bef62
vp9: fix mask_edges and filter_plane_rows/cols() for 440.
10 years ago
Ronald S. Bultje
cf62f2d2d6
vp9: more specifically specify mask destination to mask_edges().
10 years ago
Ronald S. Bultje
e4f77e6239
vp9: don't create special u/v filter masks for 444.
...
This fixes vp91-2-04-yuv444.webm.
10 years ago
Ronald S. Bultje
afa9d00b43
vp9: merge uv loopfilter code into generic filter_plane_rows/cols().
10 years ago
Ronald S. Bultje
ba59a5ec42
vp9: split out loopfilter luma rows/cols functions from loopfilter_sb().
10 years ago
Ronald S. Bultje
844799b033
vp9: invert order of two conditions.
...
This makes it equal to row-based loopfilter code, and also makes the
chroma/luma code identical.
10 years ago
Ronald S. Bultje
d382cc0fad
vp9: use correct chroma subsampling for profile 1 inter block recon.
10 years ago
Ronald S. Bultje
d2aa6f65db
vp9: use correct chroma subsampling for profile 1 intra block recon.
10 years ago
Ronald S. Bultje
ed3e0cc715
vp9: take chroma subsampling into account when walking the block tree.
10 years ago
Ronald S. Bultje
6019002f0f
vp9: support non-420 chroma subsampling for profile 1 token decoding.
10 years ago
Ronald S. Bultje
2d0bea4719
vp9: increase buffer sizes for non-420 chroma subsamplings.
10 years ago
Ronald S. Bultje
a03b057ede
vp9: profile 1 header decoding.
10 years ago
Ronald S. Bultje
5935513c0e
vp9: fix show-existing-frames for multi-threading.
...
This also fixes intra-only MT failures (it was the same bug), see trac
4526 and 4527.
Tested-by: James Almer <jamrial@gmail.com>
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
640d878bc1
vp9: fix intraonly frame decoding.
10 years ago
Ronald S. Bultje
ed45edb2f6
vp9: use aligned size to write segmentation map into cache.
...
The unaligned size is not handled in setctx_2d(), causing edges of images
to have improper segmentation prediction, which causes visual artifacts
at image edges a few frames later.
10 years ago
Ronald S. Bultje
d9555adf06
vp9: set timestamps for show_existing_frame return images.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
c82e870c12
vp9: maintain lf_delta values if feature is turned off.
...
This is required if it's subsequently re-enabled with no value updates
(which means, use values that were previously set).
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
e8b4f6d6be
vp9: add support for resolution changes in inter frames.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
1fd1f58bd6
vp9: make above buffer pointer 32-byte aligned.
...
Fixes ticket #4383
Signed-off-by: James Almer <jamrial@gmail.com>
10 years ago
Michael Niedermayer
27191b82de
avcodec/vp9: Fix undefined shifts in decode_frame_header()
...
Found-by: Clang -fsanitize=shift
Reported-by: Thierry Foucu <tfoucu@google.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
0b69c53a61
vp9: included uses_2pass member in vp9_ref_frame().
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
4ba8f3273e
vp9: split segmentation map / mvpair references.
...
This prevents a memcpy if segmentation.update_map == false.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
efff3854f0
vp9: fix segmentation map retention with threading enabled.
...
Fixes ticket 4359.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Steve Lhomme
4851db80a4
fix VP9 packet decoder returning 0 instead of the used data size
...
See https://trac.videolan.org/vlc/ticket/14022#comment:6
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ronald S. Bultje
b6e1711223
vp9/x86: invert hu_ipred left array ordering.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Di Wu
162b521108
vp9: enable multi-thread decoding when refreshctx is equal to 0
...
In vp9_decode_frame function, ff_thread_finish_setup is not called
when refreshctx is equal to 0, and the next decoding thread can not
start work until the cunrrent frame has been decoded completely. So
ff_thread_finish_setup needs to be called to enable Multi-thread
decoding in this condition.
Signed-off-by: Di Wu <di1028.wu@samsung.com>
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
11 years ago
Vittorio Giovara
eddf95283f
vp9: initialize color space and range properties
11 years ago
Michael Niedermayer
2a85826e57
avcodec/vp9: Use av_malloc_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Ronald S. Bultje
14e3025518
vp9: ignore reference segmentation map if error_resilience flag is set.
...
Fixes ffvp9_fails_where_libvpx.succeeds.webm from ticket 3849.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Timothy Gu
9bc0410e4f
vp9: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
aab23f5ddd
avcodec/vp9: fix () in macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Luca Barbato
925c37874b
vp9: Read the frame size as unsigned
...
Sample-Id: 00001723-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years ago
Ronald S. Bultje
6d69f9f376
vp9: write uveob as 16-bit value for 16x16/32x32 transforms.
...
This fixes make fate-vp9-00-quantizer-01 THREADS=2.
11 years ago
James Almer
c7b089048d
vp9: use LOCAL_ALIGNED_32 for left/top intra_pred pointers
...
This is needed for future AVX2 implementations
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Ronald S. Bultje
21a0451167
vp9: split decode_coeff_b loop inside txsz branch.
...
The advantage of this is that the is32x32 division branch in
decode_coeffs_b is removed from the inner loop to outside the block
coef decoding loop in decode_coeffs. Also, it allows us to merge the
txsz branches from the block coef decoding loop, the context merge
and the context split.
11 years ago
Clément Bœsch
c333987876
vp9: fix compilation with !HAVE_FAST_64BIT.
...
Spotted-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
11 years ago
Ronald S. Bultje
0d4d223353
vp9: invert order in l[] intra prediction array.
...
The directional intra predictors either don't care about order (dc, h,
dc_left, tm), or they prefer inverted order (vr, dr, hd). This allows
more efficient SIMD implementations.
11 years ago
Ronald S. Bultje
37c6eac296
vp9: remove memset in loopfilter level setting loop.
...
Use same function for segmentation map writing also.
11 years ago
Ronald S. Bultje
45245e202e
vp9: coef decoding context-splat speedup.
11 years ago
Ronald S. Bultje
fccd7d81b6
vp9: decode_mode context optimizations.
11 years ago
Ronald S. Bultje
1dc8559e25
vp9: more aligned zeroes.
11 years ago