Yaowu Xu
ecf392a155
Merge "minor spelling cleanup in comments"
2014-02-14 14:29:35 -08: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
Deb Mukherjee
12ae6eaf21
Enforce max-intra-pct in one-pass cbr mode
...
This was inadvertently left out in a previous refactoring step.
Change-Id: Idf3350e95152f876a1a1a4591dd30c8981856c96
2014-02-14 14:27:02 -08:00
Jim Bankoski
323a7120b9
Merge "vp9_rdopt.c : Silence more V.S. compiler warnings."
2014-02-14 14:23:51 -08:00
Jim Bankoski
f25dec89b8
Merge "vp9_bitstream.c resolve warnings in vs"
2014-02-14 14:17:39 -08:00
Jim Bankoski
57704bff94
Merge "vp9_pickmode.c resolve vs issue"
2014-02-14 14:16:18 -08:00
Jim Bankoski
8dc39a7540
Merge "vp9_vaq.c resolve vs warnings"
2014-02-14 14:15:38 -08:00
levytamar82
3068d7d944
SSSE3 convolution optimization
...
Optimizing all SSSE3 assembly for convolution:
1. vp9_filter_block1d4_h8_sse2
2. vp9_filter_block1d8_h8_sse2
3. vp9_filter_block1d16_h8_sse2
4. vp9_filter_block1d4_v8_sse2
5. vp9_filter_block1d8_v8_sse2
6. vp9_filter_block1d16_v8_sse2
my optimization include:
-processing 2x8 elements in one 128 bit register instead of processing
8 elements in one 128 bit register.
-removing unecessary loads.
This optimization gives between 2.4% user level gain for 480p input
and 1.6% user level gain for 720p.
This Optimization is done only for 64 bit
Change-Id: Ic07fce2f9360329b4f2d956efda1480ae958766b
2014-02-14 15:08:42 -07:00
Paul Wilkins
40e374bbae
vp9_rdopt.c : Silence more V.S. compiler warnings.
...
Change-Id: I151c6c9396b8ea1ce2e05b80359f60f0d38af138
2014-02-14 11:28:37 -08:00
Jim Bankoski
00717e804c
vp9_bitstream.c resolve warnings in vs
...
Change-Id: I65677b7822204dc7344c67b8080e90633afc13dc
2014-02-14 11:19:39 -08:00
Jim Bankoski
524bac612a
vp9_pickmode.c resolve vs issue
...
Change-Id: Ibe4276fa9ffeb2ef30871d6db8ac75c4648f1e58
2014-02-14 11:19:31 -08:00
Jim Bankoski
a60b76bd09
vp9_vaq.c resolve vs warnings
...
Change-Id: I8f1107a33f0ec51010fb00eae3d28ee8b4d748c2
2014-02-14 11:18:59 -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
80ccb45c9e
Merge "vp9_ratectrl - convert buffers to int64 to avoid casting"
2014-02-14 09:42:21 -08:00
Jim Bankoski
e63b78a4bb
Merge "vp9_write_bit_buffer.h add consts to suppress warnings in vs"
2014-02-14 09:42:12 -08:00
Jim Bankoski
cd6b9936a6
Merge "vp9_ratectrl.h resolve visual studio warnings"
2014-02-14 09:09:16 -08:00
Jim Bankoski
5cc0de90d2
Merge "vp9_onyx_int.h resolve visual studio warning errors"
2014-02-14 09:09:06 -08:00
Jim Bankoski
5750f78d61
Merge "fast approximate model_rd_from_var_lapndz"
2014-02-14 09:08:52 -08:00
Jim Bankoski
e727bcf7ce
Merge "vp9_mcomp.c visual studio warnings resolved"
2014-02-14 09:08:34 -08:00
Jim Bankoski
0c7fbe0057
Merge "vp9_firstpass.c visual studio warnings addressed"
2014-02-14 09:08:27 -08:00
Jim Bankoski
fb4f10a26e
vp9_ratectrl - convert buffers to int64 to avoid casting
...
Change-Id: Ifd6b2d36d91237b5f38853a3a8a529d8be38ba09
2014-02-14 07:36:47 -08:00
Jim Bankoski
0abb06571b
vp9_write_bit_buffer.h add consts to suppress warnings in vs
...
Change-Id: Iacda473090ae84c798f1d93df8284f34bdf646a5
2014-02-14 07:30:33 -08:00
Jim Bankoski
e5dda3b677
vp9_ratectrl.h resolve visual studio warnings
...
Change-Id: If3a2edd744eb76337fa78f34d0e059cda2c6da54
2014-02-14 06:36:44 -08:00
Jim Bankoski
27f4b14c65
vp9_onyx_int.h resolve visual studio warning errors
...
Change-Id: Iec8a51bdea6d6c916051d3bc5bbc6d00754d0cc8
2014-02-14 06:36:29 -08:00
Jim Bankoski
6025ec7901
vp9_mcomp.c visual studio warnings resolved
...
Change-Id: I7546cc8db4decbcd094ad76c64385b97666331b0
2014-02-14 06:35:36 -08:00
Jim Bankoski
bf5f2e7f90
vp9_firstpass.c visual studio warnings addressed
...
Change-Id: I6fe9ec50f937b12fd9c9321465270e289dbbc59d
2014-02-14 06:10:36 -08:00
Dmitry Kovalev
e9cefd1b20
Cleanup: removing "ptr" suffix from var names.
...
Change-Id: If8e340dd6823323025a12f851e78fffdbcaaf6f8
2014-02-13 19:23:24 -08:00
Dmitry Kovalev
19a8eee1f0
Cleaning up pack_inter_mode_mvs() function.
...
Change-Id: I48ad06e3e1ae9720a0683022621f4504e3bebce6
2014-02-13 19:21:10 -08:00
Dmitry Kovalev
bdd8966439
Merge "Removing reference to non-existing context_counters array."
2014-02-13 17:35:19 -08:00
Yaowu Xu
8d646becb6
Merge "Removed the reset of mode_info from previous frame"
2014-02-13 17:03:50 -08:00
Alex Converse
27f809db91
Merge "Disable using golden frame modes if golden frames are not being used"
2014-02-13 16:39:32 -08:00
Frank Galligan
fb8c246b70
Merge "Add VP9 decoder support for external frame buffers"
2014-02-13 15:29:52 -08:00
Marco Paniconi
e590e087d5
Fix target frame size setting, for 1pass cbr.
...
Only use layered average size if number_temporal_layers > 1.
Also removed unneeded commented-out line, and change some parameter
setting in vpx_temporal_scalable_patterns.c
Change-Id: Ic86e43e7daf0313e8c5a4aba1497299158111955
2014-02-13 15:21:09 -08:00
Dmitry Kovalev
40af118a41
Removing reference to non-existing context_counters array.
...
Change-Id: I84668fa7b9487102e9bde5aea10f5f42efcd042c
2014-02-13 15:08:07 -08:00
Alex Converse
edec808787
Disable using golden frame modes if golden frames are not being used
...
Change-Id: I662c480ad49a242e10f1edb0c339ddbe2c6bccf4
2014-02-13 13:38:59 -08:00
Frank Galligan
a4f30a5023
Add VP9 decoder support for external frame buffers
...
Added support for external frame buffers to libvpx's VP9 decoder.
If the external frame buffer functions are set then libvpx will
call the get function whenever it needs a new frame buffer to
decode a frame into. And it will call the release function
whenever there are no more references to that buffer.
Change-Id: Id2934d005f606af6e052fb6db0d5b7c02f567522
2014-02-13 13:14:19 -08:00
Dmitry Kovalev
56f2752231
Merge "Using MV instead of int_mv inside vp9_full_pixel_diamond()."
2014-02-13 12:55:10 -08:00
James Zern
46025ce5a4
Merge "vp9/vp9_cx_iface: Silence ts_number_layers MSVC warnings"
2014-02-13 12:51:36 -08:00
Yaowu Xu
896d79a57e
Removed the reset of mode_info from previous frame
...
Prior to this commit, both encoder and decoder reset mode/mv info from
previous frame in error resilient mode to ensure bitstreams are able to
decode when there is loss of frame in decoder side. However, this is
not necessary. This commit changed to remove the reset, so encoder can
continue to use mode/mv/partition information from previously encoded
frame without affecting decodeablilty under loss of frame.
Change-Id: I0279f862900dc647fb471ae3389770bb1b9f454f
2014-02-13 12:48:08 -08:00
Jingning Han
95abad9169
Merge "Remove redundant set_offsets in rtc coding mode"
2014-02-13 12:10:45 -08:00
Tom Finegan
ad2fa5e7d5
vp9/vp9_cx_iface: Silence ts_number_layers MSVC warnings
...
Silence signed/unsigned mismatch warnings by adding casts where
ts_number_layers does not match the sign of the variable to which
it is being compared.
Change-Id: Iab25e18c877d158b2b2b417de7da94669648b2fa
2014-02-13 11:41:16 -08:00
Jingning Han
cc10ee0add
Initialize internal buffer pointers in rtc mode
...
In rtc coding mode, the encoder is running non-RD mode decision. It
does not need dual buffer swap as was the case in the RD mode. This
commit initializes the internal buffer pointers outside the block
coding loop for rtc mode.
Change-Id: Ie076705c60d6b7919217e3f1dfd49e7db5064ac2
2014-02-13 11:41:08 -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
Frank Galligan
e5a1b214f7
Merge "Fix neon wide loopfilter for filter8 only branch"
2014-02-13 09:52:48 -08:00
Yunqing Wang
92824a9cbc
Merge "AVX2 Convolve Optimization"
2014-02-13 09:43:55 -08:00
Jingning Han
4712877ef6
Remove redundant set_offsets in rtc coding mode
...
The functionalities of set_offsets() are subsumed in later
set_partitioning() and rtc_use_partition() functions, hence removed.
Change-Id: Ie514b13cb66c2379f13d0be9b1da4c12ca4581e5
2014-02-13 09:41:58 -08:00
Paul Wilkins
d84978b84f
Merge changes I121fe66c,I94f57f8a
...
* changes:
Remove some cases for turning off arf.
Modified Aq1 and Aq2
2014-02-13 09:31:53 -08:00
Jim Bankoski
32d07c626e
Merge "vp9_mbgraph.c static analysis issues resolved."
2014-02-13 08:32:12 -08:00
Jim Bankoski
4f34df4bf2
Merge "vp9_temporal_filter.c static analysis issue resolution"
2014-02-13 08:32:01 -08:00
Jim Bankoski
6a6797f5c9
Merge "vp9_pickmode.c static analysis issues resolved"
2014-02-13 08:31:49 -08:00
Paul Wilkins
c30a9cd97d
Remove some cases for turning off arf.
...
Flipping arf on and off too often is hurting some clips.
This change makes no difference for 50-75% of our test
clips but helps some by a big margin. (eg. std-hd crew
by 6% and one of the YT and YT-hd clips by 14%)
Average improvements for 2 pass, speed 2 (psnr,ssim)
are as follows:-
derf 0.165%, 0.210%
yt 1.210%, 1.464%
yt-hd 1.189%, 1.471%
std-hd 1.031%, 0.886%
Change-Id: I121fe66cfb4a62d384b23b484a7d648789641969
2014-02-13 14:51:38 +00:00
Jim Bankoski
72c97b103e
vp9_mbgraph.c static analysis issues resolved.
...
Change-Id: I6ec6e072fcd59f9b5fac4ce221a86f9078103ae3
2014-02-13 06:43:44 -08:00
Jim Bankoski
677b5375aa
vp9_temporal_filter.c static analysis issue resolution
...
Change-Id: I08a4364672cf8171932e8e85fb74fcbfa4b27d2d
2014-02-13 06:22:23 -08:00
Jim Bankoski
d7be0fd5ea
Merge "vp9_rdopt.c static analysis issues resolved"
2014-02-13 06:22:08 -08:00
Jim Bankoski
c6eaf5f9f9
vp9_pickmode.c static analysis issues resolved
...
Change-Id: I716ea2967c6771d7adea571406f315a3197eab93
2014-02-13 06:20:57 -08:00
Jim Bankoski
7336dfe2ae
Merge "static analysis warning in vp9_ratectrl.c"
2014-02-13 06:20:35 -08:00
Jim Bankoski
d2cd088cb7
Merge "vp9_mcomp.c static analysis issues"
2014-02-13 06:20:16 -08:00
Jim Bankoski
35e24e33d3
Merge "clear out static analysis warning"
2014-02-13 06:20:05 -08:00
Jim Bankoski
75ac2913de
Merge "clean out static analyzer warnings vp9_encodeframe.c"
2014-02-13 06:19:26 -08:00
levytamar82
876c72a093
AVX2 Convolve Optimization
...
Two convolve functions were optimized for AVX2:
1. vp9_filter_block1d16_h8
2. vp9_filter_block1d16_v8
vp9_filter_block1d16_v8 was optimized for AVX2 by reducing the number of
loop strides by half, two strides were processed in parallel.
vp9_filter_block1d16_v8 was also optimized in the same way also some of the
loads were being done outside of the loop and by that preventing redundant
loads.
This Optimization gives 43% function level gain and 1.3% user level gain.
Now can be compiled in Windows
Change-Id: I2714124cfb0c14a77d7a0ce126a20db92ffbf92c
2014-02-12 20:45:31 -07:00
Frank Galligan
b41acbf9bb
Fix neon wide loopfilter for filter8 only branch
...
The current code removed the check to only perform the filter8.
Change-Id: Ie54e19a77745042a5660eab986d9ef1c42e82410
2014-02-12 18:36:17 -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
Jingning Han
dea1604ed2
Merge "Remove unnecessary vp9_setup_buffer_inter use"
2014-02-12 17:51:39 -08:00
Jingning Han
3818132a4b
Merge "Remove inactive control parameters"
2014-02-12 17:51:30 -08:00
Jingning Han
91b5145673
Merge "Remove unused using_small_partition_info functions"
2014-02-12 17:51:18 -08:00
Jingning Han
ce79e8a114
Merge "Remove unused function in vp9_encodeframe"
2014-02-12 17:51:11 -08:00
Dmitry Kovalev
004c8c636e
Renaming skip_coeff to skip for consistency.
...
Change-Id: I036e815ca63d00cba71202ae09ba0f6ef745dcb8
2014-02-12 17:44:12 -08:00
Dmitry Kovalev
8dd9ca4c32
Merge "Adding consts to mv search function arguments."
2014-02-12 17:31:52 -08:00
Jim Bankoski
bb2d683c26
vp9_rdopt.c static analysis issues resolved
...
Change-Id: Id53b574a4ecb5c8749383b3758c46b6bc1b275d5
2014-02-12 17:00:57 -08:00
Andrew Russell
549c31f8ae
minor spelling cleanup in comments
...
Change-Id: Ia91c6c406273345b08505097ffe1af3896980f06
2014-02-12 16:32:51 -08:00
Dmitry Kovalev
733a17d253
Converting int_mv to MV.
...
Change-Id: Id15285aa48ac6d8fec19a1946e6391412d84f5be
2014-02-12 15:40:43 -08:00
Alex Converse
02c063797b
Merge "Cleanup tokenize_b and hoist some invarients out of the loop."
2014-02-12 15:35:55 -08:00
Jingning Han
3c3dd1d5a3
Remove unnecessary vp9_setup_buffer_inter use
...
This function initializes the predictor buffer pointers and
calculates reference motion vectors. It is only needed in the settings
of inter frame coding. Hence removing it from the key frame coding
branch in rtc_use_partition.
Change-Id: Ic4e16c7467a5f32be4e0bf619ef9d57afb4a7075
2014-02-12 15:10:23 -08:00
Frank Galligan
f860408911
Merge "Fix frames that have no references to them."
2014-02-12 14:38:26 -08:00
Dmitry Kovalev
50712fcaa9
Adding consts to mv search function arguments.
...
Change-Id: Ie79114bba4f0cea55d9f701e20d2be2017630f3b
2014-02-12 14:28:23 -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
Jingning Han
25479e94a4
Remove unused using_small_partition_info functions
...
This function is deprecated after the re-design of partition search
that runs big block size, then four-way split, followed by
rectangular block sizes. This commit removes the related functions.
Change-Id: I417549c8e0fa3cf35bd29816b805dd4e7c3660c6
2014-02-12 12:24:10 -08:00
Jingning Han
2e86d2de85
Remove unused function in vp9_encodeframe
...
The function rd_pick_reference_frame can be deprecated. Its use was
subsumed by the adaptive motion search control.
Change-Id: Icb0c2fa335f0f06fa7b79a71f972d9fa54d750db
2014-02-12 12:23:29 -08:00
Dmitry Kovalev
fffb3be765
Merge "Cleaning up vp9_full_search_sad_c() function."
2014-02-12 12:14:34 -08:00
Dmitry Kovalev
0109d757ee
Merge "Removing vp9_foreach_transformed_block_uv() function."
2014-02-12 12:11:14 -08:00
Jim Bankoski
eb5889f882
static analysis warning in vp9_ratectrl.c
...
Change-Id: I8aa3dd068d9a7225b3e8b24392a7b4a54b9435dd
2014-02-12 11:54:53 -08:00
Jim Bankoski
f324f0c54e
vp9_mcomp.c static analysis issues
...
Change-Id: I8c0023e3f03297993431e21158ee3821af75f82d
2014-02-12 11:54:47 -08:00
Jim Bankoski
4c2074f969
clear out static analysis warning
...
Change-Id: Ic8708bb8a56ab30617c8ef47072b53928a53a1a3
2014-02-12 11:54:38 -08:00
Jim Bankoski
df86c4497a
clean out static analyzer warnings vp9_encodeframe.c
...
Change-Id: If14d2fc8cf4202d24f7d87ea74b8ce88a6a816d9
2014-02-12 11:54:04 -08:00
Adrian Grange
4618952a59
Merge "Minor cleanup."
2014-02-12 11:14:10 -08:00
Jingning Han
3602c4312d
Merge "Use INTER_OFFSET in vp9_pick_inter_mode"
2014-02-12 10:26:06 -08:00
Yaowu Xu
56d0b36092
Merge "Fixed a bug where no valid partition is allowed"
2014-02-12 10:13:49 -08:00
Deb Mukherjee
cf479baa03
Merge "Removes active_worst_quality feedback"
2014-02-12 09:20:31 -08:00
Adrian Grange
896a9ab934
Minor cleanup.
...
Change-Id: I6ef0ce5371ed9e2a415dd8c08c93ad603f0ad7b2
2014-02-12 09:18:00 -08:00
Jingning Han
e8b7610e8f
Use INTER_OFFSET in vp9_pick_inter_mode
...
Cosmetic change to use pre-defined macros.
Change-Id: I93e9fa90113d0242599048940b39694660385a6f
2014-02-12 09:14:29 -08:00
Yaowu Xu
69a6871904
Fixed a bug where no valid partition is allowed
...
Change-Id: I4d2729dc5c46db2847700256941a66b0957c105d
2014-02-12 09:00:34 -08:00
James Yu
619f29cdb0
Remove redundant arm neon instructions.
...
Change-Id: I1fabad59747eb5f68c64275a36c3a1d94daf32a3
Signed-off-by: James Yu <james.yu@linaro.org>
2014-02-11 21:19:12 -08:00
Yunqing Wang
356a7e9642
Merge "Enable encode_breakout in real time encoding"
2014-02-11 21:07:24 -08:00
Frank Galligan
1604ad2149
Fix frames that have no references to them.
...
BasicRateTargeting3TemporalLayers found an error with
the get/release frame buffer management.
Change-Id: Iccff25cba1d2f276f2a0d0fb7b20cf99b4405549
2014-02-11 18:34:21 -08:00
Dmitry Kovalev
eff5b79260
Removing init_rdcost_stack() + cleanup.
...
Change-Id: I6fcbc833063c658749b2d43bb9968a5762647061
2014-02-11 18:08:06 -08:00
Dmitry Kovalev
79dd1f8441
Removing vp9_foreach_transformed_block_uv() function.
...
Change-Id: I35ec77b71e6fd686865cead9281e4dd9e9bc9e86
2014-02-11 18:06:00 -08:00
Dmitry Kovalev
9453c64726
Merge "Hiding encode_b_args struct inside vp9_encodemb.c."
2014-02-11 17:36:05 -08:00