- 11 Oct, 2013 1 commit
-
-
Dmitry Kovalev authored
Values of MODE_UPDATE_PROB and VP9_COEF_UPDATE_PROB are equal, so replacing them with one constant. Inlining appropriate arguments for functions: vp9_cond_prob_diff_update (encoder) vp9_diff_update_prob (decoder) Change-Id: I1255a1cb477743b799b3bfbbcd8de6b32b067338
-
- 07 Oct, 2013 2 commits
-
-
Dmitry Kovalev authored
Declaring vp9_pt_energy_class in vp9_entropy.h instead of many external places. Change-Id: I66e8a3fc119a43f88d130d0dae4133c825a047a3
-
Dmitry Kovalev authored
Now we have entropy code separate from scan/iscan code. The next step in future is to move iscan code from common part to the encoder. Change-Id: Id9732f7d80aec00af35c1d58d1137c4c96c91451
-
- 30 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I6973e7121b6393379b5759f288632e8eab763d3e
-
- 27 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I6be72c8b048d1ccc7ef43764cf84c32360098970
-
- 19 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Extracting get_scan_and_band function from get_entropy_context to remove duplicated code. Change-Id: I5da1f5a60263017e887da68bc834317b5f084cb2
-
- 05 Sep, 2013 1 commit
-
-
Jim Bankoski authored
This helps clear out some of the warnings Change-Id: Ie7ccaca8fd92542386a7f1b257398e1bdf2f55dc
-
- 29 Aug, 2013 1 commit
-
-
James Zern authored
stragglers Change-Id: Ib1e853f9a331b7b66639dc34d79568d84d1930f1
-
- 27 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Moving common code from encoder and decoder to this function. Change-Id: I60fa643fb1ddf7ebbff5e83b6c4710137b0195ef
-
- 26 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Adding temporary "typedef BLOCK_SIZE BLOCK_SIZE_TYPE" which will go away after encoder's patch. Change-Id: I06ec6a6f079401439843ec981d1496234fd7775c
-
- 21 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ib3e72671eb8da6f2e9767a6de292ec7c7cde6bc7
-
- 12 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Adding set_skip_context() function used from both encoder and decoder. Change-Id: Ia22cfad3211a00a63eb294f64f857b78f4aa9b85
-
- 01 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Icd128ab58719e0b9066bdfa66a5d0d427a84d6df
-
- 29 Jul, 2013 1 commit
-
-
John Koleszar authored
Fixes a warning on MSVS 2012 where the alignment of vp9_default_iscan_8x8 didn't match between its declaration and definition. Change-Id: I1466a15635f4b22594d705d570b7e399bfb6cf21
-
- 25 Jul, 2013 1 commit
-
-
Dmitry Kovalev authored
Removing unused constants, macros, and function declarations. Using ROUND_POWER_OF_TWO macro, vp9_zero, vp9_copy where possible. Moving #include from *.h to *.c. Merging for loops for motion vectors. Change-Id: Ic3bf841764a2bb177128bb3a6d7aa8f68229cd13
-
- 22 Jul, 2013 1 commit
-
-
Ronald S. Bultje authored
4x4: 163 -> 123 cycles (33% faster) 8x8: 491 -> 399 cycles (23% faster) 16x16: 1889 -> 1763 cycles (7% faster) 32x32: 8311 -> 8180 cycles (1.6% faster) Overall encoding time of first 50 frames of bus (speed 0) @ 1500kbps goes from 1min4.33 to 1min3.00, i.e. 2.11% faster. Change-Id: Ib52d1dbb5649b14de769d3e7a74af67440b5284f
-
- 16 Jul, 2013 1 commit
-
-
Dmitry Kovalev authored
Removing unused and duplicated constants, moving them from *.h to *.c if possible. Change-Id: Ief4d6b984a3ca2e9b38504f0d855ed072cf7133f
-
- 01 Jul, 2013 2 commits
-
-
Ronald S. Bultje authored
This should significantly speedup cost_coeffs(). Basically what the patch does is to make the neighbour arrays padded by one item to prevent an eob check in get_coef_context(), then it populates each col/row scan and left/top edge coefficient with two times the same neighbour - this prevents a single/double context branch in get_coef_context(). Lastly, it populates neighbour arrays in pixel order (rather than scan order), so we don't have to dereference the scantable to get the correct neighbours. Total encoding time of first 50 frames of bus (speed 0) at 1500kbps goes from 2min10.1 to 2min5.3, i.e. a 2.6% overall speed increase. Change-Id: I42bcd2210fd7bec03767ef0e2945a665b851df56
-
Ronald S. Bultje authored
Total encoding time for first 50 frames of bus (speed 0) @ 1500kbps goes 2min34.8 to 2min14.4, i.e. a 10.4% overall speedup. The code is x86-64 only, it needs some minor modifications to be 32bit compatible, because it uses 15 xmm registers, whereas 32bit only has 8. Change-Id: I2df53770c2e850813ffa713e1a91b45b0082b904
-
- 28 Jun, 2013 1 commit
-
-
Ronald S. Bultje authored
Makes cost_coeffs() a lot faster: 4x4: 236 -> 181 cycles 8x8: 888 -> 588 cycles 16x16: 3550 -> 2483 cycles 32x32: 17392 -> 12010 cycles Total encode time of first 50 frames of bus (speed 0) @ 1500kbps goes from 2min51.6 to 2min43.9, i.e. 4.7% overall speedup. Change-Id: I16b8d595946393c8dc661599550b3f37f5718896
-
- 24 Jun, 2013 1 commit
-
-
John Koleszar authored
This function is not called from the decoder, so it doesn't need to be in common/. Change-Id: I6977dd462a25b4ff39c9c7e1b0b5b16aa58ee733
-
- 21 Jun, 2013 1 commit
-
-
John Koleszar authored
This function never referenced. Change-Id: I1c42cd355bfa88e17d169f7335a44be682af58cc
-
- 14 Jun, 2013 1 commit
-
-
John Koleszar authored
All elements of this table are equal to 252, so replace it with a single constant VP9_COEF_UPDATE_PROB. Change-Id: I1e2d1d284326ce6df9899a740c2fc344b3ec81c9
-
- 29 May, 2013 1 commit
-
-
Deb Mukherjee authored
This patch changes the coefficient tree to move the EOB to below the ZERO node in order to save number of bool decodes. The advantages of moving EOB one step down as opposed to two steps down in the other parallel patch are: 1. The coef modeling based on the One-node becomes independent of the tree structure above it, and 2. Fewer conext/counter increases are needed. The drawback is that the potential savings in bool decodes will be less, but assuming that 0s are much more predominant than 1's the potential savings is still likely to be substantial. Results on derf300: -0.237% Change-Id: Ie784be13dc98291306b338e8228703a4c2ea2242
-
- 28 May, 2013 1 commit
-
-
Deb Mukherjee authored
Uses reduced arrays for probabilities and branch counts in the encoder. No change in bitstream. Change-Id: Iec605446f44db4cd325eb45fa12a3003a6ee29db
-
- 24 May, 2013 1 commit
-
-
Paul Wilkins authored
Also some unused data structures/references removed. Change-Id: I295809e887173543e794250cb60ddaf1475ffd24
-
- 23 May, 2013 1 commit
-
-
Paul Wilkins authored
Removal from under configure flag. A bit renaming Change-Id: I2213229dfe852001dfec16b149f47c52ce88f3aa
-
- 22 May, 2013 1 commit
-
-
Deb Mukherjee authored
Reverts to using 128 bit LUT for the coef models rather than 48 to ease hardware implementation. Also incorporates some cleanups including removing various hooks to support different lookup tables based on block_type and ref_type. Change-Id: I54100c120cca07a2ebd3a7776bc4630fa6a153f6
-
- 21 May, 2013 2 commits
-
-
Deb Mukherjee authored
Merges the experiment. Change-Id: I4eb19af6de6df6aa3a96a2e82f231d47ed9b3ae9
-
Deb Mukherjee authored
Uses more aggrerssive interpolation to reduce storage for the model tables by almost more than half. Only 48 lists of probs are stored (as opposed to 128 before), corresponding to ONE_NODE probabilities of: 1, 3, 7, 11, ..., 115, 119, 127, 135, ..., 247, 255. Besides, only 1 table is used as opposed to 2 before. So the overall memory needed for the tables is just 48 * 8 = 384 bytes. The table currently used is based on a new Pareto distribution with heavier tail than a generalized Gaussian - which improves results on derf by about 0.1% over a single table Generaized Gaussian. Results overall on derfraw300 is -0.14%. Change-Id: I19bd03559cbf5894a9f8594b8023dcc3e546f6bd
-
- 20 May, 2013 1 commit
-
-
Deb Mukherjee authored
Cleans up the experiment. Actually uses reduced counts for backward updates, and reduced number of probabilities in the context. No change in bitstream when the experiment is on. Between expt on and off: derfraw300 is down only -0.062% (which is better than when expts were run previously). Change-Id: I55285a049a0c22810bdb42914212ab5a4f8521b5
-
- 13 May, 2013 1 commit
-
-
Paul Wilkins authored
Change band calculation back to simpler model based on the order in which coefficients are coded in scan order not the absolute coefficient positions. With the scatter scan experiment enabled the results were appear broadly neutral on derf (-0.028) but up a little on std-hd +0.134). Without the scatterscan experiment on the results were up derf as well. Change-Id: Ie9ef03ce42a6b24b849a4bebe950d4a5dffa6791
-
- 07 May, 2013 2 commits
-
-
Dmitry Kovalev authored
Change-Id: I81c19a8f19cfb5c7183609656ade833d72feb500
-
Paul Wilkins authored
Delete code under the CONFIG_CODE_ZEROGROUP flag. Change-Id: I5fe6c7b42a5da9b73118e33594301da4129f320a
-
- 29 Apr, 2013 2 commits
-
-
Ronald S. Bultje authored
Output changes slightly because of a minor bug in (at least) the sb32x16 block2above tx16x16 tables that previously existed in vp9_blockd.c. Change-Id: I624af28ac200a8322d64454cf05c79e9502968cc
-
Deb Mukherjee authored
Turns model based reverse updates on for coefficients in an effort to reduce the memory requirement for counters. With this patch the counters needed will be reduced by about 75% since only 3 counts are needed instead of 12. The impact in performance is: derf300: -0.252% stdhd250: -0.046% However retraining should alleviate some of the drop in performance. Change-Id: I6f2b3e13f6d5520aa3400b0b228fb5e8b4a43caa
-
- 26 Apr, 2013 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I087e08e7909a406b71715b8525c104208daa6889
-
- 22 Apr, 2013 3 commits
-
-
Dmitry Kovalev authored
Change-Id: Id4306ef6d65d4a3984aed50b775bdf48d4f6c438
-
Deb Mukherjee authored
This patch does not seem to give any benefits. Change-Id: I9d2b4091d6af3dfc0875f24db86c01e2de57f8db
-
Deb Mukherjee authored
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
-