]> granicus.if.org Git - libvpx/log
libvpx
10 years agoMerge "Revert "Move input frame scaling into the recode loop""
Paul Wilkins [Thu, 16 Oct 2014 17:44:58 +0000 (10:44 -0700)]
Merge "Revert "Move input frame scaling into the recode loop""

10 years agoMerge "Revert "[spatial svc]Another workaround to avoid using prev_mi""
Paul Wilkins [Thu, 16 Oct 2014 17:44:47 +0000 (10:44 -0700)]
Merge "Revert "[spatial svc]Another workaround to avoid using prev_mi""

10 years agoMerge "Fix in bit-shift operation for highbitdepth decode"
Deb Mukherjee [Thu, 16 Oct 2014 16:23:57 +0000 (09:23 -0700)]
Merge "Fix in bit-shift operation for highbitdepth decode"

10 years agoRevert "Move input frame scaling into the recode loop"
Paul Wilkins [Thu, 16 Oct 2014 14:53:21 +0000 (15:53 +0100)]
Revert "Move input frame scaling into the recode loop"

This reverts commit 452dc21500a2339ee685cb28efbd2af1b856ea12.

This change has introduced a significant quality regression on content
with forced key frames. (e.g. the YT and yt-hd set). It is most
noticeable in static content where the kf bits dominate. Here, despite
key frames being apparently coded at the same Q, there is a drop in all
metrics of ~20% (e.g clXR and BFa0).

Change-Id: Iba14cc61778c0846fa0a59c33c55a9fc49512cb4

10 years agoRevert "[spatial svc]Another workaround to avoid using prev_mi"
Paul Wilkins [Thu, 16 Oct 2014 14:49:13 +0000 (15:49 +0100)]
Revert "[spatial svc]Another workaround to avoid using prev_mi"

This reverts commit c113457af9880b8e15a36cdaabfd414d1c245693.

Temporary revert to allow clean revert of another commit.

Change-Id: Ia9b7b755e6c48e1b6e383329f121fef175a24b27

10 years agoMerge "fix CONFIG_SPATIAL_SVC warning"
James Zern [Thu, 16 Oct 2014 08:09:15 +0000 (01:09 -0700)]
Merge "fix CONFIG_SPATIAL_SVC warning"

10 years agoMerge "Some updates for Speed 6/VAR_BASED_PARTITION."
Marco [Wed, 15 Oct 2014 22:57:21 +0000 (15:57 -0700)]
Merge "Some updates for Speed 6/VAR_BASED_PARTITION."

10 years agoMerge "Replace copy_partitioning use case with choose_partitioning"
Jingning Han [Wed, 15 Oct 2014 21:54:52 +0000 (14:54 -0700)]
Merge "Replace copy_partitioning use case with choose_partitioning"

10 years agoSome updates for Speed 6/VAR_BASED_PARTITION.
Marco [Thu, 9 Oct 2014 23:01:52 +0000 (16:01 -0700)]
Some updates for Speed 6/VAR_BASED_PARTITION.

Reduce the intra_cost_penalty for non-rd mode,
and some updates to VAR_BASED_PARTITION.

Visual tests show some improvement at Speed 6, for RTC clips.

Change-Id: If9090daf7aed14906a32d931a538ab544bbca606

10 years agoReplace copy_partitioning use case with choose_partitioning
Jingning Han [Wed, 15 Oct 2014 18:37:20 +0000 (11:37 -0700)]
Replace copy_partitioning use case with choose_partitioning

This commit replaces the use of copy_partitioning with
choose_partitioning based on the sse of subsamped pixels, which
provides significantly better coding performance and runs at
similar speed, as compared to copy_partitioning. It improves rtc
speed 5 coding performance by 3%.

Change-Id: I52d3682a12dce0147f5e52383a594fc242ca3228

10 years agoFix in bit-shift operation for highbitdepth decode
Deb Mukherjee [Wed, 15 Oct 2014 17:01:34 +0000 (10:01 -0700)]
Fix in bit-shift operation for highbitdepth decode

Fixes a bug introduced in a previous refactoring patch.

Change-Id: I243e74637cfd7a997c7a1fef03b06c290dd0dee6

10 years agofix CONFIG_SPATIAL_SVC warning
James Zern [Wed, 15 Oct 2014 14:37:35 +0000 (16:37 +0200)]
fix CONFIG_SPATIAL_SVC warning

this change checks that CONFIG_SPATIAL_SVC is defined and adds a TODO to
ensure this is changed in the future as the release headers can't
depend on vpx_config.h.

vpx/vpx_encoder.h:164:5: warning: "CONFIG_SPATIAL_SVC" is not defined
[-Wundef]

Change-Id: I797a0150e5f56caf048e7ee00b282fbc9c5ede19

10 years ago[spatial svc]Another workaround to avoid using prev_mi
Minghai Shang [Tue, 14 Oct 2014 23:25:03 +0000 (16:25 -0700)]
[spatial svc]Another workaround to avoid using prev_mi

We encode a empty invisible frame in front of the base layer frame to
avoid using prev_mi. Since there's a restriction for reference frame
scaling factor, we have to make it smaller and smaller gradually until
its size is 16x16.
Change-Id: I60b680314e33a60b4093cafc296465ee18169c19

10 years agoMerge "Move input frame scaling into the recode loop"
Adrian Grange [Tue, 14 Oct 2014 22:30:42 +0000 (15:30 -0700)]
Merge "Move input frame scaling into the recode loop"

10 years agoMerge "Add a 32-bit friendly sse2 quantizer."
Alex Converse [Tue, 14 Oct 2014 21:35:02 +0000 (14:35 -0700)]
Merge "Add a 32-bit friendly sse2 quantizer."

10 years agoMerge "Remove an unneeded function call"
Yunqing Wang [Tue, 14 Oct 2014 21:06:23 +0000 (14:06 -0700)]
Merge "Remove an unneeded function call"

10 years agoMerge "Correct the format."
hkuang [Tue, 14 Oct 2014 20:45:11 +0000 (13:45 -0700)]
Merge "Correct the format."

10 years agoRemove an unneeded function call
Yunqing Wang [Tue, 14 Oct 2014 18:41:37 +0000 (11:41 -0700)]
Remove an unneeded function call

set_tile_limits() is called in vp9_change_config() already.

Change-Id: I91c3a0df2c1c7fd7e71546d8f51fd5b65838a7da

10 years agoAdd a 32-bit friendly sse2 quantizer.
Alex Converse [Mon, 13 Oct 2014 22:17:05 +0000 (15:17 -0700)]
Add a 32-bit friendly sse2 quantizer.

This is based on the 64-bit ssse3 quantizer.

1.1x speedup for screen content at speed 7.

Change-Id: I57d15415ef97c49165954bbe3daaaf9318e37448

10 years agoCorrect the format.
hkuang [Tue, 14 Oct 2014 18:35:26 +0000 (11:35 -0700)]
Correct the format.

Change-Id: I59a53b419adda3a609d50b2a82f5a4a54849752e

10 years agoMerge "Refactor super_block_uvrd function to remove goto statement"
Jingning Han [Tue, 14 Oct 2014 18:33:00 +0000 (11:33 -0700)]
Merge "Refactor super_block_uvrd function to remove goto statement"

10 years agoMerge "Remove unnecessary local variable."
hkuang [Tue, 14 Oct 2014 18:05:51 +0000 (11:05 -0700)]
Merge "Remove unnecessary local variable."

10 years agoMerge "Remove extra line."
hkuang [Tue, 14 Oct 2014 18:05:01 +0000 (11:05 -0700)]
Merge "Remove extra line."

10 years agoRefactor super_block_uvrd function to remove goto statement
Jingning Han [Tue, 14 Oct 2014 00:06:22 +0000 (17:06 -0700)]
Refactor super_block_uvrd function to remove goto statement

Use return value 0/1 as indicator of the validity of the rate-
distortion cost.

Change-Id: I6244126fbf03472cebcba4f177a6cd329fae4743

10 years agoMove input frame scaling into the recode loop
Adrian Grange [Thu, 2 Oct 2014 22:26:42 +0000 (15:26 -0700)]
Move input frame scaling into the recode loop

Move the point at which input frames are scaled
into the recode loop. This will allow us to change
the coded frame size dynamically in response
to previous attempts to encode the frame at a
higher resolution.

A following patch will implement a scheme for
resizing the frame in the recode loop.

Change-Id: I6a59c02d6ac1626512edad6de8b60063b79433e6

10 years agoMerge "Use speed feature variable in vp9_rd_pick_inter/intra_mode"
Jingning Han [Tue, 14 Oct 2014 16:10:24 +0000 (09:10 -0700)]
Merge "Use speed feature variable in vp9_rd_pick_inter/intra_mode"

10 years agoMerge "Fix vp9_rd_pick_inter/intra function types"
Jingning Han [Tue, 14 Oct 2014 16:10:11 +0000 (09:10 -0700)]
Merge "Fix vp9_rd_pick_inter/intra function types"

10 years agoMerge "Refactor rate distortion cost structure"
Jingning Han [Tue, 14 Oct 2014 15:58:55 +0000 (08:58 -0700)]
Merge "Refactor rate distortion cost structure"

10 years agoMerge "Code style change in unit test for VP8/VP9 denoiser."
JackyChen [Tue, 14 Oct 2014 15:46:33 +0000 (08:46 -0700)]
Merge "Code style change in unit test for VP8/VP9 denoiser."

10 years agoMerge "Remove mi_grid_base_array from VP9_COMMON (unused)"
Adrian Grange [Tue, 14 Oct 2014 14:50:17 +0000 (07:50 -0700)]
Merge "Remove mi_grid_base_array from VP9_COMMON (unused)"

10 years agoMerge "Clamp rate error estimate."
Paul Wilkins [Tue, 14 Oct 2014 09:40:12 +0000 (02:40 -0700)]
Merge "Clamp rate error estimate."

10 years agoMerge "Resolves some lint errors"
Deb Mukherjee [Tue, 14 Oct 2014 04:57:24 +0000 (21:57 -0700)]
Merge "Resolves some lint errors"

10 years agoMerge "Add a seg map preservation test vector."
Alex Converse [Tue, 14 Oct 2014 03:02:12 +0000 (20:02 -0700)]
Merge "Add a seg map preservation test vector."

10 years agoUse speed feature variable in vp9_rd_pick_inter/intra_mode
Jingning Han [Mon, 13 Oct 2014 23:13:59 +0000 (16:13 -0700)]
Use speed feature variable in vp9_rd_pick_inter/intra_mode

Replace repeated fetch cpi->sf with a local sf pointer.

Change-Id: I5a55bba3e1c41fbdbc6ad5f078d2fa49dd95ee67

10 years agoResolves some lint errors
Deb Mukherjee [Mon, 13 Oct 2014 21:27:53 +0000 (14:27 -0700)]
Resolves some lint errors

And also fixes some style consistency issues.

Change-Id: I3dc6d44e17d2d6075dc9b02c4255a7395046c5e0

10 years agoFix vp9_rd_pick_inter/intra function types
Jingning Han [Mon, 13 Oct 2014 22:56:37 +0000 (15:56 -0700)]
Fix vp9_rd_pick_inter/intra function types

The returned value is not used anywhere, hence changing the function
type into void.

Change-Id: I0ece49ed61e7aab6df01140135503ad41d4ef4a4

10 years agoMerge "Use pre increment."
hkuang [Mon, 13 Oct 2014 22:24:57 +0000 (15:24 -0700)]
Merge "Use pre increment."

10 years agoRefactor rate distortion cost structure
Jingning Han [Thu, 9 Oct 2014 19:32:56 +0000 (12:32 -0700)]
Refactor rate distortion cost structure

This commit makes a struct that contains rate value, distortion
value, and the rate-distortion cost. The goal is to provide a
better interface for rate-distortion related operation. It is
first used in rd_pick_partition and saves a few RDCOST calculations.

Change-Id: I1a6ab7b35282d3c80195af59b6810e577544691f

10 years agoUse pre increment.
hkuang [Mon, 13 Oct 2014 21:04:16 +0000 (14:04 -0700)]
Use pre increment.

Change-Id: I016b4e77d8268e189473f4c382603afe1ae1750f

10 years agoRemove unnecessary local variable.
hkuang [Mon, 13 Oct 2014 21:05:42 +0000 (14:05 -0700)]
Remove unnecessary local variable.

Change-Id: I7b19b6061cec369825a0a0b7a485ca490dbc12ee

10 years agoRemove mi_grid_base_array from VP9_COMMON (unused)
Adrian Grange [Mon, 13 Oct 2014 18:52:14 +0000 (11:52 -0700)]
Remove mi_grid_base_array from VP9_COMMON (unused)

Change-Id: I4b4764463f5a7cdc01ec004b882c6237466c74b0

10 years agoAdd a seg map preservation test vector.
Alex Converse [Mon, 13 Oct 2014 18:18:22 +0000 (11:18 -0700)]
Add a seg map preservation test vector.

Add a test vector to show the cases where segmentation map is preserved
from frome to frame as outlined in the inquiry in issue 761.

Change-Id: I630c6aba27d0d0b109cc7fd7c6fcd008222a0cf3

10 years agoClamp rate error estimate.
Paul Wilkins [Mon, 13 Oct 2014 17:03:54 +0000 (18:03 +0100)]
Clamp rate error estimate.

Add back clamp which ensures that the Q adaptation
is turned off when the over_shoot_pct and under_shoot_pct
parameters are set to 100.

Change-Id: Id0161b114d39a3029cd3eb28020caab0c3914922

10 years agoMerge "Add adaptation option for VBR."
Paul Wilkins [Mon, 13 Oct 2014 17:04:59 +0000 (10:04 -0700)]
Merge "Add adaptation option for VBR."

10 years agoCode style change in unit test for VP8/VP9 denoiser.
JackyChen [Fri, 10 Oct 2014 17:04:22 +0000 (10:04 -0700)]
Code style change in unit test for VP8/VP9 denoiser.

Change-Id: If4b0aca18c8474dd2456900ae9681e74222e645f

10 years agoMerge "args.h: add arg_parse_enum prototype"
James Zern [Mon, 13 Oct 2014 09:20:21 +0000 (02:20 -0700)]
Merge "args.h: add arg_parse_enum prototype"

10 years agoMerge "vp9_spatial_svc_encoder: fix -bit-depth arg parsing"
James Zern [Mon, 13 Oct 2014 09:20:16 +0000 (02:20 -0700)]
Merge "vp9_spatial_svc_encoder: fix -bit-depth arg parsing"

10 years agoMerge "yv12config: fix highbitdepth build"
James Zern [Mon, 13 Oct 2014 09:20:04 +0000 (02:20 -0700)]
Merge "yv12config: fix highbitdepth build"

10 years agoAdd adaptation option for VBR.
Paul Wilkins [Mon, 13 Oct 2014 09:12:12 +0000 (10:12 +0100)]
Add adaptation option for VBR.

Allow min and maxQ to creep when the undershoot
or overshoot exceeds thresholds controlled by the
command line under_shoot_pct and over_shoot_pct
values.

Default is 100%,100% which ~disables adaptation.

Derf results for example undershoot% / overshoot%:-

Head:- Mean abs (%rate error) = 14.4%

This check in:-
25%/25% - Mean abs (%rate error) = 6.7%
                  PSNR hit -1% SSIM -0.1%

5% / 5%  - Mean abs (%rate error) = 2.2%
                 PSNR hit -3.3% SSIM - 1.1%

Most of the remaining error and most of the quality hit is
at extreme data rates. The adaptation code still has an
exception for material that is in effect static so that we
don't over adjust and over spend on YT slide show type
content.

(Rebase of If25a2449a415449c150acff23df713e9598d64c9
to resolve a auto-merge error)

Change-Id: Iec4e1613ef0d067454751d8220edb7058dfbd816

10 years agoFix ActiveMapTest valgrind warning
Jingning Han [Sun, 12 Oct 2014 05:34:02 +0000 (22:34 -0700)]
Fix ActiveMapTest valgrind warning

This fixes a valgrind warning in the ActiveMapTest unit test
reported in issue 870.

Change-Id: Idf172ab0244ebefe630c3577e649bc9ba7c43d10

10 years agoargs.h: add arg_parse_enum prototype
James Zern [Sat, 11 Oct 2014 09:27:23 +0000 (11:27 +0200)]
args.h: add arg_parse_enum prototype

Change-Id: I64d6e7c2d3f76528ab409ce381267fc5cef13ab1

10 years agovp9_spatial_svc_encoder: fix -bit-depth arg parsing
James Zern [Sat, 11 Oct 2014 09:24:52 +0000 (11:24 +0200)]
vp9_spatial_svc_encoder: fix -bit-depth arg parsing

use arg_parse_enum_or_int like vpxenc. this also fixes a warning as
arg_parse_enum is not currently declared in args.h.

Change-Id: If9ce258d6adb6286eb86f529083929d5fe2b3a56

10 years agoyv12config: fix highbitdepth build
James Zern [Sat, 11 Oct 2014 09:14:54 +0000 (11:14 +0200)]
yv12config: fix highbitdepth build

Change-Id: Ie8a4caae19fb514d5bd22e0ae35ca0edcd3484ae

10 years agoRemove extra line.
hkuang [Fri, 10 Oct 2014 21:52:37 +0000 (14:52 -0700)]
Remove extra line.

Change-Id: I5e79c276d8953ae17cd35b2846e6e40660c037c3

10 years agoRevert "Add adaptation option for VBR."
Alex Converse [Fri, 10 Oct 2014 18:31:58 +0000 (11:31 -0700)]
Revert "Add adaptation option for VBR."

This reverts commit 869d4ca51957614dcf5093ebb9e322cc8a8405ca.

This breaks the build via conflict with
e18edd5eb651f9b7563cbd829744807402bfe0d8.

Change-Id: If544b99e367a449452834eb8cce600f58c34ec0d

10 years agoMerge "Optimize the code to set the refernce frame right after reading the header."
hkuang [Fri, 10 Oct 2014 17:40:21 +0000 (10:40 -0700)]
Merge "Optimize the code to set the refernce frame right after reading the header."

10 years agoMerge "Correct the code format."
hkuang [Fri, 10 Oct 2014 17:01:05 +0000 (10:01 -0700)]
Merge "Correct the code format."

10 years agoMerge "Add adaptation option for VBR."
Paul Wilkins [Fri, 10 Oct 2014 16:22:58 +0000 (09:22 -0700)]
Merge "Add adaptation option for VBR."

10 years agoMerge "vp9/choose_partitioning: add missing clear_system_state"
Yaowu Xu [Fri, 10 Oct 2014 16:16:19 +0000 (09:16 -0700)]
Merge "vp9/choose_partitioning: add missing clear_system_state"

10 years agovp9/choose_partitioning: add missing clear_system_state
James Zern [Fri, 10 Oct 2014 15:14:46 +0000 (08:14 -0700)]
vp9/choose_partitioning: add missing clear_system_state

set_vt_partitioning does double math

Change-Id: I8e9d73d5c89b937a5326abf04164d24d9d88c5ef

10 years agoMerge changes Ib5030373,Id614cfe6
James Zern [Fri, 10 Oct 2014 13:48:04 +0000 (06:48 -0700)]
Merge changes Ib5030373,Id614cfe6

* changes:
  test-data.mk: add some sectional comments
  add test-data.mk

10 years agoAdd adaptation option for VBR.
Paul Wilkins [Thu, 9 Oct 2014 13:49:41 +0000 (14:49 +0100)]
Add adaptation option for VBR.

Allow min and maxQ to creep when the undershoot
or overshoot exceeds thresholds controlled by the
command line under_shoot_pct and over_shoot_pct
values.

Default is 100%,100% which ~disables adaptation.

Derf results for example undershoot% / overshoot%:-

Head:- Mean abs (%rate error) = 14.4%

This check in:-
25%/25% - Mean abs (%rate error) = 6.7%
                  PSNR hit -1% SSIM -0.1%

5% / 5%  - Mean abs (%rate error) = 2.2%
                 PSNR hit -3.3% SSIM - 1.1%

Most of the remaining error and most of the quality hit is
at extreme data rates. The adaptation code still has an
exception for material that is in effect static so that we
don't over adjust and over spend on YT slide show type
content.

Change-Id: If25a2449a415449c150acff23df713e9598d64c9

10 years agovp9_avg_intrin_sse2: correct intrinsics include
James Zern [Fri, 10 Oct 2014 08:05:47 +0000 (10:05 +0200)]
vp9_avg_intrin_sse2: correct intrinsics include

immintrin.h -> emmintrin.h
fixes build where newer intrinsics are unavailable

Change-Id: I79311b39bfa782fc2abeb45884ecb417050cb9f8

10 years agoCorrect the code format.
hkuang [Fri, 10 Oct 2014 00:57:45 +0000 (17:57 -0700)]
Correct the code format.

Change-Id: If2de420f8123a4e8bf635dd29205dd74ee174eee

10 years agoOptimize the code to set the refernce frame right after reading the header.
hkuang [Thu, 9 Oct 2014 23:32:36 +0000 (16:32 -0700)]
Optimize the code to set the refernce frame right after reading the header.

Change-Id: I495cf4a366e06e3220ed132500b1ba1c8448f708

10 years agoMerge "Remove unnecessary code."
hkuang [Thu, 9 Oct 2014 22:44:08 +0000 (15:44 -0700)]
Merge "Remove unnecessary code."

10 years agoMerge "Remove unnecessary scale check in set_ref."
hkuang [Thu, 9 Oct 2014 22:43:31 +0000 (15:43 -0700)]
Merge "Remove unnecessary scale check in set_ref."

10 years agoMerge "Rename highbitdepth functions to use highbd prefix"
Deb Mukherjee [Thu, 9 Oct 2014 22:39:56 +0000 (15:39 -0700)]
Merge "Rename highbitdepth functions to use highbd prefix"

10 years agoRemove unnecessary code.
hkuang [Thu, 9 Oct 2014 22:12:12 +0000 (15:12 -0700)]
Remove unnecessary code.

Function will jump to error handler when ref buffer is corrupted.
So "xd->corrupted |= ref_buffer->buf->corrupted;" is useless.

Change-Id: I35353a0637ad0dbb682454e040ef69fa68280bfa

10 years agoRename highbitdepth functions to use highbd prefix
Deb Mukherjee [Wed, 8 Oct 2014 19:43:22 +0000 (12:43 -0700)]
Rename highbitdepth functions to use highbd prefix

Uses highbd_ prefix convention consistently.

Change-Id: I58f7f799a7ff8e32701bcd71c955bcf1cdd4581e

10 years agoRemove unnecessary scale check in set_ref.
hkuang [Thu, 9 Oct 2014 18:58:39 +0000 (11:58 -0700)]
Remove unnecessary scale check in set_ref.

Scale check has been done in read_inter_block_mode_info.

Change-Id: I6c86f93bd579109ed30ff13a04a30e35f5ae6fc5

10 years agoMerge "Remove sub8x8 block index from rd_pick_partition argument"
Jingning Han [Thu, 9 Oct 2014 18:16:11 +0000 (11:16 -0700)]
Merge "Remove sub8x8 block index from rd_pick_partition argument"

10 years agoMerge "Subpel search cleanups and enhancements"
Deb Mukherjee [Thu, 9 Oct 2014 18:14:51 +0000 (11:14 -0700)]
Merge "Subpel search cleanups and enhancements"

10 years agoMerge "Move the high freq coeff check outside store_coding_context"
Alex Converse [Thu, 9 Oct 2014 18:12:02 +0000 (11:12 -0700)]
Merge "Move the high freq coeff check outside store_coding_context"

10 years agoRemove sub8x8 block index from rd_pick_partition argument
Jingning Han [Thu, 9 Oct 2014 02:34:00 +0000 (19:34 -0700)]
Remove sub8x8 block index from rd_pick_partition argument

This parameter is deprecated. Its function is replaced with
other explicit condition check.

Change-Id: I61337e350ba8ca9eb50382db8b4d4acbf45cb7eb

10 years agoMerge "vp8: Suppress denoising with respect to old reference frames."
Marco [Thu, 9 Oct 2014 15:41:49 +0000 (08:41 -0700)]
Merge "vp8: Suppress denoising with respect to old reference frames."

10 years agoMerge "Fix src frame buffer copy and extend"
Yaowu Xu [Thu, 9 Oct 2014 14:08:48 +0000 (07:08 -0700)]
Merge "Fix src frame buffer copy and extend"

10 years agotest-data.mk: add some sectional comments
James Zern [Fri, 3 Oct 2014 23:41:56 +0000 (16:41 -0700)]
test-data.mk: add some sectional comments

+ sort

Change-Id: Ib503037376368cec0cf57cbedeb215ab0eac8304

10 years agoadd test-data.mk
James Zern [Fri, 3 Oct 2014 23:18:58 +0000 (16:18 -0700)]
add test-data.mk

splits the test sources (test.mk) and the test data.

Change-Id: Id614cfe68bfbc09b0e429a37a21ec7a9dcdfadc6

10 years agoMerge "set_vt_partitioning: fix type conversion warning"
James Zern [Thu, 9 Oct 2014 10:53:01 +0000 (03:53 -0700)]
Merge "set_vt_partitioning: fix type conversion warning"

10 years agoset_vt_partitioning: fix type conversion warning
James Zern [Thu, 9 Oct 2014 09:41:36 +0000 (11:41 +0200)]
set_vt_partitioning: fix type conversion warning

double -> int64
+ make threshold_multiplier an int

Change-Id: I6d3607fdf13d670f57c9d9b04a80acb2be1346a0

10 years agovp9_rtcd_defs: fix vp9_avg_8x8 declaration
James Zern [Thu, 9 Oct 2014 08:44:42 +0000 (10:44 +0200)]
vp9_rtcd_defs: fix vp9_avg_8x8 declaration

vp9_avg_8x8 does not depend on x86inc, fixes 32-bit OS X build

Change-Id: I709b874ea84bf57c8cdb5ac7d43eecc6b8c1a2dd

10 years agoSubpel search cleanups and enhancements
Deb Mukherjee [Tue, 7 Oct 2014 09:48:08 +0000 (02:48 -0700)]
Subpel search cleanups and enhancements

- Some fixes to surface fit.
- Returns variance function as cost rather than sad in the
  pattern search and diamond search functions. Only
  vp9_pattern_search_sad function used in bigdia search
  uses sad as integer 1-away costs.
- Deploys SUBPEL_TREE_PRUNED_MORE for speed 4+.

Results:
derf [Speed 3]: About +0.036% in coding efficiency without any
discernible speed loss.
derf [Speed 4]: About 2-3% faster at -0.199% loss in coding efficiency.
derf [Speed 5]: About 3-4% faster at -0.149% loss in coding efficiency.

Change-Id: I8462f94f6adb46966ca964f2bd0400977357fd63

10 years agoMerge "Allow mode search breakout at very low prediction errors"
Yunqing Wang [Thu, 9 Oct 2014 02:58:18 +0000 (19:58 -0700)]
Merge "Allow mode search breakout at very low prediction errors"

10 years agoAllow mode search breakout at very low prediction errors
Yunqing Wang [Thu, 2 Oct 2014 23:25:52 +0000 (16:25 -0700)]
Allow mode search breakout at very low prediction errors

In model_rd_for_sb function, the spatial domain SSE and variance
are checked to see if transform coefficients are quantized to 0.
Besides that, this patch adds another set of thresholds that are
much more strict. These thresholds are used to conduct a partition
block level check to measure if all its TX blocks are skippable
for YUV planes. If it is true, x->skip is set for this partition
block, and thus its mode search is terminated.

This speeds up the encoding at very low prediction error case,
such as screen sharing application. This patch covers what
rd_encode_breakout_test() does, so that function is removed.

Borg test at speed 3 shows:
For stdhd set, psnr: +0.008%, ssim: +0.014%;
For derf set, psnr: +0.018%, ssim: +0.025%.
No noticeable speed change.

Change-Id: I4e5f15cf10016a282a68e35175ff854b28195944

10 years agoMove the high freq coeff check outside store_coding_context
Jingning Han [Wed, 8 Oct 2014 22:02:37 +0000 (15:02 -0700)]
Move the high freq coeff check outside store_coding_context

This fixes valgrind message issue 870.

Change-Id: Ibbc2481923a2995029ab05de30c9e8a6e9f0f9a8

10 years agoUse local variable in vp9_rd_pick_inter_mode_sb
Jingning Han [Wed, 8 Oct 2014 00:10:38 +0000 (17:10 -0700)]
Use local variable in vp9_rd_pick_inter_mode_sb

Change-Id: Ie35a965a6b8de536ccaf61ff61498620d22db205

10 years agoMerge "Clean up header files in vp9_blockd.h and related files"
Jingning Han [Wed, 8 Oct 2014 22:25:09 +0000 (15:25 -0700)]
Merge "Clean up header files in vp9_blockd.h and related files"

10 years agoMerge "Use #define statement for MAX_MB_PLANE"
Jingning Han [Wed, 8 Oct 2014 22:24:56 +0000 (15:24 -0700)]
Merge "Use #define statement for MAX_MB_PLANE"

10 years agovp8: Suppress denoising with respect to old reference frames.
Marco [Tue, 7 Oct 2014 23:15:32 +0000 (16:15 -0700)]
vp8: Suppress denoising with respect to old reference frames.

If the GOLDEN or ALTREF frame was last updated > x frames in the past,
don't use them for denoising (only consider LAST). Using an old reference
frame for denoising, e.g., if it is a long-term reference or the last key frame,
can cause some visible artifacts, in particular in the aggressive denoising mode.

Change-Id: I239c9fbb092c36cba7e95328f1fa67a58d6a7ed9

10 years agoFixes naming bug from previous highbitdepth patch
Deb Mukherjee [Wed, 8 Oct 2014 19:46:37 +0000 (12:46 -0700)]
Fixes naming bug from previous highbitdepth patch

Change-Id: Ife939930309ceea730dd5df594b8f36e6644bf36

10 years agoMerge "Refactoring of highbitdepth bitshift operations"
Deb Mukherjee [Wed, 8 Oct 2014 18:44:50 +0000 (11:44 -0700)]
Merge "Refactoring of highbitdepth bitshift operations"

10 years agoMerge "Add unit test for VP8 denoiser."
JackyChen [Wed, 8 Oct 2014 18:41:14 +0000 (11:41 -0700)]
Merge "Add unit test for VP8 denoiser."

10 years agoFix src frame buffer copy and extend
Yaowu Xu [Wed, 8 Oct 2014 16:06:36 +0000 (09:06 -0700)]
Fix src frame buffer copy and extend

For input source with size that is not multiple of 8, the size is
rounded to 8 and saved in width or height, the original source sizes
are saved in crop_width and crop_height. This commit corrects the
computation of bottom and right extension amounts to use the orignal
sizes, hence crop_width and crop_height.

In addition, this commit also adds the missed initialization for
uv_crop_width and uv_crop_height.

This addresses issue #834

Change-Id: I084543ca7645a4964b88f7cf8ff668f517d3a39b

10 years agoRefactoring of highbitdepth bitshift operations
Deb Mukherjee [Tue, 7 Oct 2014 03:46:11 +0000 (20:46 -0700)]
Refactoring of highbitdepth bitshift operations

Moves the high bitdepth bit-shift operations to tools_common.c

Change-Id: Ifab91574362609cd224d2d6bae5fde00652eb3e4

10 years agoAdd unit test for VP8 denoiser.
JackyChen [Tue, 7 Oct 2014 22:30:23 +0000 (15:30 -0700)]
Add unit test for VP8 denoiser.

The unit test is to check the bitexactness of SSE2 code with C code.

Change-Id: I13cc08a557b02357e5d6c2db7a49e93ce0d8e16f

10 years agoMerge "experimental : partition using 1/8 x 1/8 image"
Jim Bankoski [Wed, 8 Oct 2014 16:04:26 +0000 (09:04 -0700)]
Merge "experimental : partition using 1/8 x 1/8 image"

10 years agoMerge "Force better lower quantizer keyframe in case of high quantizer."
Jim Bankoski [Wed, 8 Oct 2014 16:04:01 +0000 (09:04 -0700)]
Merge "Force better lower quantizer keyframe in case of high quantizer."

10 years agoRevert "Change the y4m buffer allocation size"
Yaowu Xu [Wed, 8 Oct 2014 15:38:15 +0000 (08:38 -0700)]
Revert "Change the y4m buffer allocation size"

This reverts commit 72ef1949388c4c0d82769ef06c6db0195b124b13.

Change-Id: Ic1906bcc6da05d2e6529152b92df809c8e5a2406

10 years agoMerge "Improve two pass VBR accuracy."
Paul Wilkins [Wed, 8 Oct 2014 11:23:30 +0000 (04:23 -0700)]
Merge "Improve two pass VBR accuracy."