- 18 Nov, 2013 1 commit
-
-
Jingning Han authored
Explicitly constrain the upper limit of motion search range (in the unit of full pixel) to be [-1023, +1023]. It is intended to control the effective motion search range for 4K sequences. Change-Id: I645539c70885eec0f155781f439d97d333336e88
-
- 17 Oct, 2013 1 commit
-
-
Dmitry Kovalev authored
Making this change in order to move allow_high_precision_mv field from MACROBLOCKD structure to VP9_COMMON (because it is a frame level flag). Change-Id: I1d006ba36d938e0caf4d40fa051e2e38df9c1108
-
- 05 Oct, 2013 1 commit
-
-
Jim Bankoski authored
Change-Id: I2c2f83f4dfa2782fc6b0aa6db3ba2c4e6e423ffa
-
- 25 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I9795d0937bc07793c13d067281995e0750f694d9
-
- 24 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Updating fractional_mv_step_fp and fractional_mv_step_comp_fp function types. Change-Id: I601c4378bc39ac3ffd4e295d9cbd8e1f74829d46
-
- 23 Sep, 2013 1 commit
-
- 20 Sep, 2013 2 commits
-
-
Dmitry Kovalev authored
Converting vp9_mv_bit_cost, mv_err_cost, and mvsad_err_cost functions for now. Change-Id: I60e3cc20daef773c2adf9a18e30bc85b1c2eb211
-
Dmitry Kovalev authored
Change-Id: Ie47f53e76bc9530475c8c6d24e9b7a5a0189de56
-
- 19 Sep, 2013 1 commit
-
-
Yaowu Xu authored
Change-Id: I76f440a917832c02d7a727697b225bac66b99f56
-
- 18 Sep, 2013 1 commit
-
-
Dmitry Kovalev authored
Replacing ((1 << MV_MAX_BITS) - 1) with MV_MAX, adding const qualifiers, reusing computed values. Change-Id: I7b46d47f6c644b079d9c3478116a9de465a9baec
-
- 11 Sep, 2013 1 commit
-
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of pointers to MODE_INFO structs. The MODE_INFO structs are now stored as a stream (decoder only), eliminating unnecessary copies and is a little more cache friendly. Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
-
- 09 Sep, 2013 1 commit
-
-
James Zern authored
This reverts commit dae17734 Encode crashes, leaks and increases integer overflow errors. Change-Id: I595aa2649bb8d0b6552ff91652837a74c103fda2
-
- 06 Sep, 2013 1 commit
-
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of a pointer to a MODE_INFO struct and a "in the image" flag. The MODE_INFO structs are now stored as a stream, eliminating unnecessary copies and is a little more cache friendly. For the test clips used, the decoder performance improved by ~4.3% (1080p) and ~9.7% (720p). Patch Set 2: Re-encoded clips with latest. Now ~1.7% (1080p) and 5.9% (720p). Change-Id: I846f29e88610fce2523ca697a9a9ef2a182e9256
-
- 20 Aug, 2013 1 commit
-
-
Yaowu Xu authored
For certain partition size, the function poniter may not be intialized at all. The patch prevent the call if the pointer is not set. Change-Id: I78b8c3992b639e8799a16b3c74f0973d07b8b9ac
-
- 12 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I3c45916a9059f11b41e9d798e34ffee052969a44
-
- 09 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Removing redundant parenthesis and curly braces. Combining declarations with initializations. Adding useful intermediate variables instead of recalculating expressions every time. Change-Id: I00106f404afd60bfc189905b0fded881684f941a
-
- 08 Aug, 2013 1 commit
-
-
Deb Mukherjee authored
Adds a new subpel motion estimation function that uses a 2-level tree-structured decision tree to eliminate redundant computations. It searches fewer points than iterative search (which can search the same point multiple times) but has the same quality roughly. This is made the default setting at speeds 0 and 1, while at speed 2 and above only a 1-level search is used. Also includes various cleanups for consistency and redundancy removal. Results: derf: +0.012% psnr stdhd: +0.09% psnr Speedup of about 2-3% Change-Id: Iedde4866f5475586dea0f0ba4cb7428fba24eee9
-
- 07 Aug, 2013 1 commit
-
-
Deb Mukherjee authored
Removes some unused code and speed features, and organizes the interfaces for fractional mv step functions for use in new speed features to come. In the process a new speed feature - number of iterations per step during the subpel search - is exposed. No change when this parameter is set as the original value of 3. Results: subpel_iters_per_step = 3: baseline subpel_iters_per_step = 2: psnr -0.067%, 1% speedup subpel_iters_per_step = 1: psnr -0.331%, 3-4% speedup Change-Id: I2eba8a21f6461be8caf56af04a5337257a5693a8
-
- 06 Aug, 2013 1 commit
-
-
Deb Mukherjee authored
Adds a few pattern searches to achieve various tradeoffs between motion estimation complexity and performance. The search framework is unified across these searches so that a common pattern search function is used for all. Besides it will be easier to experiment with various patterns or combinations thereof at different scales in the future. The new pattern search is multi-scale and is capable of using different patterns at different scales. The new hex search uses 8 points at the smallest scale and 6 points at other scales. Two other pattern searches - big-diamond and square are also added. Big diamond uses 4 points at the smallest scale and 8 points in diamond shape at the larger scales. Square is very similar conceptually to the default n-step search but is somewhat faster since it keeps only one survivor across all scales. Psnr/speed-up results on derf300: hex: -1.6% psnr%, 6-8% speed-up big-diamond: -0.96% psnr, 4-5% speedup square: -0.93% psnr, 4-5% speedup Change-Id: I02a7ef5193f762601e0994e2c99399a3535a43d2
-
- 02 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ic07f5f8ffeaedd5b7513b464871f83afc82dcd5c
-
- 01 Aug, 2013 1 commit
-
-
Dmitry Kovalev authored
Removing assign_and_clamp_mv function, making implementation of clamp_mv and clamp_mv2 more clear and consistent. Change-Id: Iecd08e1c1bf0379f8314ebe01811f8253f4ade58
-
- 31 Jul, 2013 1 commit
-
-
Dmitry Kovalev authored
Using different variable names "allow_hp" and "use_hp" instead of "usehp". Change-Id: I0cd5996ddeb46bd754473b680a993c0aaf8eb879
-
- 22 Jul, 2013 1 commit
-
-
Deb Mukherjee authored
Optional change in diamond search to continue in the best move direction until that move turns worse. This is still WIP since the exact way the new method is to be used is under investigation. One option is to make it an option in diamond search and use it only when motion is large. Overall slightly positive on derfraw300 +0.02%, stdhdraw +0.13%, but works a lot better for high motion sequences (ex. football : +1%). Change-Id: If88e01a6021daa0cda934680cdc70be1ee04f798
-
- 26 Jun, 2013 2 commits
-
-
Paul Wilkins authored
Also tweaks to other features and experiments with what is on and off at different speed settings. Change-Id: I3e1d0be0d195216bf17c2ac5df67f34ce0b306b2
-
Paul Wilkins authored
Renamed cpi->sf.first_step to cpi->sf.reduce_first_step_size and changed its meaning such that it is a delta applied to reduce the default first step size (>> x) in the motion search rather than an absolute value. The default first step size is already changed according to the image dimensions (smaller for smaller images). cpi->sf.reduce_first_step_size now applies a further correction from the default. Change-Id: Ia94e08bc24c67b604831f980909af7e982fcd16d
-
- 25 Jun, 2013 1 commit
-
-
Ronald S. Bultje authored
Makes first 50 frames of bus @ 1500kbps encode from 3min22.7 to 3min18.2, i.e. 2.3% faster. In addition, use the sub_pixel_avg functions to calc the variance of the averaging predictor. This is slightly suboptimal because the function is subpixel-position-aware, but it will (at least for the SSE2 version) not actually use a bilinear filter for a full-pixel position, thus leading to approximately the same performance compared to if we implemented an actual average-aware full-pixel variance function. That gains another 0.3 seconds (i.e. encode time goes to 3min17.4), thus leading to a total gain of 2.7%. Change-Id: I3f059d2b04243921868cfed2568d4fa65d7b5acd
-
- 24 Jun, 2013 1 commit
-
-
Ronald S. Bultje authored
Instead, just allocate a few bytes on the stack, this is 4k, which isn't all that much. Change-Id: I82af6ee89e6ed01faaa23ff891ee7ced76df8c16
-
- 19 Jun, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I183a38997a9d01e4a1b869e92509f6915216fa09
-
- 22 May, 2013 1 commit
-
-
Paul Wilkins authored
Merge this experiment so that it is under a speed feature flag not a configuration flag. Change-Id: I536f7f125a4ff5149bb3a64f791e835c324535fd
-
- 16 May, 2013 1 commit
-
-
Paul Wilkins authored
This patch creates a new inter mode contest that avoids a dependence on the reconstructed motion vectors from neighboring blocks. This was a change requested by a hardware vendor to improve decode performance. As part of this change I have also made some modifications to stats output code (under a flag) to allow accumulation of inter mode context flags over multiple clips Some further changes will be required to accommodate the deprecation of the split mv mode over the next few days. Performance as stands is around -0.25% on derf and std-hd but up on the YT and YT-HD sets. With further tuning or some adjustment to the context criteria it should be possible to make this change broadly neutral. Change-Id: Ia15cb4470969b9e87332a59c546ae0bd40676f6c
-
- 10 May, 2013 1 commit
-
-
Yunqing Wang authored
In current code, motion vectors got from single prediction mode are used in compound prediction mode directly. These motion vectors may not give accurate prediction since they are searched independently. In this patch, we took Pascal's suggestion, and did joint motion search in compound prediction mode to find better motion vectors in this situation. Test results: Overall PSNR: 0.570%(derf), 0.918%(stdhd); SSIM: 0.572%(derf), 1.009%(stdhd); The encoder is a little slower. This can be improved since some c code is used in motion search. Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
-
- 26 Apr, 2013 2 commits
-
-
John Koleszar authored
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I7ff2fa72d22c29163eb558981c8193765a8113d9
-
Scott LaVarnway authored
This originally was "Removed update_blockd_bmi()". Now, this patch removed bmi from blockd and uses the bmi found in mode_info_context. Eliminates unnecessary bmi copies between blockd and mode_info_context. Change-Id: I287a4972974bb363f49e528daa9b2a2293f4bc76
-
- 25 Apr, 2013 2 commits
-
-
John Koleszar authored
Access these members from MACROBLOCKD instead. Change-Id: I2574622e577bb9feede47f6b7ccbb11f3e928ca8
-
John Koleszar authored
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I593fb0715e74cd84b48facd1c9b18c3ae1185d4b
-
- 18 Apr, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I7209a05919162a8155520bc543658ddb69ba12ce
-
- 17 Apr, 2013 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I28c3026946fc1bde7074e6e0198da93bb0d75dfe
-
- 11 Apr, 2013 1 commit
-
-
Dmitry Kovalev authored
Removing duplicated code from vp9_encodemv.c and reusing ROUND_POWER_OF_TWO macro definitions. Change-Id: I9caf0c17f761ada7905cb99a3e2a31f871fef0f9
-
- 18 Mar, 2013 1 commit
-
-
Paul Wilkins authored
Specifically changes to retain more precision especially at low Q through to the point of use. Change-Id: Ief5f010f2ca4daaabef49520e7edb46c35daf397
-
- 08 Mar, 2013 1 commit
-
-
Jingning Han authored
Increase the motion search range by 4x. Change MV_CLASS tree of the entropy coding to allow two additional mv classes to cover the extended motion vector limit. The codec determines the effective motion search range conditioned on the actual frame dimension. It provides coding gains: stdhd 0.39% yt 0.56% hd 0.47% Major coding performance gains are packed in several sequences with intense motion activities, e.g., ped_1080p gains 7% at high bit-rates, and on average 3%. TODO: Need to further tune the rate control and motion search units. Change-Id: Ib842540a6796fbee5a797809433ef6a477c6d78d
-