summaryrefslogtreecommitdiff
path: root/vp8
AgeCommit message (Collapse)Author
2010-12-14Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: Ic88e9b2fcf1dcb2852a7205bcda3f181103f5612
2010-12-13Merge "remove unused temporal preproc code"John Koleszar
2010-12-13Merge "Reduce size of TOKENEXTRA struct"John Koleszar
2010-12-13remove unused temporal preproc codeJohn Koleszar
This code is unused, as the current preproc implementation uses the same spatial filter that postproc uses. Change-Id: Ia06d5664917d67283f279e2480016bebed602ea7
2010-12-13Reduce size of TOKENEXTRA structJohn Koleszar
Change the size of structure elements to reduce memory utilization. Removed the 'section' member entirely, as it is set but never read. Change-Id: Iad043830392fb4168cb3cd6075fb0eb70c7f691c
2010-12-11Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: Ibbe41ff2356aa8583c728e9ab1b0814958a51752
2010-12-10fix a bug in multithreaded encoding with active_map enabledYaowu Xu
Added the initialization of the pointer to active map. Also added the same logic for cyclic refresh in mbrow encoding threads. Change-Id: Ic48d0849dc706b27fba72d07dcc498075725663d
2010-12-10Merge "vp8 fast quantizer sse2 optimizations for eob."Fritz Koenig
2010-12-10Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: Iada4d917df4af42b16404e1b54b30ba2ca74df39
2010-12-09vp8 fast quantizer sse2 optimizations for eob.Fritz Koenig
Changed the end of block computation to use pmaxw. Removed additional pushing and popping of registers that was not needed. Change-Id: I08cb9b424513cd8a2c7ad8cea53b4e2adc66ef98
2010-12-09fix uninitialized read in encode breakoutJohn Koleszar
Change I3430820 performed an uninitialized read when encode_breakout == 0, since the sum and sse wouldn't be set: if(x->encode_breakout) VARIANCE_INVOKE(..., get16x16var)(..., &sum, &sse); if (cpi->active_map_enabled && x->active_ptr[0] == 0) { ... } else if (sse < x->encode_breakout) Change-Id: I915eb76d1227b4b6d1137a0dedf2c143860098a2
2010-12-09Correct q_low and q_high limits for the recode loopPaul Wilkins
Corrected the initial Q range limits for the recode loop to reflect the current allowed range for the frame. In experimental work on constrained quality this bug was causing unnecessary recodes. Change-Id: I7e256fbfa681293b0223fe21ec329933d76c229f
2010-12-09Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: I2b70793a97f80039ad23feea164744b1c236ac74
2010-12-08Merge "vp8e - static threshold play"Yaowu Xu
2010-12-08Merge "vp8e - remove unnecessary variance calc"Yaowu Xu
2010-12-08Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: I76ed5f6c24f3f71bba47679ff09d28e046ec1db9
2010-12-07vp8e - static threshold playJim Bankoski
Realized no need for new assembly code sum is already calculated. Change-Id: Ie2d94feb4b7c1f77c5359bca29b66228e41638c9
2010-12-07Merge "vp8_rd_pick_best_mbsegmentation code restructure"Scott LaVarnway
2010-12-06Merge "adjust RDMULT for UV plane in quantization RDO"Yaowu Xu
2010-12-07Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: I1baeedb24f321d3e200f00412cc657ab92c43143
2010-12-06adjust RDMULT for UV plane in quantization RDOYaowu Xu
This patch adds a weighting factor on RDMULT for UV blocks. The change has an overall gain about 0.5% based on ssim, between 0.1 and 0.2% by psnr numbers. Change-Id: I97781b077ce3bb7e34241b03268491917e8d1d72
2010-12-06Fix a memory leak problem in encoderYunqing Wang
Deallocating the buffers before re-allocating them. The fix passed James Berry's test program for memory leak check. Change-Id: I18c3cf665412c0e313a523e3d435106c03ca438d
2010-12-06vp8_rd_pick_best_mbsegmentation code restructureScott LaVarnway
Moved the code from the segmentation loop into a function which is now called for each segment. This will allow us to change the segment order checking more easily. Change-Id: I9510d26f0acae5a73043fcca8f1984b121d3e052
2010-12-06Merge "Improve MV prediction accuracy to achieve performance gain"Scott LaVarnway
2010-12-06Fix for manual Golden frame frequencyPatrik Westin
When auto_golden wasn't set it forced all frames to be a golden frame. Now the manual configured frequency is adhered to. Change-Id: I360acac9bc487db0d9c4d4da6ee41f70c227c539
2010-12-05Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: I2a47e43cb3ad61620bfef9e8caf578f321487f2c
2010-12-04Merge "Change to inter_minq table."Paul Wilkins
2010-12-04Change to inter_minq table.Paul Wilkins
The inter_minq table controls the range of quantizers available for a particular frame in two pass relative to a max Q value. The changes reduces the range somewhat. The effect of this was a small increase (0.3% average) in psnr for the test set but it should also help encode speed somewhat for higher quality modes as it will reduce the number of iterations in the recode loop. The change damps the range of quantizers available locally within a section of a clip and should therefore help keep quality more uniform. If there is systematic overshoot or undershoot the range can shift gradually to accommodate. However, there is some increased risk of overshoot or undershoot against the target bit rate in VBR mode and this risk will be more pronounced for short clips. The change damps the range of quantizers available locally within a section of a clip and should therefore help keep quality more uniform. If there is systematic overshoot or undershoot the range can shift gradually to accommodate. However, there is some increased risk of overshoot or undershoot against the target bit rate in VBR mode and this risk will be more pronounced for short clips. Change-Id: I84465567d49ae767c6c73ff2a2aac30c895adb52
2010-12-04Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: I11cd10dba54d0f3f96640dadc97199e5733f1888
2010-12-03Improve MV prediction accuracy to achieve performance gainYunqing Wang
Add vp8_mv_pred() to better predict starting MV for NEWMV mode in vp8_rd_pick_inter_mode(). Set different search ranges according to MV prediction accuracy, which improves encoder performance without hurting the quality. Also, as Yaowu suggested, using diamond search result as full search starting point and therefore adjusting(reducing) full search range helps the performance. Change-Id: Ie4a3c8df87e697c1f4f6e2ddb693766bba1b77b6
2010-12-03Merge 'Add simple version of activity masking.'John Koleszar
Merge commit 'refs/changes/79/779/2' of https://review.webmproject.org/p/libvpx Conflicts: vp8/encoder/encodeintra.c vp8/encoder/encodemb.c Change-Id: Id607063fabe92d99eeb3c380e8ca670b01bfb3ef
2010-12-02Merge remote branch 'origin/master' into experimentalJohn Koleszar
Change-Id: If95cb994d898d3f29b28db0d118a1f9c973e88d9
2010-12-01Set refresh_alt_ref_frame on keyframe encode.Fritz Koenig
On a keyframe alt ref and golden are refreshed. The flag was not being set and so on the frame after a keyframe, motion search would occur on the alt ref frame. This is not necessary because the alt ref frame identical to the last frame in this scenario. Handle corner case where a forward alt-ref frame is put directly after a keyframe. Change-Id: I9be4cf290d694f8cf2f9a31852014b5ccf1504d3
2010-11-30Merge remote branch 'origin/master' into experimentalJohn Koleszar
2010-11-27vp8e - remove unnecessary variance calcJim Bankoski
only do the variance calculation if necessary ( eg needed for breakout test)
2010-11-24allow dimensions as low as 1 pixelPascal Massimino
remove warning comment in vpxenc.c: in case of 1x1 picture, detect_bytes will be equal to '3' and we'll fall back to RAW_TYPE. fix read_frame() by tracking the pre-read buffer length in the struct detect Change-Id: If1ed86ee5260dcdbc8f9d10da6cbb84a4cc2f151
2010-11-24Merge remote branch 'origin/master' into experimentalJohn Koleszar
2010-11-23Merge changes I3aed713e,I9ef7f56e,Ic18c60dfJohn Koleszar
* changes: vp8_set_maps: remove hard-coded width/height vp8mt_alloc_temp_buffers: make prototype return void Disable compile warning for ERROR macro
2010-11-23Merge remote branch 'origin/master' into experimentalJohn Koleszar
2010-11-22Recalibration of bits per MB tablesPaul Wilkins
The baseline bits per MB prediction tables have been re calibrated based on the assumption that bits per mb is inversely proportional to the quantizer level. Change-Id: Ibd355c7acac4b8053dda1baf1032fe35f11da7f7
2010-11-22Merge "Added extra two pass stats gathering."Paul Wilkins
2010-11-21Merge remote branch 'origin/master' into experimentalJohn Koleszar
2010-11-19Added extra two pass stats gathering.Paul Wilkins
Added code to record spend so far against planed budget. Change-Id: I5a3335346fa1771b2b1219df9f6127f9993d2594
2010-11-18remove low pass filtering from two 4x4 intra predictionYaowu Xu
In the process of developing new intra prediction modes, tests have shown removal of the low pass filtering from B_HE_PRED and B_VE_PRED has an overall minor positive impact in both PSNR and SSIM metric. Overall difference is about 0.1%. The change shall also have a small positive impact on speed. Intuitively, this change should also reduce some of the tendency of "flattening" Change-Id: I3c43b0daca833c6eff77d00f19c811f9ef9368a3
2010-11-18changed MAX_PSNR to 100Yaowu Xu
Changing the MAX_PSNR to 100 to allow testing of further experiments on extending quantizer range to near lossless. With an effective quantizer of 1, encoder achieves ~68DB, which is consistent with fdct/idct round trip error. Change-Id: I7b6d0e94a8936968ef42e82e63ebb13999c36832
2010-11-18extends the range of tokensYaowu Xu
Extending the value range of tokens allows further experiments on extending quantizer range. Encoder and decoder were verified to produce matching reconstructed buffers by tests with forced quantized value of 1. Change-Id: I12faf92832867870b6f71ddeafbf643f1040086d
2010-11-18Merge remote branch 'origin/master' into experimentalJohn Koleszar
2010-11-17remove warningPascal Massimino
was having: "vp8/encoder/onyx_if.c:5365: warning: comparison of unsigned expression >= 0 is always true"
2010-11-17Merge "Removed unnecessary checks."Scott LaVarnway
2010-11-17Removed unnecessary checks.Scott LaVarnway
macro_block_yrd and vp8_rdcost_mby are not called for SPLITMV. Change-Id: I2224d3c8725df526d48426447482768d543752f1