Johann [Thu, 27 Mar 2014 18:58:26 +0000 (11:58 -0700)]
Merge "Add compile option to parse ELF."
Dmitry Kovalev [Thu, 27 Mar 2014 18:08:12 +0000 (11:08 -0700)]
Merge "Moving thresh_mult{,_sub8x8} from SPEED_FEATURES to VP9_COMP."
Marco Paniconi [Thu, 27 Mar 2014 15:48:22 +0000 (08:48 -0700)]
Merge "aq_mode=3: Set target seg_map in sb-block order."
Tao Bai [Thu, 27 Mar 2014 05:05:24 +0000 (22:05 -0700)]
Add compile option to parse ELF.
Change-Id: I64a81601d11e9fa383435bfd1a1d35206ebb2fc8
Marco Paniconi [Thu, 27 Mar 2014 01:09:20 +0000 (18:09 -0700)]
aq_mode=3: Set target seg_map in sb-block order.
Removes a TODO. Changed meaning of some parameters
(target-max-percent refresh and starting index) to be
defined relative to superblock. Also, modify turn-off condition.
Change-Id: I5e55f372b7079c24f9cdac0b06fa34620dbf456b
Marco Paniconi [Wed, 26 Mar 2014 23:05:45 +0000 (16:05 -0700)]
Move aq_mode=2 (complexity_aq) to separate file.
Change-Id: Iffa45b9b04196c1ded6037622a8644a2500a62de
Jingning Han [Wed, 26 Mar 2014 23:06:01 +0000 (16:06 -0700)]
Merge "Motion referenced partition search for non-RD coding flow"
Dmitry Kovalev [Wed, 26 Mar 2014 22:45:11 +0000 (15:45 -0700)]
Merge "Removing prev_mi_8x8 from MACROBLOCKD."
Dmitry Kovalev [Wed, 26 Mar 2014 21:28:45 +0000 (14:28 -0700)]
Merge "Cleaning up vp9_entropymv.c."
Dmitry Kovalev [Wed, 26 Mar 2014 20:39:00 +0000 (13:39 -0700)]
Merge "Encapsulating CYCLIC_REFRESH struct into .c file."
Jingning Han [Wed, 26 Mar 2014 20:00:06 +0000 (13:00 -0700)]
Motion referenced partition search for non-RD coding flow
This commit enables the non-RD mode decision coding flow to
adaptively apply partition search in non-refresh frame, when the
collocated block in previous frame suggests there might be a motion
activity. It refactors the update_state_rt() function to support
buffer swap of mode_info struct, thereby unifying the encoding
stage across various non-RD coding modes.
It provides 5% compression performance gains in speed -6 for rtc
test set, at about 12% speed slow down.
Change-Id: Iefa374aed5a11c4b7ff9a3ed36a98ea8bd184edb
James Zern [Wed, 26 Mar 2014 19:40:16 +0000 (12:40 -0700)]
Merge "tests: use consistent case for VP[89]"
Dmitry Kovalev [Wed, 26 Mar 2014 18:29:10 +0000 (11:29 -0700)]
Moving thresh_mult{,_sub8x8} from SPEED_FEATURES to VP9_COMP.
SPEED_FEATURES should contain only configuration parameters.
Change-Id: I7d6d0636879c3e87dad09bc9455c1cf1dc039da8
Dmitry Kovalev [Wed, 26 Mar 2014 18:00:35 +0000 (11:00 -0700)]
Encapsulating CYCLIC_REFRESH struct into .c file.
Change-Id: I32695ad703dcbbbbf5f122b403f3d3120a0be366
Dmitry Kovalev [Wed, 26 Mar 2014 17:48:01 +0000 (10:48 -0700)]
Removing prev_mi_8x8 from MACROBLOCKD.
Change-Id: I32beb5f18c10b5771146c55933b5555487f53633
Yaowu Xu [Wed, 26 Mar 2014 16:53:42 +0000 (09:53 -0700)]
Merge "Added a speed feature "allow_skip_recode""
Yaowu Xu [Wed, 26 Mar 2014 16:53:32 +0000 (09:53 -0700)]
Merge "Removed redundant settings"
Jingning Han [Wed, 26 Mar 2014 16:28:55 +0000 (09:28 -0700)]
Merge "Apply early termination in non-RD partition search"
Marco Paniconi [Wed, 26 Mar 2014 16:15:15 +0000 (09:15 -0700)]
Merge "Fix to cylcic refresh: use correct/chosen mode for update_segment."
James Zern [Wed, 26 Mar 2014 05:52:06 +0000 (22:52 -0700)]
Merge "configure: clean up temp gcov (.gcno) files"
Dmitry Kovalev [Wed, 26 Mar 2014 00:17:22 +0000 (17:17 -0700)]
Merge "Removing unused force_next_frame_intra member."
Dmitry Kovalev [Tue, 25 Mar 2014 23:56:33 +0000 (16:56 -0700)]
Merge "Removing redundant references to VP9D_COMP struct."
Marco Paniconi [Tue, 25 Mar 2014 17:33:02 +0000 (10:33 -0700)]
Fix to cylcic refresh: use correct/chosen mode for update_segment.
Fix so that vp9_update_segment_aq() will use the correct (i..e, chosen)
encoding mode (from ctx struct) in update_state.
Change-Id: Icc4b66f3935fad5ec4516a4d57e843d12c365e64
Dmitry Kovalev [Tue, 25 Mar 2014 23:28:49 +0000 (16:28 -0700)]
Merge "Moving setup_{key, inter}_frame() to vp9_onyx_if.c."
Alex Converse [Tue, 25 Mar 2014 22:59:24 +0000 (15:59 -0700)]
Merge "Refactor out zero motion vector equivalence."
Jingning Han [Tue, 25 Mar 2014 18:05:50 +0000 (11:05 -0700)]
Apply early termination in non-RD partition search
This commit allows the recursive non-RD partition search to early
terminate sub search tree when the cumulative rate-distortion is
already above the best available.
Change-Id: Ifdbcbb4bee229f47fde3033200829577c9f1fc1d
Alex Converse [Tue, 25 Mar 2014 22:42:24 +0000 (15:42 -0700)]
Merge "Add consts to cost_mv_ref."
James Zern [Sat, 22 Mar 2014 20:22:15 +0000 (13:22 -0700)]
configure: clean up temp gcov (.gcno) files
Change-Id: I792e4ef7d81aa81beb28091a37a61bafb91b30f4
James Zern [Sat, 22 Mar 2014 21:13:14 +0000 (14:13 -0700)]
tests: use consistent case for VP[89]
Vp[89] -> VP[89]
Change-Id: Ib5863444c0c022cc51e2f160ecea92ca157fdf1d
Dmitry Kovalev [Tue, 25 Mar 2014 21:28:15 +0000 (14:28 -0700)]
Removing unused force_next_frame_intra member.
Change-Id: I3d9fc6da986d0f1ec682fb12e067c52472453eed
Yaowu Xu [Tue, 25 Mar 2014 21:27:45 +0000 (14:27 -0700)]
Added a speed feature "allow_skip_recode"
This commit added a speed feature to make the logic of calculating
skip_recode on a block level more explicit. This also enable the
feature to be enabled at speed 5 where the previous logic is too
conservative, help gain back the lost speed for --rt(-5).
Change-Id: Ieb37ca3e85c2e7bda343486edf13d5f5395f2233
Dmitry Kovalev [Tue, 25 Mar 2014 21:21:26 +0000 (14:21 -0700)]
Removing redundant references to VP9D_COMP struct.
Change-Id: I4c4772c0e6aca2c7d7085a72412ac8dba8874a3d
Alex Converse [Tue, 25 Mar 2014 21:16:11 +0000 (14:16 -0700)]
Refactor out zero motion vector equivalence.
Change-Id: I6b20248b6f76545356f910ca6386f5466e287b6e
Alex Converse [Tue, 25 Mar 2014 21:15:42 +0000 (14:15 -0700)]
Add consts to cost_mv_ref.
Change-Id: Ie5dadb5c2bcfe80a703edb58a71dc453644c9ade
Dmitry Kovalev [Tue, 25 Mar 2014 00:47:25 +0000 (17:47 -0700)]
Removing redundant vpx_free() call.
above_seg_context is alreaded freed during vp9_remove_common() call.
Change-Id: I16b72c710e71d2f143df2d47e876d220c8d374e0
Yaowu Xu [Tue, 25 Mar 2014 19:33:22 +0000 (12:33 -0700)]
Removed redundant settings
The recode_loop feature is disabled for one-pass always.
Change-Id: I6de8820add4a6f97196874af83a970f9898f842d
Dmitry Kovalev [Tue, 25 Mar 2014 01:32:46 +0000 (18:32 -0700)]
Moving above_context to VP9_COMMON.
Change-Id: I713af99d1e17e05a20eab20df51d74ebfd1a68d2
Jingning Han [Tue, 25 Mar 2014 16:54:32 +0000 (09:54 -0700)]
Fix compiling errors due to git merge
There were a few conflicts between the new non-RD partition search
and recent clean-up patches, which were not caught by git control.
This commit fixed these issues.
Change-Id: Ieebefbd6c19d81d0d13e3c568877d5cce2ab7797
Yaowu Xu [Tue, 25 Mar 2014 17:22:18 +0000 (10:22 -0700)]
Merge "Fixed a build issue"
Yaowu Xu [Tue, 25 Mar 2014 16:48:21 +0000 (09:48 -0700)]
Merge "Change back the scaling calculation."
Yaowu Xu [Tue, 25 Mar 2014 16:39:29 +0000 (09:39 -0700)]
Fixed a build issue
Adding the missed include file.
Change-Id: I7e48df6b0633afbebaf1ccb3062ae404e7203dc9
Jingning Han [Tue, 25 Mar 2014 16:27:03 +0000 (09:27 -0700)]
Merge "Always use adaptive motion search in non-RD coding mode"
Jingning Han [Tue, 25 Mar 2014 16:26:49 +0000 (09:26 -0700)]
Merge "Enable recursive partition selection for non-RD coding mode"
Jingning Han [Tue, 25 Mar 2014 05:31:03 +0000 (22:31 -0700)]
Always use adaptive motion search in non-RD coding mode
This commit takes out the if statements on using adaptive motion
search flag. This feature is automatically enabled in non-RD mode
decision flow for variable partition types search.
Change-Id: I5a25cf9109d84d07aa61b3e02c8d32dda1e90cb0
Yunqing Wang [Tue, 25 Mar 2014 03:38:30 +0000 (20:38 -0700)]
Merge "Fix uninitialized read in postprocessing"
Yaowu Xu [Tue, 25 Mar 2014 00:19:48 +0000 (17:19 -0700)]
Merge "Align threading LFWorkerData to 32 bytes."
Dmitry Kovalev [Tue, 25 Mar 2014 00:17:57 +0000 (17:17 -0700)]
Merge "Making c++ compiler happier."
Alex Converse [Tue, 25 Mar 2014 00:04:45 +0000 (17:04 -0700)]
Merge "Don't subpartion inactive area in rd_use_partition."
Alex Converse [Tue, 25 Mar 2014 00:04:30 +0000 (17:04 -0700)]
Merge "Deduplicate and rename mode info step."
Dmitry Kovalev [Mon, 24 Mar 2014 23:12:42 +0000 (16:12 -0700)]
Merge "Initialization code cleanup."
Dmitry Kovalev [Mon, 24 Mar 2014 22:56:25 +0000 (15:56 -0700)]
Merge "General cleanup in vp9_decoder.{h, c}."
Dmitry Kovalev [Mon, 24 Mar 2014 22:54:38 +0000 (15:54 -0700)]
Merge "Using local variable for token_cache."
Dmitry Kovalev [Mon, 24 Mar 2014 22:52:09 +0000 (15:52 -0700)]
Merge "Adding get_buf_from_mv() function."
Dmitry Kovalev [Mon, 24 Mar 2014 22:44:50 +0000 (15:44 -0700)]
Merge "Cleaning up vp9_aq_cyclicrefresh.{c, h}."
Yunqing Wang [Mon, 24 Mar 2014 21:54:25 +0000 (14:54 -0700)]
Fix uninitialized read in postprocessing
This patch fixed WebRTC Issue 3020: "Uninit error at
vp8_mbpost_proc_down_xmm". The first 8 values in d were not initialized,
but was accessed. This patch fixed c code as well as mmx and sse2 code.
Change-Id: Iaa5b41a4ed3bea971b15fb826ce34b7ab4e36fb1
Jingning Han [Fri, 21 Mar 2014 18:05:39 +0000 (11:05 -0700)]
Enable recursive partition selection for non-RD coding mode
This commit enables a recursive partition type search for non-RD
mode decisions. It allows the encoder to choose variable block
sizes in a 64x64 block based on rate-distortion modeling.
It improves speed -6 coding efficiency for rtc set by 2.4%. Most
of the gains come from 32-40dB range, where many sequences gain
about 5% to 20%. Local tests suggest there is no speed change.
Change-Id: I06300016e500a21652812b7b3b081db39a783d66
Jim Bankoski [Mon, 24 Mar 2014 21:18:24 +0000 (14:18 -0700)]
Merge "vp9_write_bit_buffer.h header statics converted to globals"
Jim Bankoski [Mon, 24 Mar 2014 21:18:07 +0000 (14:18 -0700)]
Merge "vp9_variance.h header static version converted to global"
Dmitry Kovalev [Mon, 24 Mar 2014 21:17:23 +0000 (14:17 -0700)]
Merge "Adding init_rate_control() function + cleanup."
Alex Converse [Wed, 19 Mar 2014 00:00:30 +0000 (17:00 -0700)]
Don't subpartion inactive area in rd_use_partition.
Change-Id: I50db8d3c99eea39e46cc5876cb1f49513c084073
Alex Converse [Fri, 21 Mar 2014 21:24:03 +0000 (14:24 -0700)]
Deduplicate and rename mode info step.
Change-Id: Ie624a119ce8e0891f4ca396040d679e22ef8ce27
Yaowu Xu [Mon, 24 Mar 2014 19:48:27 +0000 (12:48 -0700)]
Align threading LFWorkerData to 32 bytes.
This is to silent a number misalignment warning reported by valgrind.
Change-Id: Ia47a06010b28d7a88dde21f3e4ccb9308fc6f8cf
Dmitry Kovalev [Mon, 24 Mar 2014 19:21:22 +0000 (12:21 -0700)]
Initialization code cleanup.
Change-Id: I47a8b4bf9a6cc0063d1a6785eaaad641d0659e24
Dmitry Kovalev [Mon, 24 Mar 2014 17:48:14 +0000 (10:48 -0700)]
Cleaning up vp9_aq_cyclicrefresh.{c, h}.
Change-Id: I288e5ffade508fc3c803986d47ccf06df8d784dd
Dmitry Kovalev [Mon, 24 Mar 2014 18:27:08 +0000 (11:27 -0700)]
Moving setup_{key, inter}_frame() to vp9_onyx_if.c.
Change-Id: I044e393438c7b58a6393e20efa38fd03d745ad33
Jim Bankoski [Mon, 24 Mar 2014 18:08:27 +0000 (11:08 -0700)]
Merge "refactor reset_skip_txfm_size and elimate a lot of code"
Jim Bankoski [Mon, 24 Mar 2014 18:07:53 +0000 (11:07 -0700)]
Merge "vp9_onyx_int.h convert header statics to inline"
Dmitry Kovalev [Mon, 24 Mar 2014 18:02:27 +0000 (11:02 -0700)]
Cleaning up vp9_entropymv.c.
Change-Id: I01b3530779da89acb84c71bac5ccac456f00c5ac
Marco Paniconi [Mon, 24 Mar 2014 17:54:52 +0000 (10:54 -0700)]
Merge "Fix to a static warning."
Dmitry Kovalev [Mon, 24 Mar 2014 17:54:22 +0000 (10:54 -0700)]
Adding init_rate_control() function + cleanup.
Change-Id: I49b0937a8dd3520f20435a4817a408a094ab1679
Minghai Shang [Mon, 24 Mar 2014 17:54:06 +0000 (10:54 -0700)]
Merge "[svc] Add min/max q and min/max bitrate in svc test app"
Yunqing Wang [Mon, 24 Mar 2014 17:52:32 +0000 (10:52 -0700)]
Merge "AVX2 SAD Optimization:"
Jim Bankoski [Mon, 3 Mar 2014 23:40:13 +0000 (15:40 -0800)]
vp9_write_bit_buffer.h header statics converted to globals
Change-Id: I12c29a630da1fbc5508f11b61d182f9b527b3a35
Jim Bankoski [Mon, 3 Mar 2014 23:32:38 +0000 (15:32 -0800)]
vp9_variance.h header static version converted to global
Change-Id: I8d02cdb5e7fef02b8c95413dfd239fa51a8c7777
Marco Paniconi [Mon, 24 Mar 2014 16:31:17 +0000 (09:31 -0700)]
Fix to a static warning.
Change-Id: I398decf319c8f4d1b3abe1f276e009840e61b684
Dmitry Kovalev [Mon, 24 Mar 2014 16:27:06 +0000 (09:27 -0700)]
Merge "Removing unused members from VP9D_CONFIG struct."
Jim Bankoski [Mon, 24 Mar 2014 16:26:20 +0000 (09:26 -0700)]
vp9_onyx_int.h convert header statics to inline
Change-Id: I7872b726511887494107466a946e2b34e3d74045
Dmitry Kovalev [Mon, 24 Mar 2014 16:02:06 +0000 (09:02 -0700)]
Merge "Cleaning up vp9_loopfilter.c."
Jim Bankoski [Mon, 24 Mar 2014 15:51:45 +0000 (08:51 -0700)]
refactor reset_skip_txfm_size and elimate a lot of code
Change-Id: Id70bd0ff8836c28d9c8653e018e071ca9fb06610
hkuang [Fri, 21 Mar 2014 21:27:03 +0000 (14:27 -0700)]
Change back the scaling calculation.
Let the calculation to be compatible with Google's HW implementation.
Change-Id: I22e179888cdb0419e230351c0a47661b37051fef
Jim Bankoski [Tue, 11 Mar 2014 16:28:45 +0000 (09:28 -0700)]
vp9_block.h static reconverted to inline
Change-Id: I0e7d2815839d8a64250116a5486570d03659a4c0
Dmitry Kovalev [Sun, 23 Mar 2014 05:31:48 +0000 (22:31 -0700)]
Merge "Removing redundant {above, left}_seg_context manipulation code."
Dmitry Kovalev [Sun, 23 Mar 2014 05:31:38 +0000 (22:31 -0700)]
Merge "Removing output_partition from vp9."
Jingning Han [Sat, 22 Mar 2014 04:43:02 +0000 (21:43 -0700)]
Merge "Reformat non-RD coding flow"
Dmitry Kovalev [Sat, 22 Mar 2014 04:19:31 +0000 (21:19 -0700)]
Merge "Convert use_fast_lpf_pick to an enum."
Dmitry Kovalev [Sat, 22 Mar 2014 04:19:18 +0000 (21:19 -0700)]
Merge "Renaming and making vp9_update_mode_info_border() static."
Dmitry Kovalev [Sat, 22 Mar 2014 01:33:20 +0000 (18:33 -0700)]
Merge "Cleaning up vp9_svc_layercontext.c"
Minghai Shang [Fri, 14 Mar 2014 18:57:51 +0000 (11:57 -0700)]
[svc] Add min/max q and min/max bitrate in svc test app
Change-Id: I67ea45119f23659279d24aa67eb823c751ac86fc
Marco Paniconi [Sat, 22 Mar 2014 00:17:53 +0000 (17:17 -0700)]
Merge "Rename the aq_mode files."
Jingning Han [Thu, 20 Mar 2014 21:06:54 +0000 (14:06 -0700)]
Reformat non-RD coding flow
This commit reformats non-RD coding flow layout to allow mode
decision with fixed and variable block sizes.
Change-Id: I2cdd3bb9f26c499ee4a9849004fd925cdd195d09
Dmitry Kovalev [Fri, 21 Mar 2014 23:31:15 +0000 (16:31 -0700)]
Cleaning up vp9_loopfilter.c.
Change-Id: I7c7cf7d3c7b00d1c74ffa8aa8fb8d78a0e48326f
Dmitry Kovalev [Fri, 21 Mar 2014 23:10:51 +0000 (16:10 -0700)]
Removing output_partition from vp9.
Change-Id: I5e0c558b86cf300722ab34fa45ab4ad7c81bd4df
Dmitry Kovalev [Fri, 21 Mar 2014 22:57:31 +0000 (15:57 -0700)]
Adding get_buf_from_mv() function.
Change-Id: I21aff45546778b8393e2edf2d810448dec1f4cdb
Frank Galligan [Fri, 21 Mar 2014 22:24:39 +0000 (15:24 -0700)]
Merge "Fix libvpx VP9 decoder dr memory errors"
Marco Paniconi [Fri, 21 Mar 2014 21:31:53 +0000 (14:31 -0700)]
Rename the aq_mode files.
Change-Id: Id76a628495c822e23825b66a7589b4a3279680e2
Alex Converse [Fri, 21 Mar 2014 21:59:26 +0000 (14:59 -0700)]
Convert use_fast_lpf_pick to an enum.
Change-Id: I06e17b489dea74dedea356c73ef72dc5ffad3a30
Dmitry Kovalev [Fri, 21 Mar 2014 21:37:01 +0000 (14:37 -0700)]
Making c++ compiler happier.
Change-Id: Ie224e968589bdb0774dc112e6f6df56cc0447465
Dmitry Kovalev [Fri, 21 Mar 2014 21:20:13 +0000 (14:20 -0700)]
General cleanup in vp9_decoder.{h, c}.
Change-Id: I68819558a9c5ac6ea85fe62260712af6f4cc46b7
Dmitry Kovalev [Fri, 21 Mar 2014 21:08:19 +0000 (14:08 -0700)]
Removing unused members from VP9D_CONFIG struct.
Change-Id: I83a201ab4dcf2f00131f2030f382c6dbfcb39d7e
Dmitry Kovalev [Fri, 21 Mar 2014 21:03:49 +0000 (14:03 -0700)]
Merge "Tiny vp9_picklpf.c cleanup."