]> granicus.if.org Git - libvpx/log
libvpx
10 years agoMerge "Don't use gf_update by default for 1-pass CBR."
Marco Paniconi [Fri, 10 Jan 2014 19:43:20 +0000 (11:43 -0800)]
Merge "Don't use gf_update by default for 1-pass CBR."

10 years agoMerge "Fix Issue #679: vp9 C loop filter produces valgrind warning."
hkuang [Fri, 10 Jan 2014 18:59:00 +0000 (10:59 -0800)]
Merge "Fix Issue #679:  vp9 C loop filter produces valgrind warning."

10 years agoDon't use gf_update by default for 1-pass CBR.
Marco Paniconi [Wed, 8 Jan 2014 20:34:18 +0000 (12:34 -0800)]
Don't use gf_update by default for 1-pass CBR.

Change-Id: I5df6abceb0a2a69706feadeb820b593cae88f573

10 years agoMerge "Adding {get, set}_rate_correction_factor() functions."
Dmitry Kovalev [Fri, 10 Jan 2014 18:30:04 +0000 (10:30 -0800)]
Merge "Adding {get, set}_rate_correction_factor() functions."

10 years agoFix Issue #679: vp9 C loop filter produces valgrind warning.
hkuang [Thu, 9 Jan 2014 18:36:50 +0000 (10:36 -0800)]
Fix Issue #679:  vp9 C loop filter produces valgrind warning.

Fix the valgrind error due to access uninitialized
memory in loopfilter.

Change-Id: I52fccf5ede845ee1f4c13d3bd909b8f220c0bdff

10 years agoMerge "Keep buffer clipped to maximum in change_config."
Marco Paniconi [Fri, 10 Jan 2014 17:33:33 +0000 (09:33 -0800)]
Merge "Keep buffer clipped to maximum in change_config."

10 years agoRevert "SSSE3 convolution optimization"
Paul Wilkins [Fri, 10 Jan 2014 12:28:16 +0000 (12:28 +0000)]
Revert "SSSE3 convolution optimization"

This reverts commit 511d218c60b9b6c1ab9383db746815e907af0359.

In current form intrinsics break borg build.

Change-Id: Ied37936af841250ecff449802e69a3d3761c91b9

10 years agoMerge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P2"
Jingning Han [Fri, 10 Jan 2014 02:17:25 +0000 (18:17 -0800)]
Merge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P2"

10 years agoMerge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P1"
Jingning Han [Fri, 10 Jan 2014 02:17:12 +0000 (18:17 -0800)]
Merge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P1"

10 years agoMerge "Cleanups on refresh flags"
Deb Mukherjee [Fri, 10 Jan 2014 01:38:45 +0000 (17:38 -0800)]
Merge "Cleanups on refresh flags"

10 years agoCleanups on refresh flags
Deb Mukherjee [Thu, 9 Jan 2014 01:55:07 +0000 (17:55 -0800)]
Cleanups on refresh flags

Cleanups on frame refresh flags and external overrides.

Change-Id: Ia6a56fe1bde906b1dc3fcbf4ef1c7b207cd2df2d

10 years agoMerge "Use the correct member for initialization"
Johann [Thu, 9 Jan 2014 23:21:19 +0000 (15:21 -0800)]
Merge "Use the correct member for initialization"

10 years agoMerge "Simplify set_rt_speed_feature()"
Yaowu Xu [Thu, 9 Jan 2014 23:02:24 +0000 (15:02 -0800)]
Merge "Simplify set_rt_speed_feature()"

10 years agoKeep buffer clipped to maximum in change_config.
Marco Paniconi [Thu, 9 Jan 2014 22:17:00 +0000 (14:17 -0800)]
Keep buffer clipped to maximum in change_config.

Under a configuration change, where the bitrate suddenly decreases,
the buffer level may be larger than maximum allowed (for that first frame to be encoded after change_config).
This change keeps it clipped to its maximum level.

Change-Id: I4d0b5b3d1fd8148600dd39e02bd630c9464baba5

10 years agoMerge "Renaming 'Sharpness' to 'sharpness'."
Dmitry Kovalev [Thu, 9 Jan 2014 21:42:55 +0000 (13:42 -0800)]
Merge "Renaming 'Sharpness' to 'sharpness'."

10 years agoSimplify set_rt_speed_feature()
Yaowu Xu [Thu, 9 Jan 2014 19:50:24 +0000 (11:50 -0800)]
Simplify set_rt_speed_feature()

1. Made speed choices to be progressive
2. Adjusted rt speed settings to achieve better speed/quality

Overall, rt-5 gained 2.5% in compression/quality, encoding time of 720p
niklas clip goes from 137,052ms to 121,874ms

Change-Id: Ia6e7e1e15225395a868a2f1059c3db8e266e1600

10 years agoOptimze inv 16x16 DCT with 10 non-zero coeffs - P2
Jingning Han [Thu, 9 Jan 2014 20:43:40 +0000 (12:43 -0800)]
Optimze inv 16x16 DCT with 10 non-zero coeffs - P2

This commit further optimizes SSE2 operations in the second 1-D
inverse 16x16 DCT, with (<10) non-zero coefficients. The average
runtime of this module goes down from 779 cycles -> 725 cycles.

Change-Id: Iac31b123640d9b1e8f906e770702936b71f0ba7f

10 years agoMerge "SSSE3 convolution optimization"
Yunqing Wang [Thu, 9 Jan 2014 20:39:47 +0000 (12:39 -0800)]
Merge "SSSE3 convolution optimization"

10 years agoSSSE3 convolution optimization
levytamar82 [Thu, 21 Nov 2013 22:49:29 +0000 (15:49 -0700)]
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 done only for 64bit.

Change-Id: Icb586dc0c938b56699864fcee6c52fd43b36b969

10 years agoMerge "Removing examples code generation and making them static."
Dmitry Kovalev [Thu, 9 Jan 2014 19:15:46 +0000 (11:15 -0800)]
Merge "Removing examples code generation and making them static."

10 years agoMerge "Using VP9_COMMON instead of VP9_COMP."
Dmitry Kovalev [Thu, 9 Jan 2014 19:15:29 +0000 (11:15 -0800)]
Merge "Using VP9_COMMON instead of VP9_COMP."

10 years agoMerge "VP8 for ARMv8 by using NEON intrinsics 01"
Johann [Thu, 9 Jan 2014 18:39:05 +0000 (10:39 -0800)]
Merge "VP8 for ARMv8 by using NEON intrinsics 01"

10 years agoVP8 for ARMv8 by using NEON intrinsics 01
James Yu [Tue, 17 Dec 2013 10:23:38 +0000 (18:23 +0800)]
VP8 for ARMv8 by using NEON intrinsics 01

Add bilinearpredict_neon_intrinsics.c
- vp8_bilinear_predict4x4_neon
- vp8_bilinear_predict8x4_neon
- vp8_bilinear_predict8x8_neon
- vp8_bilinear_predict16x16_neon

Change-Id: I33dfa502881219841b442dda32b73220e51b716b
Signed-off-by: James Yu <james.yu@linaro.org>
10 years agoMerge "Fix rate allocation bug."
Paul Wilkins [Thu, 9 Jan 2014 11:00:15 +0000 (03:00 -0800)]
Merge "Fix rate allocation bug."

10 years agoUse the correct member for initialization
Johann [Thu, 9 Jan 2014 01:42:04 +0000 (17:42 -0800)]
Use the correct member for initialization

On Windows this fails with:
error C2440: 'initializing': cannot convert from int_mv to uint32_t

Change-Id: I51630efd0e83a0ce620c91aa7859dd6fc1572e99

10 years agoUsing VP9_COMMON instead of VP9_COMP.
Dmitry Kovalev [Thu, 9 Jan 2014 02:36:38 +0000 (18:36 -0800)]
Using VP9_COMMON instead of VP9_COMP.

Change-Id: If7d3958653104f3e170853e931f8489de3ecf3cc

10 years agoMerge "Removing direct references to {lst_fb, gld_fb, alt_fb}_idx fields."
Dmitry Kovalev [Thu, 9 Jan 2014 02:12:09 +0000 (18:12 -0800)]
Merge "Removing direct references to {lst_fb, gld_fb, alt_fb}_idx fields."

10 years agoMerge "Install test sources for MSVS"
Johann [Thu, 9 Jan 2014 01:59:30 +0000 (17:59 -0800)]
Merge "Install test sources for MSVS"

10 years agoMerge "Cleanups around cpi->common."
Dmitry Kovalev [Thu, 9 Jan 2014 01:48:28 +0000 (17:48 -0800)]
Merge "Cleanups around cpi->common."

10 years agoAdding {get, set}_rate_correction_factor() functions.
Dmitry Kovalev [Thu, 9 Jan 2014 01:40:35 +0000 (17:40 -0800)]
Adding {get, set}_rate_correction_factor() functions.

Change-Id: Ib3212832953a3445fc5f021af0e1de7886f09b4f

10 years agoMerge "Renaming 'Mode' to 'mode'."
Dmitry Kovalev [Thu, 9 Jan 2014 00:29:29 +0000 (16:29 -0800)]
Merge "Renaming 'Mode' to 'mode'."

10 years agoInstall test sources for MSVS
Johann [Wed, 8 Jan 2014 23:45:14 +0000 (15:45 -0800)]
Install test sources for MSVS

Move the code outside the conditions. The test sources themselves are
also required for Visual Studio.

Change-Id: Id5e93ebc7369e1807eba0b9dc4f7d0f18033d794

10 years agoOptimze inv 16x16 DCT with 10 non-zero coeffs - P1
Jingning Han [Tue, 7 Jan 2014 22:35:02 +0000 (14:35 -0800)]
Optimze inv 16x16 DCT with 10 non-zero coeffs - P1

This commit is the first patch optimizing SSE2 implementation of inverse
16x16 DCT with <10 non-zero coefficients. It focused on the first 1-D (row)
transformation. It exploits the fact that only top-left 4x4 block contains
non-zero coefficients, in a 2-D inverse 16x16 DCT with <10 coeffients.

The average runtime of idct16x16_10 unit is reduced from
883 cycles -> 779 cycles (12% faster).

For pedestrian_area_1080p 300 frames at 4000 kbps, the speed 2 runtime goes
down from 310651 ms  -> 305910 ms. The decoding speed goes up from
80.37 fps -> 80.87 fps.

Change-Id: Ic6f3ac5a637a76c07ba73ddaafe318a699fea645

10 years agoRemoving direct references to {lst_fb, gld_fb, alt_fb}_idx fields.
Dmitry Kovalev [Wed, 8 Jan 2014 23:21:41 +0000 (15:21 -0800)]
Removing direct references to {lst_fb, gld_fb, alt_fb}_idx fields.

Change-Id: Ib1d9628d2b538b6dc27b0db1fa7f40f70ff2072f

10 years agoCleanups around cpi->common.
Dmitry Kovalev [Wed, 8 Jan 2014 22:51:00 +0000 (14:51 -0800)]
Cleanups around cpi->common.

Change-Id: I0c42a729038d0f4cb7bc07f587d066fcb1dfe9d9

10 years agoMerge "Add a C fallback for get_msb() and change inline to INLINE."
Alex Converse [Wed, 8 Jan 2014 22:43:46 +0000 (14:43 -0800)]
Merge "Add a C fallback for get_msb() and change inline to INLINE."

10 years agoMerge "Add initial intra frame neon optimization. 1~2% gain."
hkuang [Wed, 8 Jan 2014 22:41:43 +0000 (14:41 -0800)]
Merge "Add initial intra frame neon optimization. 1~2% gain."

10 years agoRenaming 'Mode' to 'mode'.
Dmitry Kovalev [Wed, 8 Jan 2014 22:33:59 +0000 (14:33 -0800)]
Renaming 'Mode' to 'mode'.

Change-Id: I6cdd670d66288dbd66228f38bba6b30502d25362

10 years agoRenaming 'Sharpness' to 'sharpness'.
Dmitry Kovalev [Wed, 8 Jan 2014 22:19:14 +0000 (14:19 -0800)]
Renaming 'Sharpness' to 'sharpness'.

Change-Id: I54513dc3b3321e0c0bb6b15ea5c34085ed80b4a4

10 years agoMerge "Using struct twopass_rc* instead of VP9_COMP*."
Dmitry Kovalev [Wed, 8 Jan 2014 22:14:05 +0000 (14:14 -0800)]
Merge "Using struct twopass_rc* instead of VP9_COMP*."

10 years agoAdd a C fallback for get_msb() and change inline to INLINE.
Alex Converse [Wed, 8 Jan 2014 20:25:47 +0000 (12:25 -0800)]
Add a C fallback for get_msb() and change inline to INLINE.

For systems without __builtin_clz() or _BitScanReverse(), taken from libwep

Change-Id: Iead257efc1772c466c79e1dc0356ed571d38d43e

10 years agoAdd initial intra frame neon optimization. 1~2% gain.
hkuang [Mon, 6 Jan 2014 22:34:09 +0000 (14:34 -0800)]
Add initial intra frame neon optimization. 1~2% gain.

More intra optimizations will be added.

Change-Id: I33ae8d93f6002bf7b64cc2669602d9e6bfa5a6e8

10 years agoMerge "AVX2 Variance Optimization"
Yunqing Wang [Wed, 8 Jan 2014 19:33:42 +0000 (11:33 -0800)]
Merge "AVX2 Variance Optimization"

10 years agoMerge "Include gen_msvs_vcxproj.sh"
Johann [Wed, 8 Jan 2014 19:10:03 +0000 (11:10 -0800)]
Merge "Include gen_msvs_vcxproj.sh"

10 years agoMerge "Replace RD modeling with a fixed point approximation."
Alex Converse [Wed, 8 Jan 2014 19:06:54 +0000 (11:06 -0800)]
Merge "Replace RD modeling with a fixed point approximation."

10 years agoAVX2 Variance Optimization
levytamar82 [Sun, 29 Dec 2013 08:23:50 +0000 (01:23 -0700)]
AVX2 Variance Optimization

Optimizing the variance functions: vp9_variance16x16, vp9_variance32x32,
vp9_variance64x64, vp9_variance32x16, vp9_variance64x32,
vp9_mse16x16 by migrating to AVX2
some of the functions were optimized by processing 32 elements instead of 16.
some of the functions were optimized by processing 2 loop strides of 16
elements in a single 256 bit register
This optimization gives between 2.4% - 2.7% user level performance gain
and 42% function level gain.

Change-Id: I265ae08a2b0196057a224a86450153ef3aebd85d

10 years agoReplace RD modeling with a fixed point approximation.
Alex Converse [Fri, 3 Jan 2014 21:24:11 +0000 (13:24 -0800)]
Replace RD modeling with a fixed point approximation.

Change-Id: I44eb44eb3f36c05d916ef140ef42cc84f72f99ec

10 years agoMerge "Fix an issue in motion vector prediction stage"
Jingning Han [Wed, 8 Jan 2014 18:06:03 +0000 (10:06 -0800)]
Merge "Fix an issue in motion vector prediction stage"

10 years agoInclude gen_msvs_vcxproj.sh
Johann [Wed, 8 Jan 2014 17:51:15 +0000 (09:51 -0800)]
Include gen_msvs_vcxproj.sh

Change-Id: I28e9cf9347acd7279df3b841863a248479633265

10 years agoMerge "Further rate control cleanups"
Deb Mukherjee [Wed, 8 Jan 2014 17:20:29 +0000 (09:20 -0800)]
Merge "Further rate control cleanups"

10 years agoMerge "Remove yasm.rules dependency"
Johann [Wed, 8 Jan 2014 16:42:25 +0000 (08:42 -0800)]
Merge "Remove yasm.rules dependency"

10 years agoFix rate allocation bug.
Paul Wilkins [Mon, 6 Jan 2014 17:05:47 +0000 (17:05 +0000)]
Fix rate allocation bug.

Fix miss alignment of the frames contributing to the
error score and bit allocation for gf/arf groups.

Initial results slightly +.

Change-Id: Ie508bdcfdac52e592d48e1f13e01b3551b523deb

10 years agoRemoving examples code generation and making them static.
Dmitry Kovalev [Tue, 7 Jan 2014 23:15:25 +0000 (15:15 -0800)]
Removing examples code generation and making them static.

All documentation will be provided as comments in the source files.

Change-Id: Ie609852747733c181191f864204c787a6b23ef3a

10 years agoFurther rate control cleanups
Deb Mukherjee [Mon, 6 Jan 2014 23:19:22 +0000 (15:19 -0800)]
Further rate control cleanups

Some cleanups on frames_to_key, frames_since_key.
Also removes the unused fixed_q parameters in vp9.

Change-Id: If8743a32c71de30a8d17136477b53d607a7acda8

10 years agoFix an issue in motion vector prediction stage
Jingning Han [Tue, 7 Jan 2014 17:53:38 +0000 (09:53 -0800)]
Fix an issue in motion vector prediction stage

The previous implementation stops motion vector prediction test when
the zero motion vector appears for the second time. This commit fixes
it by simply skipping the second time check on zero mv and continuing
on to next mv candidate.

It slightly improves stdhd in speed 2 by 0.06% on average. Most static
sequences are not affected. A few hard ones, like jet, ped, and riverbed
were improved by 0.1 - 0.2%.

Change-Id: Ia8d4e2ffb7136669e8ad1fb24ea6e8fdd6b9a3c1

10 years agoRemove deprecated variable from rt_speed_feature
Jingning Han [Tue, 7 Jan 2014 18:15:51 +0000 (10:15 -0800)]
Remove deprecated variable from rt_speed_feature

This resolves a merge error.

Change-Id: Ifb83acc0a08e80c82f7624f9c86f79d3a86cc871

10 years agoMerge "Adding new_mv local variable."
Dmitry Kovalev [Tue, 7 Jan 2014 17:56:41 +0000 (09:56 -0800)]
Merge "Adding new_mv local variable."

10 years agoMerge "Adding get_ref_frame_buffer() function."
Dmitry Kovalev [Tue, 7 Jan 2014 17:56:06 +0000 (09:56 -0800)]
Merge "Adding get_ref_frame_buffer() function."

10 years agoMerge "Removing unused mvp_fill manipulation code."
Dmitry Kovalev [Tue, 7 Jan 2014 17:54:05 +0000 (09:54 -0800)]
Merge "Removing unused mvp_fill manipulation code."

10 years agoMerge "Remove avoid_frame_with_high_error from RD loop"
Jingning Han [Tue, 7 Jan 2014 17:31:17 +0000 (09:31 -0800)]
Merge "Remove avoid_frame_with_high_error from RD loop"

10 years agoMerge "Reusing ROUND_POWER_OF_TWO macro."
Dmitry Kovalev [Tue, 7 Jan 2014 10:40:02 +0000 (02:40 -0800)]
Merge "Reusing ROUND_POWER_OF_TWO macro."

10 years agoMerge "Clean up: unused function and variables"
Paul Wilkins [Tue, 7 Jan 2014 10:27:20 +0000 (02:27 -0800)]
Merge "Clean up:  unused function and variables"

10 years agoRemoving unused mvp_fill manipulation code.
Dmitry Kovalev [Tue, 7 Jan 2014 02:07:12 +0000 (18:07 -0800)]
Removing unused mvp_fill manipulation code.

The code can be removed because mvp_full will be overridden after that.

Change-Id: I89559b1b6914c86bcd02b7359d37241948ac11d3

10 years agoMerge "Replacing &cpi->common with cm."
Dmitry Kovalev [Tue, 7 Jan 2014 01:58:26 +0000 (17:58 -0800)]
Merge "Replacing &cpi->common with cm."

10 years agoAdding new_mv local variable.
Dmitry Kovalev [Tue, 7 Jan 2014 01:58:01 +0000 (17:58 -0800)]
Adding new_mv local variable.

Change-Id: I9631b35810c232c134f39dc0edadb1b3860a45ae

10 years agoReusing ROUND_POWER_OF_TWO macro.
Dmitry Kovalev [Tue, 7 Jan 2014 01:38:57 +0000 (17:38 -0800)]
Reusing ROUND_POWER_OF_TWO macro.

Change-Id: I064ba32d5358bfbf080a4300fc1793b345080006

10 years agoReplacing &cpi->common with cm.
Dmitry Kovalev [Tue, 7 Jan 2014 01:29:16 +0000 (17:29 -0800)]
Replacing &cpi->common with cm.

Change-Id: Ic5bf5682ccdb8d2fbad6bba0d7db19a4f47b62a1

10 years agoMerge "Fix encoding Raw yv12 and i420 from a pipe."
Alex Converse [Tue, 7 Jan 2014 01:22:21 +0000 (17:22 -0800)]
Merge "Fix encoding Raw yv12 and i420 from a pipe."

10 years agoMerge "Code cleanup: remove unneeded lines."
Marco Paniconi [Tue, 7 Jan 2014 00:35:52 +0000 (16:35 -0800)]
Merge "Code cleanup: remove unneeded lines."

10 years agoFix encoding Raw yv12 and i420 from a pipe.
Alex Converse [Tue, 7 Jan 2014 00:29:09 +0000 (16:29 -0800)]
Fix encoding Raw yv12 and i420 from a pipe.

rewind() does not work on pipes.

https://code.google.com/p/webm/issues/detail?id=678

Change-Id: I057f1e25c3f5662012d6e33ff4c97c88f50df357

10 years agoMerge "Added placeholder for real time mode"
Yaowu Xu [Tue, 7 Jan 2014 00:26:57 +0000 (16:26 -0800)]
Merge "Added placeholder for real time mode"

10 years agoCode cleanup: remove unneeded lines.
Marco Paniconi [Tue, 7 Jan 2014 00:03:13 +0000 (16:03 -0800)]
Code cleanup: remove unneeded lines.

Change-Id: I44a89b822a436299b9dd4ff26ad2e35767c29c58

10 years agoMerge "Write correct resolution to the IVF file header (b/11270652)"
Charles 'Buck' Krasic [Mon, 6 Jan 2014 23:18:04 +0000 (15:18 -0800)]
Merge "Write correct resolution to the IVF file header (b/11270652)"

10 years agoRemove yasm.rules dependency
Johann [Mon, 6 Jan 2014 23:12:42 +0000 (15:12 -0800)]
Remove yasm.rules dependency

The file was removed by 9152f4851dd6cf5800b5db82a03ce39a08095ecf after
the solution files were changed.

Change-Id: I868c56fd609f45fb3e21afd085b9e6c268aac038

10 years agoMerge "Combining ref_frame and second_ref_frame into ref_frames[2]."
Dmitry Kovalev [Mon, 6 Jan 2014 23:02:31 +0000 (15:02 -0800)]
Merge "Combining ref_frame and second_ref_frame into ref_frames[2]."

10 years agoMerge "Moving reset_segment_features() to encoder/vp9_segmentation.h."
Dmitry Kovalev [Mon, 6 Jan 2014 23:01:54 +0000 (15:01 -0800)]
Merge "Moving reset_segment_features() to encoder/vp9_segmentation.h."

10 years agoAdding get_ref_frame_buffer() function.
Dmitry Kovalev [Mon, 6 Jan 2014 22:50:54 +0000 (14:50 -0800)]
Adding get_ref_frame_buffer() function.

Encapsulating direct references to lst_fb_idx, gld_fb_idx, alt_fb_idx.

Change-Id: I7e65ba3f131286e433e6651970c5647311fa4687

10 years agoMerge "Adding RefBuffer struct."
Dmitry Kovalev [Mon, 6 Jan 2014 22:19:44 +0000 (14:19 -0800)]
Merge "Adding RefBuffer struct."

10 years agoWrite correct resolution to the IVF file header (b/11270652)
Charles 'Buck' Krasic [Sat, 4 Jan 2014 00:06:35 +0000 (16:06 -0800)]
Write correct resolution to the IVF file header (b/11270652)

also:
 o remove dead code, create_dummy_frame
 o Fix a bug in command line handling that caused a segfault if wrong
   number of arguments were given.

Change-Id: I78f026aee4e363967b750e6cde0982659c558a1f

10 years agoRemove avoid_frame_with_high_error from RD loop
Jingning Han [Mon, 6 Jan 2014 21:29:16 +0000 (13:29 -0800)]
Remove avoid_frame_with_high_error from RD loop

The feature undergoes prior assumption that the recursive partition
size search from 4x4 to 64x64, hence utilizing information from small
blocks to determine early termination in large block rate-distortion
optimization search. The current codebase is now going from top down.
The previous function might go with not properly initialized values,
hence removed.

Tested on pedestrian_area_1080p at 4000 kbps running under speed 2.
No visible difference in runtime observed.

Change-Id: I553df415c6191413762db7ae34e8790c71d8118e

10 years agoUsing struct twopass_rc* instead of VP9_COMP*.
Dmitry Kovalev [Mon, 6 Jan 2014 20:46:23 +0000 (12:46 -0800)]
Using struct twopass_rc* instead of VP9_COMP*.

Change-Id: Id9ff7772aa3a3fb5d6cf94aff7dc9489bd964340

10 years agoCombining ref_frame and second_ref_frame into ref_frames[2].
Dmitry Kovalev [Mon, 6 Jan 2014 20:23:36 +0000 (12:23 -0800)]
Combining ref_frame and second_ref_frame into ref_frames[2].

Change-Id: I007d66a1cb1b44751dcceafbaa64649ed9a34562

10 years agoMerge "Corerctly sets frame type in the 2 pass case"
Deb Mukherjee [Mon, 6 Jan 2014 20:01:30 +0000 (12:01 -0800)]
Merge "Corerctly sets frame type in the 2 pass case"

10 years agoAdded placeholder for real time mode
Yaowu Xu [Mon, 6 Jan 2014 19:51:18 +0000 (11:51 -0800)]
Added placeholder for real time mode

Change-Id: I203d10f76c7ca78d875eaae15557cd765c6240d1

10 years agoMoving reset_segment_features() to encoder/vp9_segmentation.h.
Dmitry Kovalev [Mon, 6 Jan 2014 19:31:57 +0000 (11:31 -0800)]
Moving reset_segment_features() to encoder/vp9_segmentation.h.

Change-Id: I0db4b31cb2382d4f6249eae0a8f42d227ad0ac57

10 years agoMerge "Moving get_scan() call out of decode_coeffs() function."
Dmitry Kovalev [Mon, 6 Jan 2014 18:50:16 +0000 (10:50 -0800)]
Merge "Moving get_scan() call out of decode_coeffs() function."

10 years agoCorerctly sets frame type in the 2 pass case
Deb Mukherjee [Fri, 3 Jan 2014 23:41:57 +0000 (15:41 -0800)]
Corerctly sets frame type in the 2 pass case

This patch sets frame types correctly in the new
vp9_get_second_pass_params() function called prior
to encode_frame_to_data_rate() function, so that the
latter function can just work with what is passed to
it. This will allow multiple vp9_get_second_pass_params()
to be created for various encode strategies without
messing with the core encode function.

There is no difference in derf and yt. stdhd/hd are pending.

Change-Id: I70dfb97e9f497e9cee04052e0e8e0c2892eab0c3

10 years agoMerge "Tune IDCT8_1D macro function interface"
Jingning Han [Mon, 6 Jan 2014 17:38:19 +0000 (09:38 -0800)]
Merge "Tune IDCT8_1D macro function interface"

10 years agoClean up: unused function and variables
Paul Wilkins [Mon, 6 Jan 2014 11:26:02 +0000 (11:26 +0000)]
Clean up:  unused function and variables

Remove adjust_maxq_qrange() and related variables.

Change-Id: I50d065f4619c499283e2680e31d0d99c22439dec

10 years agoMerge "Modified Handling of min and max vbr rates."
Paul Wilkins [Mon, 6 Jan 2014 10:04:55 +0000 (02:04 -0800)]
Merge "Modified Handling of min and max vbr rates."

10 years agoMoving get_scan() call out of decode_coeffs() function.
Dmitry Kovalev [Sat, 4 Jan 2014 02:18:39 +0000 (18:18 -0800)]
Moving get_scan() call out of decode_coeffs() function.

Change-Id: I5db2e5a6c36e6c503dea2e07d9d2e0daf4ac9d89

10 years agoMerge "Converting CHECK_POINT macro to inline function."
Dmitry Kovalev [Sat, 4 Jan 2014 02:02:10 +0000 (18:02 -0800)]
Merge "Converting CHECK_POINT macro to inline function."

10 years agoMerge "Replacing int_mv with MV."
Dmitry Kovalev [Sat, 4 Jan 2014 01:38:28 +0000 (17:38 -0800)]
Merge "Replacing int_mv with MV."

10 years agoConverting CHECK_POINT macro to inline function.
Dmitry Kovalev [Sat, 4 Jan 2014 00:16:28 +0000 (16:16 -0800)]
Converting CHECK_POINT macro to inline function.

Change-Id: I08533d59a78346dac30a7dcbc12146f23ef88bbc

10 years agoMerge "Replacing CHECK_BOUNDS macro with inline check_bounds function."
Dmitry Kovalev [Fri, 3 Jan 2014 23:57:36 +0000 (15:57 -0800)]
Merge "Replacing CHECK_BOUNDS macro with inline check_bounds function."

10 years agoMerge "Moving hev mask calculation into filter4() function."
Dmitry Kovalev [Fri, 3 Jan 2014 23:56:16 +0000 (15:56 -0800)]
Merge "Moving hev mask calculation into filter4() function."

10 years agoTune IDCT8_1D macro function interface
Jingning Han [Fri, 3 Jan 2014 23:05:25 +0000 (15:05 -0800)]
Tune IDCT8_1D macro function interface

This commit adds input/output ports for IDCT8_1D macro function to
provide more flexibility in variable use. It allows to skip several
buffer swap operations.

Change-Id: I21f3450509537322293043b3281bfd3949868677

10 years agoAdding RefBuffer struct.
Dmitry Kovalev [Sat, 28 Dec 2013 02:44:19 +0000 (18:44 -0800)]
Adding RefBuffer struct.

Adding RefBuffer to simplify reference buffer management. The struct has a
pointer to image data and scale factors relative to the current frame.

Change-Id: If38eb1491ff687cc11428aee339f3e052e2c5d9e

10 years agoMerge "Cleaning up get_prediction_decay_rate() function."
Dmitry Kovalev [Fri, 3 Jan 2014 23:13:22 +0000 (15:13 -0800)]
Merge "Cleaning up get_prediction_decay_rate() function."

10 years agoMerge "Pre planes configuration cleanup."
Dmitry Kovalev [Fri, 3 Jan 2014 23:04:53 +0000 (15:04 -0800)]
Merge "Pre planes configuration cleanup."