Commit Graph

9827 Commits

Author SHA1 Message Date
Jingning Han
8969f7c892 Chessboard pattern prediction filter type search in non-RD coding
This commit introduces a chessboard pattern search for the prediction
filter type search. It runs extensive search in alternate blocks and
allows the rest blocks to refer coding decisions of their nearby
neighbors.

For pedestrian 1080p at 4000 kbps, the runtime of speed -5 goes down
from 43990 ms to 42200 ms. The overall compression performance for
RTC set is changed by -1.37%.

Change-Id: Icfe220c49451cda796f0ca91d935c9ed01e56c9d
2014-04-23 10:41:07 -07:00
Tom Finegan
addf897710 Merge "tools_common.sh: Add run messages." 2014-04-23 10:11:29 -07:00
Deb Mukherjee
f1f07403e0 Merge "Rename FilterMode for compatibility with libyuv" 2014-04-23 09:05:55 -07:00
Dmitry Kovalev
1ed427a5e0 Merge "Renaming MB_PREDICTION_MODE to PREDICTION_MODE." 2014-04-23 00:02:00 -07:00
Tom Finegan
522f7c8b50 tools_common.sh: Add run messages.
Echo "Run test_name" before running each test in verbose mode.

Change-Id: Idb2a736b3af13b9bbf2fbc137f2fa7da3662a2c6
2014-04-22 22:54:20 -07:00
Tom Finegan
2003263ca3 Merge "tools_common.sh: Set VPX_TEST_EXE_SUFFIX for windows targets." 2014-04-22 20:39:49 -07:00
Tom Finegan
39c5a4b8be tools_common.sh: Set VPX_TEST_EXE_SUFFIX for windows targets.
Change-Id: Ic3c792bcb76917c4d4b829d0377a9c36e06dd77d
2014-04-22 19:36:40 -07:00
Dmitry Kovalev
e608418899 Renaming MB_PREDICTION_MODE to PREDICTION_MODE.
Actually, it would be great to have two separate enums INTRA_MODES and
INTER_MODES in future.

Change-Id: I6c4147cf0002853da9c1e03fe9514eab876f01c8
2014-04-22 17:48:31 -07:00
Dmitry Kovalev
54006d1a1b Adding macro to define vp9_variance_WxH_c() functions.
Change-Id: I983e3831938d4ae055de20b8d257d223e7916b1f
2014-04-22 17:45:30 -07:00
Yunqing Wang
7f83a3bcdc Merge "Fix dr memory VP8 encode/decode errors" 2014-04-22 16:09:43 -07:00
Dmitry Kovalev
cfd16a6890 Merge "Renaming "onyx" to "encoder"." 2014-04-22 16:00:05 -07:00
Dmitry Kovalev
8a3d1b5a87 Merge "Reusing vp9_get_interp_kernel() function in unit tests." 2014-04-22 15:59:52 -07:00
Dmitry Kovalev
ef003078e8 Renaming "onyx" to "encoder".
Actual renames:
  vp9_onyx_if.c -> vp9_encoder.c
  vp9_onyx_int.h -> vp9_encoder.h

Change-Id: I80532a80b118d0060518e6c6a0d640e3f411783c
2014-04-22 14:57:05 -07:00
Tom Finegan
b0d9bfe420 Merge "Add utiltest target to Makefile." 2014-04-22 14:12:01 -07:00
Alex Converse
9926f1566e Merge "Fix the CONFIG_ALPHA build." 2014-04-22 12:49:28 -07:00
Dmitry Kovalev
4a6abcb900 Merge "Template macros to generate subpix variance functions." 2014-04-22 11:42:42 -07:00
Dmitry Kovalev
a5cd9afb8c Merge "Inlining vp9_set_segmentation_map() function." 2014-04-22 11:42:07 -07:00
Alex Converse
e6222b1a47 Fix the CONFIG_ALPHA build.
Change-Id: Ib89fe34812c17cd6294ce3c38f87d43a79abb16f
2014-04-22 11:23:49 -07:00
Deb Mukherjee
20c30771b0 Rename FilterMode for compatibility with libyuv
Renames FilterMode to FilterModeEnum for compatibility
with google3 libyuv

Change-Id: Iec845e6a6aeac4171790c87ce3dd9000ab840a36
2014-04-22 11:15:19 -07:00
Minghai Shang
afc5636699 Merge "Bug fix for svc first pass rate control." 2014-04-22 10:59:55 -07:00
Adrian Grange
4fa3e98876 Merge "Force ARNR filtering to be centered on the ARF frame" 2014-04-22 10:39:02 -07:00
Tom Finegan
7b7c843870 Add utiltest target to Makefile.
Add target for running tests via make. Runs vpxdec.sh and vpxenc.sh.

Change-Id: I5fddb7356b6ac37e284b4f15b47310f108ae3da3
2014-04-22 10:38:43 -07:00
Adrian Grange
59e733ca81 Force ARNR filtering to be centered on the ARF frame
ARNR filtering is now forced to be centered on the ARF
frame and the other two options have been removed.

The other modes of constructing the ARNR frame were
not used and there does not seem to be any good
reason to maintain them.

This is purely an encoder-side change.

Change-Id: Ic772636d23f280752973852b9740083532a49de2
2014-04-22 08:03:25 -07:00
Deb Mukherjee
02104ebbdc Merge "Adds test code for supplemental superframe data" 2014-04-22 06:53:18 -07:00
Dmitry Kovalev
0b25a3ca95 Inlining vp9_set_segmentation_map() function.
Change-Id: I82f23f0f91a0be8329e20fcd2a5918c6a096dacc
2014-04-21 20:22:36 -07:00
Dmitry Kovalev
b02b362d21 Template macros to generate subpix variance functions.
Change-Id: I931fde6013aa18294b49a361f75f177ab1262574
2014-04-21 19:57:25 -07:00
Yaowu Xu
0bba4f1efa Merge "Allow full RD TX size search for GF/ALT at speed 2" 2014-04-21 18:32:36 -07:00
Paul Wilkins
de43d2c67e Merge "Change naming of end_usage parameter." 2014-04-21 18:29:22 -07:00
Yaowu Xu
7129d4b4ca Merge "Remove an unused function" 2014-04-21 17:46:06 -07:00
Yunqing Wang
1893122e34 Fix dr memory VP8 encode/decode errors
This patch fixed errors reported in Issue 746: "dr memory VP8
encode errors" and Issue 745: "dr memory VP8 decode errors".
The "UNINITIALIZED READ" errors were fixed in x86 assembly
code. The list of files fixed is
vp8_intra_pred_uv_tm_sse2
vp8_intra_pred_uv_tm_ssse3

vp8_intra_pred_uv_ho_mmx2
vp8_intra_pred_uv_ho_ssse3

vp8_intra_pred_y_tm_sse2
vp8_intra_pred_y_tm_ssse3

vp8_intra_pred_y_ho_sse2

Change-Id: Ib6df7bf1d442077fe534edfd90e50ad16fadacdd
2014-04-21 17:04:05 -07:00
Dmitry Kovalev
3d4ed278e6 Reusing vp9_get_interp_kernel() function in unit tests.
Change-Id: Ic24a371817c9dd5c4035a6fe01111bd9ab63f552
2014-04-21 14:15:35 -07:00
Yaowu Xu
d928b34efe Allow full RD TX size search for GF/ALT at speed 2
For speed 3 and above, such search is only allowed at speed 3.
The change helped cif and stdhd set by 1.2% and .7% in compression,
but increased the encoding time by around 5%.

Change-Id: Ifa4832327f1c1bef3decb032ceb769cbf50e059f
2014-04-21 12:31:46 -07:00
Dmitry Kovalev
a439f5af5f Merge "Inlining and removing encoder_common_init()." 2014-04-21 12:21:06 -07:00
Deb Mukherjee
26210c672a Adds test code for supplemental superframe data
Adds test code to verify that supplemental superframe information
that precedes the normal superframe information will not break
decoding.

Change-Id: Ia252b887d7ee138f51dc9a778376ff739402c455
2014-04-21 11:58:36 -07:00
Paul Wilkins
4c7af859d7 Change naming of end_usage parameter.
The end_useage parameter  is confusingly named since it
now actually defines the rate control method used.

Change-Id: I98912caabfe556b7af0b939a645d1336409e4d71
2014-04-21 11:49:38 -07:00
Dmitry Kovalev
79303c993a Merge "Adding setup_frame() function." 2014-04-21 10:44:08 -07:00
Dmitry Kovalev
ece689650a Merge "Cleaning up vp9_rdopt.c." 2014-04-21 10:41:04 -07:00
Dmitry Kovalev
f0a47f85c5 Merge "Don't set loop filter sharpness in vp9_change_config()." 2014-04-21 10:40:30 -07:00
Dmitry Kovalev
37f0886bbf Merge "Cleaning vp9_variance.{c, h}." 2014-04-21 10:40:05 -07:00
Jingning Han
e38ca5422c Merge "Enable background detection for adaptive quantizer control" 2014-04-21 09:36:11 -07:00
Yaowu Xu
a7ecad59b6 Merge "Merge two new VBR adjustment schemes." 2014-04-21 09:11:24 -07:00
Yaowu Xu
3a5b7dd087 Merge "Add experimental VBR adaptation method." 2014-04-21 09:11:19 -07:00
Jingning Han
80a4f55989 Enable background detection for adaptive quantizer control
This commit enables a background detection approach for adaptive
quantizer control. It combines the cyclic refresh pattern and the
background information to determine the segment id for adaptive
quantizer selection, prior to the non-RD mode decision process.
It hence allows proper quantization information update for a more
precise rate-distortion modeling in the non-RD mode decision.

The compression performance of speed -5 for rtc set is improved
by 2.5%, at no speed change.

Change-Id: Ic3713e8ed9185b403b5b1679d19dabd57506d452
2014-04-21 08:57:53 -07:00
Yaowu Xu
bae205fd6a Remove an unused function
Change-Id: I0f2592ecfc5197dfb94975260cb2f862315e7895
2014-04-20 14:50:35 -07:00
James Zern
96f8895266 test/WebMVideoSource: fix WebMInputContext leak
lost in the shuffle of:
4fd6317 Remove duplicate code in test/webm_video_source.h

Change-Id: I89792fa17f03920616c55486bbdaf56c6461c9eb
2014-04-19 09:29:26 -07:00
Dmitry Kovalev
6962ea665d Merge "Moving set_rd_speed_thresholds{,_sub8x8} to vp9_rdopt.{h, c}." 2014-04-18 18:18:08 -07:00
Dmitry Kovalev
513743bd2c Inlining and removing encoder_common_init().
Change-Id: I35f948fe1ac107950c8d8e4ba06e5a95ac4ec30e
2014-04-18 18:17:43 -07:00
Dmitry Kovalev
5a54977aa4 Cleaning vp9_variance.{c, h}.
Change-Id: I802308de4817e48a627bb44a744d32010fe7818f
2014-04-18 17:05:28 -07:00
Dmitry Kovalev
d5d26f7692 Cleaning up vp9_rdopt.c.
Change-Id: Ifd008968326e61ab492162351e358bf0ac0dac0a
2014-04-18 16:56:43 -07:00
Adrian Grange
2b22185c14 Merge "Remove ALT_REF_MC_ENABLED and tidy-up ARNR code." 2014-04-18 16:34:57 -07:00