John Koleszar
eed2ce58e3
Merge "Fix counter of fixed keyframe distance"
2011-03-04 05:28:38 -08:00
Johann
6f5189c044
Merge "ARMv6 optimized half pixel variance calculations"
2011-03-02 05:48:46 -08:00
Yunqing Wang
cfaee9f7c6
Merge "Add prefetch before variance calculation"
2011-02-28 11:42:28 -08:00
Scott LaVarnway
3e6d476ac3
Merge "Avoid double copying of key frames into alt and golden buffer"
2011-02-28 10:16:33 -08:00
Yunqing Wang
d96ba65a23
Add prefetch before variance calculation
...
This improved encoding performance by 0.5% (good, speed 1) to
1.5% (good, speed 5).
Change-Id: I843d72a0d68a90b5f694adf770943e4a4618f50e
2011-02-28 11:25:55 -05:00
Johann
31dab574cc
Merge "Remove a second check for invalid ptr in vp8_get_compressed_data"
2011-02-25 11:44:18 -08:00
Johann
e4fa638653
Merge "Remove temporal alt ref from realtime only build"
2011-02-25 06:55:17 -08:00
Johann
1fae7018a8
Merge "Handle mem allocation failure in vp8e_init"
2011-02-25 06:55:10 -08:00
Attila Nagy
d8fc974ac0
Avoid double copying of key frames into alt and golden buffer
...
Change-Id: I726976a297a593a35ed6cba3c660e372562f7b27
2011-02-25 09:03:16 +02:00
Attila Nagy
6da2018789
Remove a second check for invalid ptr in vp8_get_compressed_data
...
Check is done first when function si entered.
Change-Id: Ief0d0cbd4860aaf492b78728f8d22f24029b1174
2011-02-25 08:41:13 +02:00
Scott LaVarnway
861175ef00
Removed vp8_block2type
...
and used defines instead.
Change-Id: Idb56e0295d004793f406dfd2d8d8c546aad62e03
2011-02-24 14:35:18 -05:00
Scott LaVarnway
d53492bba4
Merge "Revisited rd_pick_intra4x4block"
2011-02-24 11:25:21 -08:00
Scott LaVarnway
658454a04c
Revisited rd_pick_intra4x4block
...
Removed unnecessary copies. No noticeable speed gains.
Change-Id: I996c50c23fedd06d54ee7a3e762cbf559cc4a9d1
2011-02-24 13:31:47 -05:00
Paul Wilkins
b862c108dd
Overflow of frame error accumulators.
...
This fixes an overflow problem in the frame error accumulators.
The overflow condition is extreme but did trigger when Frank B.
coded some high motion interlaced HD content.
The observed effect was a catastrophic breakdown of the rate
control leading to massive undershoot and poor bit allocation.
All the error values should really be unsigned but I will look at this
separately.
Change-Id: I9745f5c5ca2783620426b66b568b2088b579151f
2011-02-24 15:49:41 +00:00
Tero Rintaluoma
8ae92aef66
ARMv6 optimized half pixel variance calculations
...
Adds following ARMv6 optimized functions to the encoder:
- vp8_variance_halfpixvar16x16_h_armv6
- vp8_variance_halfpixvar16x16_v_armv6
- vp8_variance_halfpixvar16x16_hv_armv6
Change-Id: I1e9c2af7acd2a51b72b3845beecd990db4bebd29
2011-02-23 13:27:27 +02:00
Attila Nagy
e6db21ecc4
Handle mem allocation failure in vp8e_init
...
Change-Id: I0d0445c57eb0889082f83de1948852d57b38fefb
2011-02-23 12:36:03 +02:00
Attila Nagy
7af0d906e3
Remove temporal alt ref from realtime only build
...
It is not used in realtime mode. Reduces memory footprint.
Change-Id: I7f163225762368df5457cfd413050161d3704a3f
2011-02-22 12:53:32 +02:00
Johann
945dad277d
Revert "use unaligned load"
...
This reverts commit f50f2fd2a7
.
Change Ib7506e3e aligns the buffer
Change-Id: Ie0f8bd3e57cfdfef81d39638a1451458ebbae2e0
2011-02-18 10:23:02 -05:00
John Koleszar
c764c2a20f
Merge "clean up unused files"
2011-02-18 06:33:05 -08:00
John Koleszar
3ed8fe8778
remove unused vp8_predict_dc function
...
Change-Id: I64fa47889c54cfed094a674c49ef0996d49bdd42
2011-02-18 09:12:20 -05:00
John Koleszar
cbf923b12c
clean up unused files
...
Removed a number of files that were unused or little-used.
Change-Id: If9ae5e5b11390077581a9a879e8a0defe709f5da
2011-02-18 09:09:49 -05:00
John Koleszar
d371ca93e5
cosmetic: remove unnecessary scope
...
Clean up some unnecessary scoping around pick_filter_level.
Change-Id: Ic57fa33e3fcae37fe6beae977e5743783399d5af
2011-02-18 08:46:07 -05:00
John Koleszar
597d02b508
Merge "Dont pick encoder filter level when loopfilter is disabled."
2011-02-18 05:26:23 -08:00
Attila Nagy
fb5a692d27
Reinitialize quantizer only when any delta is changing
...
No need to reinitialize for base Q changes.
Change-Id: Ie76ec21dd3c5582d5183dbed75ed73a1eed3e291
2011-02-18 14:23:37 +02:00
Attila Nagy
c6ef75690f
Dont pick encoder filter level when loopfilter is disabled.
...
Change-Id: I58154faf4f3ece24f9927a5c3ab7e830e0887fb6
2011-02-18 08:53:00 +02:00
John Koleszar
b2ae57f1b6
Merge "Use endian-neutral bitstream packing/unpacking"
2011-02-17 12:34:16 -08:00
John Koleszar
562f1470ce
Use endian-neutral bitstream packing/unpacking
...
Eliminate unnecessary checks on target endianness and associated
macros.
Change-Id: I1d4e6a9dcee9bfc8940c8196838d31ed31b0e4aa
2011-02-17 15:20:53 -05:00
John Koleszar
ac10665ad8
Merge "Removed unused vp8_recon_intra4x4mb function"
2011-02-17 11:30:13 -08:00
Scott LaVarnway
07f7b66fae
Removed unused vp8_recon_intra4x4mb function
...
Change-Id: I4a328ce152d9dbe6b0d1606d1b523e8e7bfb468e
2011-02-17 13:34:38 -05:00
John Koleszar
c351aa7f1b
Merge "Fix relative include paths"
2011-02-17 04:13:44 -08:00
Yunqing Wang
da9402fbf6
Merge "Allocate source buffers to be multiples of 16"
2011-02-16 11:35:06 -08:00
Yunqing Wang
da227b901d
Allocate source buffers to be multiples of 16
...
Currently, when the video frame width is not multiples of 16, the
source buffer has a stride of non-multiples of 16, which forces
an unaligned load in SAD function and hurts the performance. To
avoid that, this change allocates source buffers to be multiples
of 16.
Change-Id: Ib7506e3eb2cea06657d56be5a899f38dfe3eeb39
2011-02-16 12:57:17 -05:00
Johann
0c2cfff9b0
Merge "ARMv6 optimized sad16x16"
2011-02-16 05:22:38 -08:00
James Zern
0030303b69
Remove redundant ptr checks in calls to vpx_free
...
vpx_free if used contains this check. If replaced, well behaved free
will behave similarly.
Change-Id: I25483aaa8b39255b9a8cf388d6e5eaa20a908ae1
2011-02-15 12:43:35 -08:00
Yunqing Wang
7725a7eb56
Merge "Improve vp8_sad16x16_sse3 function"
2011-02-14 14:09:25 -08:00
Yaowu Xu
27dad21548
Merge "Improved vp8_rd_pick_intra_mbuv_mode"
2011-02-14 13:58:12 -08:00
Scott LaVarnway
94d4fee08f
Improved vp8_rd_pick_intra_mbuv_mode
...
Eliminated unnecessary calculations. Very small change
to performance.
Change-Id: Ib7213d43c64e36955177c4d47950ff472266f822
2011-02-14 16:34:33 -05:00
Yunqing Wang
2debd5b5f7
Improve vp8_sad16x16_sse3 function
...
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
2011-02-14 16:23:49 -05:00
Yaowu Xu
404e998eb7
Merge "mem leak fix for cpi->tplist"
2011-02-14 11:29:22 -08:00
James Berry
d3dfcde0f7
mem leak fix for cpi->tplist
...
checks added to make sure that cpi->tplist
is freed correctly in vp8_dealloc_compressor_data
and vp8_alloc_compressor_data.
Change-Id: I66149dbbd25c958800ad94f4379d723191d9680d
2011-02-14 14:02:52 -05:00
Scott LaVarnway
d419b93e3e
Improved rd_pick_intra4x4block
...
Eliminated unnecessary calculations. Improved performance
by 10% on keyframes and 1.6% overall for the test clip used.
Change-Id: I87671b26af5e2cc439e81d0fee3b15c7cd2a3309
2011-02-14 13:32:58 -05:00
Johann
0ff10bb1f7
Merge "remove assembly detokenizer"
2011-02-14 05:10:16 -08:00
Johann
bb6bcbccda
remove assembly detokenizer
...
hasn't been kept up to date. remove it to avoid confusion.
Change-Id: I52ffde19b59fec5c7a381299ca2e85cb38330be7
2011-02-11 11:09:00 -05:00
Yunqing Wang
353246bd60
Merge "Add improved_mv_pred flag in real-time mode"
2011-02-11 07:20:17 -08:00
Yunqing Wang
9d0b2cbbce
Add improved_mv_pred flag in real-time mode
...
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
2011-02-11 09:59:41 -05:00
Tero Rintaluoma
1ef86980b9
ARMv6 optimized sad16x16
...
Adds a new ARMv6 optimized function vp8_sad16x16_armv6 to encoder.
Change-Id: Ibbd7edb8b25cb7a5b522d391b1e9a690fe150e57
2011-02-11 11:14:07 +02:00
Yaowu Xu
4f8a166058
Merge "Redefining good quality speed settings"
2011-02-10 21:38:19 -08:00
Yunqing Wang
6f53e59641
Merge "Improve motion search in real-time mode"
2011-02-10 12:42:44 -08:00
John Koleszar
02321de0f2
Fix relative include paths
...
Allow compiling without adding vp8/{common,encoder,decoder} to the
include paths.
Change-Id: Ifeb5dac351cdfadcd659736f5158b315a0030b6c
2011-02-10 15:09:44 -05:00
Yunqing Wang
41e6eceb28
Improve motion search in real-time mode
...
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
2011-02-10 13:40:24 -05:00