Age | Commit message (Collapse) | Author |
|
|
|
[NEON]
Optimize vp9_fht4x4, vp9_fht8x8, vp9_fht16x16 for NEON
Following change #3516278, the improvement for these functions is:
Before:
4.10% 0.75% vpxenc vpxenc [.] vp9_fht16x16_c
2.93% 0.65% vpxenc vpxenc [.] vp9_fht8x8_c
0.93% 0.77% vpxenc vpxenc [.] vp9_fht4x4_c
And after the patch:
0.69% 0.16% vpxenc vpxenc [.] vp9_fht16x16_neon
0.28% 0.28% vpxenc vpxenc [.] vp9_fht8x8_neon
0.54% 0.53% vpxenc vpxenc [.] vp9_fht4x4_neon
Bug: webm:1634
Change-Id: I6748a0c4e0cfaafa3eefdd4848d0ac3aab6900e4
|
|
Whether a block is skipped is handled by mi->skip. x->skip_block
is kept exclusively to verify that the quantize functions are not
called for skip blocks.
Finishes the cleanup in 13eed991f
Bug: libvpx:1612
Change-Id: I1598c3b682d3c5e6c57a15fa4cb5df2c65b3a58a
|
|
|
|
RTC sample encoder vpx_temporal_svc_encoder can take mask files as input
when ROI_MAP is set to 1.
Uses ROI and segmentation of vp9 to skip background encoding when
source_sad is low and the correspond block in previous frame is also
skipped.
Change-Id: I8590e6f9a88cecfa1d7f375d4cc480f0f2af87b6
|
|
this removes the burden from callers; the rtcd functions are left with a
mostly redundant (outside of tests) once() as top-level functions should
ensure their constraints are met
Change-Id: I5bdbcfa4671c6a1492cfe9c7d886c361c26caaa9
|
|
Bug: chromium:1257449
Change-Id: Ia9aafccc09b611521d4a7aedfe3723393a840c62
|
|
Bug: webm:1707
Change-Id: I2ff9e54a9c8ae535628c1c471a2d078652f49a31
|
|
Bug: webm:1707
Change-Id: I90a327b97d7158b65767fe3fbfd5f260030e17f5
|
|
Define LIBVPX_{ELF,MACHO} to simplify blocks.
Create new globalsym macro and include logic for PRIVATE.
BUG=webm:1679
Change-Id: I303ba1492a2813f685de51155ccef7e4831e1881
|
|
Chromium needs :function hidden and the space between the symbol and the
colon removed, at least for nasm. This matches x86inc.asm.
BUG=webm:1679
Change-Id: Ie47bb75d44d3130791639cbf4e2ebe019e2d686e
|
|
Fix several bugs to make the test pass.
1) Move update_frame_indexes() out of show_frame check.
2) Init coding_indexes[i] to -1 when key frame appears
3) Fix a bug in PostUpdateRefFrameInfo()
Change-Id: Ie7c70a1d460e5b89475a1aef77416fc9a88387e1
|
|
Change-Id: If41a1ea6ce0a2b8db3811f2fa8efcf16f97fa0bd
|
|
We will init and update current_video_frame and
current_frame_coding_index in the functions.
So it's easier to keep track of when the frame indexes are updated.
Change-Id: Id6ba46643f8923348bb4f81c5dd9ace553244057
|
|
|
|
The mutex lf_mutex will now be allocated and destroyed, making it easier
to verify if it has been inited before destruction.
BUG=webm:1662
Change-Id: I8169bea9e117bd615d68b8d02da98aeab570b53f
|
|
Change-Id: Id5c8b2d69a36d218ec04cd504868ce0efebf6b69
|
|
Change-Id: Ibc804f2420113010013c04dc005b02dfebdfda8a
|
|
Unit Test: VP9/InvalidFileTest
implicit conversion from type 'int' of value -65536 (32-bit, signed) to
type 'int16_t' (aka 'short') changed the value to 0 (16-bit, signed)
BUG=webm:1615
BUG=webm:1645
Change-Id: I4ce0c6abf8b5bf43ee43e958ad75d9fa28b23eee
|
|
Use MAX_INTER_REF_FRAMES wheneve it's suitable
Change-Id: I0fad94371a6600099313685cbe38faebb44178c4
|
|
|
|
Move vp9_nb_mvs_inconsistency to vp9_non_greedy_mv.c
This is to facilitate following SIMD optimizations.
Change-Id: I8eb8f820368928e0c4fb287e557cddf0bd2c763e
|
|
Remove the cb_priv, get_fb_cb, release_fb_cb, and int_frame_buffers
fields from the VP9_COMMON struct. They are not being used.
Change-Id: I235194aa8b315cd8ec9405bbba5feb3bee69f7e0
|
|
When frame height is not divisible by 16, the calculation of mb_rows in
postproc was wrong.
Change-Id: I69d108f1b8facdd5650b5b7928a0033b268530d2
|
|
Change-Id: I045b4cf625d428109688303ced5433d824df2790
|
|
This reverts commit 14208ab41e114f5779d106ae54a7cc8fd9d43820.
This causes test vectors failures with --row-mt=1.
BUG=webm:1617
Change-Id: Icb14bbbb6f38608a73dde0370ad874c0b1b0af8a
|
|
fixes a deadlock with an odd number of threads that go from < number of
tiles to >. the previous calculations were out of sync so going from
e.g., 8 tiles to 2 with 3 threads would result in scheduling only 2
workers, but thread_loop_filter_rows() would expect 3.
BUG=webm:1618
Change-Id: I78c967a8c3c927d929e13c949808a5ef443ebacb
|
|
Change-Id: I3d27286202e26ceecf4e551732b7d536d224d920
|
|
|
|
added files that are affected by clang-format version 7.
BUG=b/120815481
Change-Id: I40662ce962e4f4b1fcdf183b700f85cc5c0f9f82
|
|
This reverts commit aa04b6f9a7475e9d9457dfc5bf441faf15efc466.
It caused big regression on webrtc VP8 tests.
Change-Id: I937e769d133abeca62ba063e59a58b5c461f5b5e
|
|
Change-Id: If146bbf24f446f71be9147402e6d30533eee99d1
|
|
Change-Id: Id654a48d2fa40355552d7267e58461e6cc1c6998
|
|
|
|
|
|
Explicitly compare the block location against tile coordinate to
decide if intra prediction boundary is available. No coding stats
will be changed by this refactoring.
Change-Id: I80b3a131366bb2c5f8ea53a139ed6e9b0b7ddb68
|
|
BUG=webm:1606
Change-Id: I661485b860243c95b6450035dbac77b0dd4d9ff4
|
|
integer overflow when frame size too big.
BUG=webm:1603
Change-Id: Ifbb81b5fb6a2043d09d403e7c50ab8d7bf125dca
|
|
The SSE4_1 version of temporal filter does not distinguish between bd 10
and bd 12.
Speed up:
Function Level:
| !SS_X | SS_X
!SS_Y | 6.44X | 6.37X
SS_Y | 6.56X | 6.63X
Video Level:
2.5% speed up on basketballpass_240p over 150 frames on speed 1,
bitdepth 10, auto-alt-ref=1
BUG=webm:1591
Change-Id: I49aa2ed4acfe80a8d627038322de66cbe691296e
|
|
BUG=webm:1591
Change-Id: I926566ac1bf4bac8cb1ce1c6ded9ba940109283e
|
|
This changes the highbd version of temporal filter to information from
both luma and chroma planes.
Performance:
AVG_PSNR | OVR_PSNR | SSIM
-0.144% | -0.165% | -0.150%
The performance is evaluated on lowres_bd10.
Change-Id: I89d1bd46cd60c26d658b6a53aa63835e90d8e291
|
|
* changes:
Modify map read/write to sync logic in row_mt case
Revert "Revert "Add Tile-SB-Row based Multi-threading in Decoder""
|
|
Change-Id: Ib820f625e0b616fd57a2722ec3614b4fccf307f8
|
|
This adds a preliminary version of vp9_apply_temporal_filter in SSE4.1.
This patch merely adds the function and does not enable it yet.
Speed Up:
| ss_x=1 | ss_x=0 |
ss_y=1 | 19.80X | 19.04X |
ss_y=0 | 21.09X | 20.21X |
BUG=webm:1591
Change-Id: If590f1ccf1d0c6c3b47410541d54f2ce37d8305b
|
|
This reverts commit 06983668cf41f66765528db044419f954e5a5d64.
Fixes Visual Studio build errors introduced by earlier row mt commit
BUG=webm:1587
Change-Id: I792df86e8254cd6b2a511955b691af619a569cd0
|
|
|
|
The current unit tests for temporal filtering only tests single
channel version of temporal filter. Since VP9 currently uses both luma
and chroma channel information for temporal filtering on low bitdepth,
there is no unit case in this scenario.
This commit adds some basic unit tests to facilitate further development
on temporal filtering.
BUG=webm:1591
Change-Id: Id38ceba5305865d7148e9b2bc636acddae54d6c2
|
|
BUG=webm:1584
Change-Id: Ifdebf33356abcc6869f695d129165ba17e042dcd
|
|
Only used in a local array. Similar to lowbd iadst16 naming.
BUG=webm:1584
Change-Id: Ie07c2fb9599fb54fab221e5c0ccec0e95d69b893
|
|
Add rtcd headers and make local functions static.
BUG=webm:1584
Change-Id: Ic19aec1dc90703b0b89d1092baee487d0fd0cb4e
|