summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-22Adding get_scan_{4x4, 8x8, 16x16} functions.Dmitry Kovalev
Change-Id: Id4306ef6d65d4a3984aed50b775bdf48d4f6c438
2013-04-22Merge "Bugfix from reordering frame probs patch" into experimentalDeb Mukherjee
2013-04-22Bugfix from reordering frame probs patchDeb Mukherjee
This fixes an intermittent mismatch issue cause by moving the lossless mode decoding bit to after the loop filter setup information. We need to ensure that the lossless bit is decoded prior to loop filter setup. Change-Id: I3faa3fff8e1013b7405dac91268350e059ed121e
2013-04-22Remove vp9_recon_intra_mbuvJohn Koleszar
Use common vp9_recon_sbuv instead. Change-Id: I146f79adfdfda2b52257a52fa783727f12afa246
2013-04-22Rewrite vp9_recon_sb*John Koleszar
Rewrite vp9_recon_sb{,y,uv} to be a loop over planes. Change-Id: Ica2bbbb3105a1d29b2ff2ead07b76cde9683154c
2013-04-22Move pre, second_pre to per-plane MACROBLOCKD dataJohn Koleszar
Continue moving framebuffers to per-plane data. Change-Id: I237e5a998b364c4ec20316e7249206c0bff8631a
2013-04-22Merge "Removes the code_nonzerocount experiment" into experimentalDeb Mukherjee
2013-04-22Removes the code_nonzerocount experimentDeb Mukherjee
This patch does not seem to give any benefits. Change-Id: I9d2b4091d6af3dfc0875f24db86c01e2de57f8db
2013-04-22Merge "End of orientation zero group experiment" into experimentalDeb Mukherjee
2013-04-22End of orientation zero group experimentDeb Mukherjee
Adds an experiment that codes an end-of-orientation symbol for every eligible zero encountered in scan order. This cleans out various other sub-experiments that were part of the origiinal patch, which will be later included if found useful. Results are slightly positive on all sets (0.1 - 0.2% range). Change-Id: I57765c605fefc7fb9d1b57f1b356843602abefaf
2013-04-22reconinter: remove unnecessary functions, paramsJohn Koleszar
Removes the redundant dst pointers from vp9_build_inter_predictors_sb{y,uv} and the remaining mb specific functions. Change-Id: I7b6bf439d9394b85ea79b4fe61a3ffc1025720da
2013-04-22Merge "make DC_PRED for i4x4 to use real pixels only" into experimentalPaul Wilkins
2013-04-22Merge "Reordering frame header probs." into experimentalSami Pietilä
2013-04-20Merge "Removing get_segment_id function and using existing ↵Dmitry Kovalev
vp9_get_pred_mb_segid." into experimental
2013-04-20Merge "Finally removing BOOL_DECODER and using vp9_reader instead." into ↵Dmitry Kovalev
experimental
2013-04-20Merge "Renaming vp9_extra_bit_struct to vp9_extra_bit." into experimentalDmitry Kovalev
2013-04-19Merge "Move dst to per-plane MACROBLOCKD data" into experimentalJohn Koleszar
2013-04-19Merge "Remove vp9_recon_mb{,y}" into experimentalJohn Koleszar
2013-04-19make DC_PRED for i4x4 to use real pixels onlyYaowu Xu
Wherever there are real pixels available before falling back to use assumed values 127 and 129. This also make DC_PRED for i4x4 consistent with DC_PRED for larger blocks. Change-Id: I54372924826118da023f402c802ac6ce0caa70c3
2013-04-19Merge "Remove redundant pointers from void vp9_recon_sb{y,uv}" into experimentalJohn Koleszar
2013-04-19Move dst to per-plane MACROBLOCKD dataJohn Koleszar
First in a series of commits moving the framebuffers pointers to per-plane data, so that they can be indexed numerically rather than by name. Change-Id: I6e0d60fd4d51e6375c384eb7321776564df21775
2013-04-19Merge "Clean out some legacy code." into experimentalPaul Wilkins
2013-04-19Removing get_segment_id function and using existing vp9_get_pred_mb_segid.Dmitry Kovalev
Change-Id: Iff35d4b2f8f65511f80c594958c01fb4673fa033
2013-04-19Clean out some legacy code.Paul Wilkins
Removed some unused legacy code relating to GF activity. Change-Id: I0b0fe90a1a5208aaa81d7393ba6cf75ab412dbda
2013-04-19Merge "Remove unused parameters in handle_inter_mode" into experimentalYunqing Wang
2013-04-19Merge "Mv ref candidates cut to 2." into experimentalPaul Wilkins
2013-04-19Remove vp9_recon_mb{,y}John Koleszar
Use the common sb functions instead. Change-Id: I4fa0a8ee3c6ada56271dd09bf895b97642f55858
2013-04-19Remove redundant pointers from void vp9_recon_sb{y,uv}John Koleszar
Remove the unnecessary _s_ from their names, and add a new vp9_recon_sb() that calls the y and uv variants. Change-Id: I7ffaa5ff5605a8472cac2a53de8cf889353039a6
2013-04-19Merge "Move diff to MACROBLOCKD per-plane data." into experimentalJohn Koleszar
2013-04-19Segmentation cleanup, adding {set, get}_segment_id functions.Dmitry Kovalev
Change-Id: I55c2688e06ae5d7dfccc1b1983f233ab1c7978db
2013-04-19Renaming vp9_extra_bit_struct to vp9_extra_bit.Dmitry Kovalev
Change-Id: Ie4713da125e954c1d30e1d4cbeb38666fce90ccc
2013-04-19Move diff to MACROBLOCKD per-plane data.John Koleszar
Change-Id: Ic27af09e38af8317ac4743241883d577a44f1490
2013-04-19Finally removing BOOL_DECODER and using vp9_reader instead.Dmitry Kovalev
Change-Id: I03d5b6f22f0930893709c6db5f1b06762ad3354e
2013-04-19make build_inter_predictors block size agnostic (split)John Koleszar
All build_inter_predictors can now be serviced by the same inner function. Change-Id: I40b08bee8f047286db4b1aad9dcae37b879c3f2a
2013-04-19Removing rounding from UV MV calculation for SPLITMVJohn Koleszar
Similar to the prior change that removed the rounding from non-SPLITMV modes. Improves quality by a similar amount (Additional +0.087% on derf) Change-Id: I39d80b4a3037a3aa7e285eb2320346ddaf646f52
2013-04-19Merge "make buid_inter_predictors block size agnostic (chroma)" into ↵John Koleszar
experimental
2013-04-19Merge "Use SSSE3 for 2d filters larger than 16" into experimentalJohn Koleszar
2013-04-19Merge "Replacing BOOL_DECODER with vp9_reader inside vp9_decodframe." into ↵Dmitry Kovalev
experimental
2013-04-19Merge "Fixing member names inside TOKENVALUE and TOKENEXTRA structs." into ↵Dmitry Kovalev
experimental
2013-04-19Merge "catch all for new block sizes" into experimentalJim Bankoski
2013-04-19Use SSSE3 for 2d filters larger than 16John Koleszar
The C code was being used as a fallback for the >16 case, but only for 2D. Change-Id: I1e2e6da9e4b28bd88bde9ba4dd32724ce466cf6f
2013-04-19catch all for new block sizesJim Bankoski
Just make sure we don't stop them from testing in speed 1. Change-Id: Iec9b3dba0a32616ff7a451207e0f54b81bb72575
2013-04-19Merge "set up a new speed 1" into experimentalJim Bankoski
2013-04-19Mv ref candidates cut to 2.Paul Wilkins
Further simplification of mvref search to return only the top two candidates. Distance weights removed as the test order reflects distance anyway. Change-Id: I0518cab7280258fec2058670add4f853fab7b855
2013-04-19set up a new speed 1Jim Bankoski
slightly worse results for faster encodes Change-Id: I25ea82a18ce20635dbcd328808c1d05ac1f58fd7
2013-04-19Removal of CONFIG_NEW_MVREF experiment.Paul Wilkins
This experiment has failed to give much benefit but does add complexity so deprecated. Change-Id: Ic7b929ba706390b9907ef0b4f965bd401ca799a4
2013-04-19Remove dummy place holder function.Paul Wilkins
void __attribute__((noinline)) hi(void) { } Causes build failure in VS2008 Change-Id: Ie2f2a09d90bd5502c492e4d9f4983532a0edbc01
2013-04-19Simplification of MVref search.Paul Wilkins
As we are no longer able to sort the candidate mvrefs in both encoder and decode and given that the cost of explicit signalling has proved prohibitive, it no longer makes sense to find more than 2 candidates. This patch: Modifies and simplifies add_candidate_mv() Removes the forced addition of a 0 vector in the MAX_MV_REF_CANDIDATES-1 position (in preparation to reducing MAX_MV_REF_CANDIDATES to 2). Re-orders the addition of candidates slightly. This actually gives small gains (circa 0.2% on std-hd) A subsequent patch will remove NEW_MVREF experiment, reduce MAX_MV_REF_CANDIDATES to 2 and remove distance weights as these are implicit now in the order. Change-Id: I3dbe1a6f8a1a18b3c108257069c22a1141a207a4
2013-04-19Merge "Adjustments to key frame sizing." into experimentalPaul Wilkins
2013-04-19Adjustments to key frame sizing.Paul Wilkins
Adjustments take heavier account of the frame near a kf in deciding boost and limit the total number that can contribute. Also adjusted the minq calculations such that in most cases we generate a smaller key frame. Modified the code that accounts for how static the sequence is and added some adjustment based on image size. This is still very crude but smaller images tend to behave better with a larger delta between KF Q and other frames than larger image formats. Changes give sizable gains in overall PSNR on all the test sets but the biggest gains (~3%) were on the std-hd set. The gains were smaller for SSIM but still significant. Average PSNR results are mixed because this metric can very easily be altered by having a very good / lossless coding of one or two frames. Some of the YT and YT-HD clips in particular have blank lead ins and allowing lossless coding of these appears to make a big difference to average PSNR but it reality does not help much at all. Change-Id: I6bfe485a1d330b47c783832f1717c95c535464ec