Dmitry Kovalev
28cd972810
Merge "Cleaning up vp9_rdopt.c."
2014-02-26 13:25:10 -08:00
Yaowu Xu
d66ecf0dc1
Separate super_block_yrd() into two functions
...
for inter and intra respectively
Change-Id: I7764d3af780072f7bd7bde201f454dcdd2816e76
2014-02-26 09:52:05 -08:00
Dmitry Kovalev
55a1269bd9
Merge "Removing redundant vp9_clear_system_state() call."
2014-02-26 09:19:54 -08:00
Dmitry Kovalev
abe21e42e7
Removing redundant vp9_clear_system_state() call.
...
This function is already called in vp9_initialize_rd_consts().
Change-Id: I88c0484a7274660287fa25fdf5cdb721d3284e01
2014-02-25 18:11:42 -08:00
Dmitry Kovalev
7d121ea86e
Cleaning up vp9_rdopt.c.
...
Change-Id: Ic7553a037493107c33cfb9815178a54095a289ec
2014-02-25 17:46:27 -08:00
Deb Mukherjee
276e568997
Merge "Adds variance based fixed size partitioning"
2014-02-25 13:46:21 -08:00
Deb Mukherjee
10bae82510
Adds variance based fixed size partitioning
...
Adds a method for determining a fixed size partition based on
variance of a 64x64 SB. This method is added to rtc speed 6.
Also fixes a bug in rtc_use_partition() and includes some
refactoring related to partitioning search, and some cosmetics.
Currently compared to speed 5, the coding efficiency of speed 6
is -19% and that of speed 7 is -55%, in cbr mode.
Change-Id: I057e04125a8b765906bb7d4bf7a36d1e575de7c6
2014-02-25 12:20:59 -08:00
Dmitry Kovalev
4632a96d97
Merge "Using vp9_subtract_plane instead of vp9_subtract_{sb, sby, sbuv}."
2014-02-25 11:06:05 -08:00
Dmitry Kovalev
7bca32a6a3
Merge "Changing vp9_full_search_sad{, x3, x8} signatures."
2014-02-25 10:51:17 -08:00
Yaowu Xu
b67bd637e0
Merge changes I7e96d619,I9a7631d5
...
* changes:
normalize int64_t high value to INT64_MAX
resolve issue with arm code failing unit test
2014-02-25 08:22:49 -08:00
Jim Bankoski
ec55dd1007
normalize int64_t high value to INT64_MAX
...
Change-Id: I7e96d6199f882d35357f6a9a08c04ad0af5dc26e
2014-02-25 07:29:48 -08:00
Jingning Han
4b3e44f91d
Merge "Periodically update mode and mv costs"
2014-02-22 11:54:20 -08:00
Jingning Han
836252bfa6
Periodically update mode and mv costs
...
Skip coefficient cost update in non-RD mode decision setting. Allow
periodical mode and motion vector cost update. Currently every other
8 frames. The increment runtime is a constant number. Hence more
visible for CIF resolution, while negligible for 1080p.
Speed -6 compression performance for rtc set is improved by 4.5%.
Change-Id: I27e0ad7c521fcc2af1d825582cbdd1a27ac4c323
2014-02-21 18:25:43 -08:00
Alex Converse
463ba70581
vp9_rd_pick_inter_mode_sb() reorganization
...
* Reduce the number of short cirtcuit checks by pre-computing and combining like checks.
* Postpone non-trivial initializations until after the shortcircuits are evaluated.
* Add some consts and const pointers.
No change to the actual results of the call or output of the encoder.
Change-Id: Ie44c4702aec6e08cfe0b8b0ba3cd6b57206478d1
2014-02-20 18:06:25 -08:00
Yunqing Wang
cde6b50cb1
Merge "Use fast HEX search in real time mode"
2014-02-20 12:07:10 -08:00
Paul Wilkins
bb61327b98
Merge "vp9_rdopt.c: Use int64_t for dist_sum and rate_sum in model_rd_for_sb()."
2014-02-20 02:03:49 -08:00
Alex Converse
43b7959dbc
Merge "Do not use the value of 'rate_mv' if uninitialized."
2014-02-19 12:41:14 -08:00
Tom Finegan
a0e495579e
vp9_rdopt.c: Use int64_t for dist_sum and rate_sum in model_rd_for_sb().
...
Removes unnecessary casts and silences warnings.
Change-Id: Ic516a909a2b3748831be6717f02d86ca60190af3
2014-02-18 22:31:11 -08:00
Alex Converse
2ceaf10e07
Do not use the value of 'rate_mv' if uninitialized.
...
This happens when exiting single_motion_search() early due to adaptive_motion_search.
Change-Id: Ic396e7e31e59ff219bb66a459c873c9e5b17400d
2014-02-18 17:04:42 -08:00
Adrian Grange
9b9c33a2b8
Remove comment from calls to vp9_clear_system_state.
...
Removed the comment "// __asm emms;" from all calls
to vp9_clear_system_state.
Change-Id: Ib4dae69c1cdf3f185b04184a870cd70c4d703f10
2014-02-18 15:43:42 -08:00
Yunqing Wang
360c80cfb9
Use fast HEX search in real time mode
...
In good quality mode motion search, the best matches are normally
found after searching in a large area. In real time mode, to make
encoding fast, a center-biased fast HEX search is used, which
converges quickly most of the time. A 4-point diamond search is
also carried out as the following refining search, which gives more
precise results, and maintains good motion search quality.
At speed 5, the borg test on rtc set showed an overall PSNR loss of
0.936%. The encoding speed gain is 4% - 5%.
Change-Id: I42cd68bb56a09ca1b86293c99d5f7312225ca7ae
2014-02-18 14:35:16 -08:00
Dmitry Kovalev
36420009ea
Changing vp9_full_search_sad{, x3, x8} signatures.
...
Passing block MV pointer instead of block index into
vp9_full_search_sad{, x3, x8} functions.
Change-Id: Ica07356633471c2c8f81b583a7aeba85a436bafb
2014-02-17 14:24:57 +01:00
Dmitry Kovalev
f6fd5b2704
Using vp9_subtract_plane instead of vp9_subtract_{sb, sby, sbuv}.
...
Change-Id: I67a82a347245076b6c3b0bc41b587f9961a29943
2014-02-17 13:57:40 +01:00
Deb Mukherjee
56835f1bdd
Make cpi->speed always positive
...
Minor fix to ensure that positive and negative cpu_used
values produce the same output.
Change-Id: I9157d05cb9a7c0bd57a4d8a9f268205a825b9b0b
2014-02-14 14:28:58 -08:00
Jim Bankoski
323a7120b9
Merge "vp9_rdopt.c : Silence more V.S. compiler warnings."
2014-02-14 14:23:51 -08:00
Paul Wilkins
40e374bbae
vp9_rdopt.c : Silence more V.S. compiler warnings.
...
Change-Id: I151c6c9396b8ea1ce2e05b80359f60f0d38af138
2014-02-14 11:28:37 -08:00
Alex Converse
bb07de7cce
Remove some unused and non-persistant variables from VP9_COMP.
...
Change-Id: I4deb1b97eec6b1244e3460a1162b41fa5312654a
2014-02-14 10:17:31 -08:00
Jim Bankoski
5750f78d61
Merge "fast approximate model_rd_from_var_lapndz"
2014-02-14 09:08:52 -08:00
Dmitry Kovalev
fde1b6d7f2
Using MV instead of int_mv inside vp9_full_pixel_diamond().
...
Change-Id: If33a5a12c4025d9b5ec863dfccea7ee70f800665
2014-02-13 11:23:05 -08:00
Dmitry Kovalev
df6c523fed
Merge "Renaming skip_coeff to skip for consistency."
2014-02-13 11:04:34 -08:00
Jim Bankoski
d7be0fd5ea
Merge "vp9_rdopt.c static analysis issues resolved"
2014-02-13 06:22:08 -08:00
Dmitry Kovalev
c00d88cdae
Merge "Removing init_rdcost_stack() + cleanup."
2014-02-12 18:24:03 -08:00
Dmitry Kovalev
8c3ca45dfb
Merge "Converting int_mv to MV."
2014-02-12 17:53:50 -08:00
Dmitry Kovalev
004c8c636e
Renaming skip_coeff to skip for consistency.
...
Change-Id: I036e815ca63d00cba71202ae09ba0f6ef745dcb8
2014-02-12 17:44:12 -08:00
Jim Bankoski
bb2d683c26
vp9_rdopt.c static analysis issues resolved
...
Change-Id: Id53b574a4ecb5c8749383b3758c46b6bc1b275d5
2014-02-12 17:00:57 -08:00
Dmitry Kovalev
733a17d253
Converting int_mv to MV.
...
Change-Id: Id15285aa48ac6d8fec19a1946e6391412d84f5be
2014-02-12 15:40:43 -08:00
Jim Bankoski
9e190dfbfe
fast approximate model_rd_from_var_lapndz
...
Change-Id: Ieceaa16312941992d4a57455e336d625dfe4e094
2014-02-12 14:16:55 -08:00
Jingning Han
0eecccc51e
Remove inactive control parameters
...
Change-Id: Ic5692af975fe6bd2d8ec82bbae103c6f7c2fc13e
2014-02-12 12:48:15 -08:00
Yunqing Wang
356a7e9642
Merge "Enable encode_breakout in real time encoding"
2014-02-11 21:07:24 -08:00
Dmitry Kovalev
eff5b79260
Removing init_rdcost_stack() + cleanup.
...
Change-Id: I6fcbc833063c658749b2d43bb9968a5762647061
2014-02-11 18:08:06 -08:00
Dmitry Kovalev
9453c64726
Merge "Hiding encode_b_args struct inside vp9_encodemb.c."
2014-02-11 17:36:05 -08:00
Yunqing Wang
507fd5220b
Enable encode_breakout in real time encoding
...
In real time encoding, we enable encode_breakout to make encoding
fast. A speed feature "use_encode_breakout" is defined to set
encode_breakout thresholds for different speeds.
However, currently, static_thresh is an encoder option. The encode_
breakout can be turned off if user sets static_thresh=0 specifically.
The rtc set borg test result: (need to set --static_thresh=1)
speed -5, psnr loss -3.543%;
speed -4, psnr loss -2.358%;
speed -3, psnr loss -0.771%.
Encoding speed test:
speed -5, 11% - 60% speedup;
speed -4, 5.5% - 28% speedup;
speed -3, 0.8% - 7% speedup.
Change-Id: Icde592ffbe77eac7446f872a2e9eb2051733677b
2014-02-11 15:30:54 -08:00
Dmitry Kovalev
28f46aa633
Merge "Fixing errorperbit calculation."
2014-02-11 10:19:59 -08:00
Jingning Han
734938dc6b
Use more meaningful names for speed features
...
Use frame_parameter_update to precisely describe the functionality.
Change-Id: Ia9a55ba8efef7b987e30d949dd00ac716189bdb9
2014-02-10 15:20:11 -08:00
Dmitry Kovalev
71b7cb2006
Fixing errorperbit calculation.
...
Change-Id: I06e082a18dbcc6e126cf288ee769c1480e3f2f4d
2014-02-10 11:06:42 -08:00
Dmitry Kovalev
398f2f6298
Cleaning up rd_check_segment_txsize() function.
...
Change-Id: I7c09f84b26eb499daafd1393b48f12abb8a6fb8f
2014-02-08 20:18:37 -08:00
Dmitry Kovalev
441b990017
Hiding encode_b_args struct inside vp9_encodemb.c.
...
Change-Id: I5bcd32874f8a8a693e3eb68ef6728dfbf5475bda
2014-02-08 19:30:45 -08:00
Dmitry Kovalev
005fc6970b
Finally removing "short" from transform names.
...
Change-Id: I5259b68dc1bcceb153e3ffe638a79a59a3019e9d
2014-02-06 11:54:15 -08:00
Jim Bankoski
9dec7712ab
static function convert to inline or global vp9_blockd.h
...
Change-Id: Ifdd951f24932839f06d1c700371662511dde6ebe
2014-01-31 19:50:40 -08:00
Dmitry Kovalev
88340b173b
Merge "Combining fb_idx_ref_cnt[] and yv12_fb[] arrays."
2014-01-31 15:55:04 -08:00