Age | Commit message (Collapse) | Author |
|
|
|
vpx_free if used contains this check. If replaced, well behaved free
will behave similarly.
Change-Id: I25483aaa8b39255b9a8cf388d6e5eaa20a908ae1
|
|
|
|
|
|
|
|
Eliminated unnecessary calculations. Very small change
to performance.
Change-Id: Ib7213d43c64e36955177c4d47950ff472266f822
|
|
In real-time mode, vp8_sad16x16 function is called heavily in
motion search part. Improvement of this function gives 1.2%
encoding performance gain (real-time mode, tulip clip).
Change-Id: I23c401fc40c061f732a9767e8d383737a179bd58
|
|
|
|
checks added to make sure that cpi->tplist
is freed correctly in vp8_dealloc_compressor_data
and vp8_alloc_compressor_data.
Change-Id: I66149dbbd25c958800ad94f4379d723191d9680d
|
|
Eliminated unnecessary calculations. Improved performance
by 10% on keyframes and 1.6% overall for the test clip used.
Change-Id: I87671b26af5e2cc439e81d0fee3b15c7cd2a3309
|
|
|
|
|
|
As mentioned in check-in "Improve motion search in real-time mode",
MV prediction calculation causes speed loss for speed 7 and above.
This change added a flag to turn off this calculation for speed>6
in real-time mode.
Change-Id: I9f4ae5a8bf449222d1784b54e7d315fc8347b2d1
|
|
|
|
|
|
|
|
Conflicts:
vp8/decoder/onyxd_int.h
Change-Id: Id9aa577f03e37b4f406ba3b593c3c4330812a49e
|
|
Applied better MV prediction in real-time mode, which improves
the encoding quality.
Used quarter-pixel search instead of iterative sub-pixel search
for speed >=5 to improve encoding performance.
Tests on the test set showed:
1. For speed=-5, quality improvement: 1.7% on AvgPSNR and 2.1%
on SSIM, performance improvement: 3.6% (This counts in the
performance lose caused by MV prediction calculation in "Improve
MV prediction in vp8_pick_inter_mode() for speed>3").
2. For speed=-8, quality improvement: 2.1% on AvgPSNR and 2.5%
on SSIM. but, 6.9% performance decrease because of MV prediction
calculation. This should be improved later.
Change-Id: I349a96c452bd691081d8c8e3e54419e7f477bebd
|
|
|
|
Created a new speed 1 which is in the middle of the old
speed 0 and speed 1. (for both quality and performance)
Change-Id: I4802133cdb43f359ca787646c090899679dd5d84
|
|
stride would not be calculated correctly for material
with odd sized frame widths.
Change-Id: I1710f6aef9ebb93d36249c9239c68c5baa9791f8
|
|
|
|
Use 0xFFF0 vice 240 (0xF0) for determining whether the sometimes
implicit bit 3 will be transmitted. This is consistent with the decoder
and encode_mvcomponent().
Change-Id: Ic1304d0ab56844bed8236edd1c5243a6767fc6b1
|
|
|
|
Change-Id: Icf4b692099d7d249fe3553852b1022b027b28e4b
|
|
|
|
Adds vp8_sub_pixel_variance16x16_armv6 function to encoder. Integrates
ARMv6 optimized bilinear interpolations from vp8/common/arm/armv6
and adds new assembly file for variance16x16 calculation.
- vp8_filter_block2d_bil_first_pass_armv6 (integrated)
- vp8_filter_block2d_bil_second_pass_armv6 (integrated)
- vp8_variance16x16_armv6 (new)
- bilinearfilter_arm.h (new)
Change-Id: I18a8331ce7d031ceedd6cd415ecacb0c8f3392db
|
|
Conflicts:
vp8/vp8_common.mk
Change-Id: I2094ddf20834c0b7dfe912feac6a79500bb8cce2
|
|
Improved performance of good quality, speed 0 (3% average)
with no average quality loss.
Change-Id: Ica34473f99bd74260eaebde6b132185e09e3c09d
|
|
it's difficult to mux the *_offsets.c files because of header conflicts.
make three instead, name them consistently and partititon the contents
to allow building them as required.
Change-Id: I8f9768c09279f934f44b6c5b0ec363f7943bb796
|
|
|
|
Conflicts:
vp8/encoder/encodeframe.c
vp8/encoder/ethreading.c
vp8/encoder/onyx_int.h
Change-Id: I1c562d2fe6e42c0d1d86f68c77c0e899066e02bd
|
|
make vp8_mv_pred() and vp8_cal_sad() available in real-time mode.
Change-Id: I71dbae241b486ba943458dcbae552ec4a51689d3
|
|
Change-Id: Ib487cbd7b214a6e3f13180bc0e5dcb792d8a406e
|
|
|
|
The encoder was not correctly catching transitions in the quantizer
deltas. If a delta_q was set, then the quantizer would be reinitialized
on every frame, but if they transitioned to 0, the quantizer would
not be reinitialized, leading to a encode-decode mismatch.
This bug was triggered by commit 999e155, which sets a Y2 delta Q
for very low base Q levels.
Change-Id: Ia6733464a55ee4ff2edbb82c0873980d345446f5
|
|
|
|
Change-Id: I242ca4854cb21f3d63efb979bd6ecc9f06f67f33
|
|
|
|
|
|
Whe auto keyframe insertion is enabled and conditions are right (scene change)
the encoder can decide to insert a key frame and does a re-encoding. This can
introduce extra latency. In RT mode we do not do the re-encoding of the current
frame but force the next frame to key frame.
Change-Id: I15c175fa845ac4c1a1f18bea3676e154669522a7
|
|
|
|
Change-Id: I585615400697b77c50dd05480616f868f2637aa7
|
|
instead of each time mode is tested.
Change-Id: Ief0f5586dafde54cc14d348dcecdacb182e7c1d5
|
|
Change-Id: I2bcef6a8e47f88542861fd1356631ca934e2a0e7
|
|
Then removed unnecessary code.
Change-Id: I142658815d843c9396b07881dbdd8d387c43c90e
|
|
Restructured function in order to eliminate the prediction
modes save/restore. Code cleanup also.
Change-Id: I816e3b910de64d0f0f0ddc2398805c63263191e8
|
|
Reduce the number of sync points by letting each thread
continue imediatly with a new MB row.
Better multicore scaling, improves performance by 5-20% on ARM multicore.
Change-Id: Ic97e4d1c4886a842c85dd3539a93cb217188ed1b
|
|
|
|
Change-Id: Id1d4bbe257cd126bb5f44347b896ddb659724f0b
|