]> granicus.if.org Git - libvpx/log
libvpx
11 years agoMerge "thumb: Adjust the conversion of the position independent switch"
Johann [Tue, 21 May 2013 22:44:52 +0000 (15:44 -0700)]
Merge "thumb: Adjust the conversion of the position independent switch"

11 years agoMerge "Add a script for converting ads arm assembly to microsoft armasm format"
Johann [Tue, 21 May 2013 22:41:25 +0000 (15:41 -0700)]
Merge "Add a script for converting ads arm assembly to microsoft armasm format"

11 years agoMerge "ads2gas: Factorize thumb instruction replacements into a separate perl module"
Johann [Tue, 21 May 2013 22:38:53 +0000 (15:38 -0700)]
Merge "ads2gas: Factorize thumb instruction replacements into a separate perl module"

11 years agoMerge changes I179837d6,If7818d8e,Ifa27c706,I4be8ca12,I3c23a2ce,If02a7b85
James Zern [Tue, 21 May 2013 19:58:17 +0000 (12:58 -0700)]
Merge changes I179837d6,If7818d8e,Ifa27c706,I4be8ca12,I3c23a2ce,If02a7b85

* changes:
  msvs: Don't link to winmm.lib
  msvs: Pass dependency project vcxproj files to the project generation script
  msvs: Support producing both vcproj and vcxproj depending on configure variables
  configure: Add x86*-vs10/11 targets
  gen_msvs_sln: Support producing versions 10 and 11, handle vcxproj files
  Add a new script for producing vcxproj files

11 years agoMerge "Fixes for run-time change in temporal layers."
Marco Paniconi [Tue, 21 May 2013 16:24:37 +0000 (09:24 -0700)]
Merge "Fixes for run-time change in temporal layers."

11 years agoFixes for run-time change in temporal layers.
Marco Paniconi [Fri, 10 May 2013 22:04:38 +0000 (15:04 -0700)]
Fixes for run-time change in temporal layers.

Use a separate counter for resetting the pattern upon
a change in temporal layers, and set/initialize the
layer context parameters for the new temporal layer state.

Also moved the setting of layer configuation in init_config()
to a separate function.

Change-Id: Ic7fc023a1e5490020509e107004645098f4c00f0

11 years agothumb: Adjust the conversion of the position independent switch
Martin Storsjo [Wed, 15 May 2013 12:42:18 +0000 (15:42 +0300)]
thumb: Adjust the conversion of the position independent switch

This is required since the microsoft assembler claims that
add.w r12, pc, #10
generated unpredictable behaviour.

Change-Id: Ia8e1830def965c88ca4e2f48a24107bac6a4cb9d

11 years agoAdd a script for converting ads arm assembly to microsoft armasm format
Martin Storsjo [Tue, 20 Nov 2012 14:05:40 +0000 (16:05 +0200)]
Add a script for converting ads arm assembly to microsoft armasm format

The formats are basically the same, but a few minor details need
to be adjusted. Addiitonally, when building for the WinRT/Windows
Phone 8 platforms, one has to build for thumb, so convert instructions
accordingly.

Change-Id: I3c3902aa20fd3bfc29168d3a1bf17111e5481dcb

11 years agoads2gas: Factorize thumb instruction replacements into a separate perl module
Martin Storsjo [Wed, 15 May 2013 13:08:19 +0000 (16:08 +0300)]
ads2gas: Factorize thumb instruction replacements into a separate perl module

Change-Id: Ie7b83ad696e4743c844df8e9ef5899aca65cc92e

11 years agomsvs: Don't link to winmm.lib
Martin Storsjo [Sun, 19 May 2013 09:21:29 +0000 (12:21 +0300)]
msvs: Don't link to winmm.lib

Linking to this library doesn't seem to be necessary, and this library
isn't available in the windows phone API subset.

Change-Id: I179837d6f9c7407f1cb6101533dc978316a30adf

11 years agomsvs: Pass dependency project vcxproj files to the project generation script
Martin Storsjo [Sat, 18 May 2013 16:57:19 +0000 (19:57 +0300)]
msvs: Pass dependency project vcxproj files to the project generation script

This is required since the dependencies are specified within the
vcxproj files themselves, not in the solution file. This doesn't
do anything for the old vcproj files.

Change-Id: If7818d8e9dbf4aac5bcb34abe648946cf24db51c

11 years agomsvs: Support producing both vcproj and vcxproj depending on configure variables
Martin Storsjo [Thu, 16 May 2013 21:56:46 +0000 (00:56 +0300)]
msvs: Support producing both vcproj and vcxproj depending on configure variables

Change-Id: Ifa27c7064118c24401ea4e55a64e129c4f503cd5

11 years agoconfigure: Add x86*-vs10/11 targets
Martin Storsjo [Thu, 16 May 2013 21:57:57 +0000 (00:57 +0300)]
configure: Add x86*-vs10/11 targets

Change-Id: I4be8ca12ccdce86d1409b7121cff94b4784ab31c

11 years agogen_msvs_sln: Support producing versions 10 and 11, handle vcxproj files
Martin Storsjo [Thu, 16 May 2013 21:59:20 +0000 (00:59 +0300)]
gen_msvs_sln: Support producing versions 10 and 11, handle vcxproj files

Change-Id: I3c23a2ce383d9291a823d2be7364608ce0e01570

11 years agoAdd a new script for producing vcxproj files
Martin Storsjo [Thu, 16 May 2013 21:53:05 +0000 (00:53 +0300)]
Add a new script for producing vcxproj files

Change-Id: If02a7b85f417b9693dcdab73573fc13f67e17016

11 years agoads2gas: Use the correct perl string comparison operator
Martin Storsjo [Wed, 15 May 2013 17:54:20 +0000 (20:54 +0300)]
ads2gas: Use the correct perl string comparison operator

Using == ended up matching no matter what string was passed in
(which so far only happened if when the -thumb parameter
was set).

Change-Id: Ifa7b611d016d984aec3b697b5a1a07839f7508dc

11 years agoAdd an option for building for arm in thumb mode
Martin Storsjo [Sun, 12 May 2013 22:16:09 +0000 (01:16 +0300)]
Add an option for building for arm in thumb mode

Change-Id: I5a46645064c2fe1c13287cf06c3244820b4e699e

11 years agoads2gas: Allow converting code to thumb mode
Martin Storsjo [Sat, 11 May 2013 23:15:45 +0000 (02:15 +0300)]
ads2gas: Allow converting code to thumb mode

Currently this only supports thumb2.

This involves rewriting certain instructions that can't be expressed
in thumb2 into equivalent instruction sequences. The regexps for
rewriting are currently written pretty narrowly, only covering the
exact cases currently encountered in the code base.

No IT instructions are added (since that would require more logic than
plain regexps), so using the thumb mode requires enabling
-mimplicit-it=always/thumb.

Change-Id: I1f676ad1d351381f02bcf00105102aa8dd7ae364

11 years agoMerge "Add __inline__ to INLINE definition."
Johann [Fri, 3 May 2013 16:38:56 +0000 (09:38 -0700)]
Merge "Add __inline__ to INLINE definition."

11 years agoMerge "configure: arm: Check __ARM_PCS_VFP if the float ABI hasn't been defined"
John Koleszar [Fri, 3 May 2013 03:54:43 +0000 (20:54 -0700)]
Merge "configure: arm: Check __ARM_PCS_VFP if the float ABI hasn't been defined"

11 years agoAdd __inline__ to INLINE definition.
Johann [Thu, 2 May 2013 19:32:02 +0000 (12:32 -0700)]
Add __inline__ to INLINE definition.

When using 'always_inline' 'inline' should be specified as well.

Thanks to Digit for identifying this:
https://chromiumcodereview.appspot.com/14820003/

Change-Id: If1647fac91b85ecabe6d3cd04290d5c08c5a11ea

11 years agoMerge "Add cpu detection for Android x86"
Johann [Thu, 2 May 2013 05:58:41 +0000 (22:58 -0700)]
Merge "Add cpu detection for Android x86"

11 years agoAdd cpu detection for Android x86
changjun.yang [Fri, 26 Apr 2013 13:00:24 +0000 (21:00 +0800)]
Add cpu detection for Android x86

Change-Id: I3fe24001cda08d7322b630f65c5e3fad881f8036

11 years agoconfigure: arm: Check __ARM_PCS_VFP if the float ABI hasn't been defined
Martin Storsjo [Wed, 1 May 2013 20:05:54 +0000 (23:05 +0300)]
configure: arm: Check __ARM_PCS_VFP if the float ABI hasn't been defined

The support for detecting hardfp toolchains in af9dd50e is a
step in the right direction, but that particular switch case
isn't executed at all if the toolchain variable is set.

This fixes cross building from x86 ubuntu to armhf ubuntu,
in configurations such as
"CROSS=arm-linux-gnueabihf- ./configure --target=armv7-linux-gcc".

Change-Id: I6f141361e40374fbab564f9196d90e598fe9a0f6

11 years agoMerge "Change to fourcc to enable decoding of ffmpeg files."
John Koleszar [Tue, 30 Apr 2013 15:53:13 +0000 (08:53 -0700)]
Merge "Change to fourcc to enable decoding of ffmpeg files."

11 years agoChange to fourcc to enable decoding of ffmpeg files.
Jim Bankoski [Mon, 29 Apr 2013 21:24:21 +0000 (14:24 -0700)]
Change to fourcc to enable decoding of ffmpeg files.

Change-Id: Ia16f167d904d53bc38cb3a8c841c6c52daad500f

11 years agoMatch unsigned types
Johann [Mon, 29 Apr 2013 21:22:30 +0000 (14:22 -0700)]
Match unsigned types

Fixes build warning in MSVC:
vp9\vp9_dx_iface.c(420) : warning C4018: '<' : signed/unsigned mismatch
vp9\vp9_dx_iface.c(423) : warning C4018: '<' : signed/unsigned mismatch

Change-Id: Ia238071aee94b2f882c1e74c380adc3df506dfb6

11 years agoMerge "Whitespace nit"
Johann [Fri, 26 Apr 2013 19:27:27 +0000 (12:27 -0700)]
Merge "Whitespace nit"

11 years agocode cleanup for arm_cpudetect.c
changjun.yang [Fri, 26 Apr 2013 07:16:42 +0000 (15:16 +0800)]
code cleanup for arm_cpudetect.c

Change-Id: I5c49a983ced45197e1035fa5615d71b0bdad4109

11 years agoWhitespace nit
Johann [Fri, 26 Apr 2013 08:03:35 +0000 (01:03 -0700)]
Whitespace nit

Change-Id: I7486970c57cda75d26ec2c6d1f36bd668c955f66

11 years agoMerge "Normalize more intrinsic filenames"
Johann [Fri, 26 Apr 2013 06:30:41 +0000 (23:30 -0700)]
Merge "Normalize more intrinsic filenames"

11 years agoNormalize more intrinsic filenames
Johann [Fri, 26 Apr 2013 06:26:20 +0000 (23:26 -0700)]
Normalize more intrinsic filenames

vp9_dequantize_x86 has only sse2 functions.

vp9_dct_sse2_intrinsics has no namespace collision and can drop
_intrinsics.

vp9_idct_mmx.h is unused.

Change-Id: Ic16e31fb372a1d1e841a62ecb4189fe8f95808ec

11 years agoMerge "Change default iOS dev path"
Johann [Thu, 25 Apr 2013 20:29:40 +0000 (13:29 -0700)]
Merge "Change default iOS dev path"

11 years agoRename vp9_idct_x86.c
Johann [Thu, 25 Apr 2013 18:13:02 +0000 (11:13 -0700)]
Rename vp9_idct_x86.c

Remove similarly named header file. It is obsolete.

Move file to match naming style.

Adjust make file to include the file correctly and remove extra
unnecessary #if guard.

Change-Id: Ifba07ba9938a5df08a9f4eda54a3ac4d6983f7bf

11 years agoChange default iOS dev path
Johann [Wed, 24 Apr 2013 21:26:35 +0000 (14:26 -0700)]
Change default iOS dev path

This can be manually overridden with --libc=

Change-Id: I0b857c751d5dc5423f79785e934bc8a714758e75

11 years agoMerge "Rename quantize_sse2_intrinsics.c"
Johann [Wed, 24 Apr 2013 17:10:55 +0000 (10:10 -0700)]
Merge "Rename quantize_sse2_intrinsics.c"

11 years agoRename quantize_sse2_intrinsics.c
Johann [Wed, 24 Apr 2013 16:08:56 +0000 (09:08 -0700)]
Rename quantize_sse2_intrinsics.c

The only reason for the _intrinsics part of the file name was for the
interim period where only one of the functions was redone and the base
file name was the same.

Change-Id: I7851154f1633d48821bee885b1cadb2148e65a23

11 years agoResolve declaration and implementation.
Johann [Tue, 23 Apr 2013 17:10:10 +0000 (10:10 -0700)]
Resolve declaration and implementation.

Clean Windows build warnings:
warning C4028: formal parameter <N> different from declaration

This was fixed independently in master and experimental but the fixes
were in opposite directions. One added const to the declaration and the
other removed it from the implementation.

Also update the variable names. This doesn't modify the data so call it
ref, matching the functions in the vicinity, rather than dst.

Change-Id: I2ffc6b4a874cb98c26487b909d20a5e099b5582c

11 years agoImprove sign consistency.
Johann [Tue, 23 Apr 2013 16:55:03 +0000 (09:55 -0700)]
Improve sign consistency.

Fix warning on windows: signed/unsigned mismatch on lines 415, 454

Comparison was between size_t data_sz >= int index_sz on 415 and
unsigned int data_sz >= int index_sz on 454. Both might be changed to
size_t but that would be tracing and replacing all comparisons is
outside the scope of this change.

In the rest of these two functions ensure unsigned values are used
consistently.

Change-Id: I922b399ceca612a92f44b9d1d331c1c6bae9d768

11 years agoMerge "Removed shadow warnings : postproc.c decodframe.c threading.c"
Scott LaVarnway [Fri, 19 Apr 2013 14:19:14 +0000 (07:19 -0700)]
Merge "Removed shadow warnings : postproc.c decodframe.c threading.c"

11 years agoMerge "Removed shadow warnings : mcomp.c rdopt.c"
Scott LaVarnway [Fri, 19 Apr 2013 14:16:34 +0000 (07:16 -0700)]
Merge "Removed shadow warnings : mcomp.c rdopt.c"

11 years agoMerge "Removed shadow warnings : bitstream.c encodeframe.c onyx_if.c"
Scott LaVarnway [Fri, 19 Apr 2013 14:08:59 +0000 (07:08 -0700)]
Merge "Removed shadow warnings : bitstream.c encodeframe.c onyx_if.c"

11 years agoMerge "vpxdec: correct VP[89] fourccs"
John Koleszar [Thu, 18 Apr 2013 21:54:55 +0000 (14:54 -0700)]
Merge "vpxdec: correct VP[89] fourccs"

11 years agovpxdec: correct VP[89] fourccs
James Zern [Thu, 18 Apr 2013 20:01:57 +0000 (13:01 -0700)]
vpxdec: correct VP[89] fourccs

should have no effect as they are used in nestegg mappings, but aligns
the defines with vpxenc.c

Change-Id: Ic2295cd63701894c2963274239602b54cbb58631

11 years agolibvpx: Fix vp9 clang build.
Frank Galligan [Wed, 17 Apr 2013 22:46:12 +0000 (15:46 -0700)]
libvpx: Fix vp9 clang build.

- UNINITIALIZED_IS_SAFE Macro triggers a warning in Clang for
  structs.

Change-Id: Ib02c82f1fede7826564e17ccb7171c6fb18b8e44

11 years agoFix Android ndk-build
Johann [Wed, 17 Apr 2013 17:52:50 +0000 (10:52 -0700)]
Fix Android ndk-build

Add the config directory to the rtcd generation script. libvpx is
configured in the jni directory but ndk-build is intended to be run from
the next directory up. Currently it needs to be run from the jni
directory but this is being looked in to.

Add a trailing slash to allow the variable to be empty.

Reduce offset generation to the files which are actually used.

Change-Id: Ia84fac37e8998ba647423d0ee45fc66a891ce10c

11 years agoMerge "Include RTCD header in encodeframe.c"
Johann [Wed, 17 Apr 2013 17:14:30 +0000 (10:14 -0700)]
Merge "Include RTCD header in encodeframe.c"

11 years agoMerge "set up a speed 1"
Jim Bankoski [Wed, 17 Apr 2013 13:33:42 +0000 (06:33 -0700)]
Merge "set up a speed 1"

11 years agoFaster vp9_short_fdct4x4 and vp9_short_fdct8x4.
Christian Duvivier [Mon, 25 Mar 2013 23:18:38 +0000 (16:18 -0700)]
Faster vp9_short_fdct4x4 and vp9_short_fdct8x4.

Scalar path is about 1.3x faster (2.1% overall encoder speedup).
SSE2 path is about 5.0x faster (8.4% overall encoder speedup).

Change-Id: I360d167b5ad6f387bba00406129323e2fe6e7dda

11 years agoset up a speed 1
Jim Bankoski [Tue, 16 Apr 2013 21:49:30 +0000 (14:49 -0700)]
set up a speed 1

slightly worse results for faster encodes

Change-Id: Ic5b38fcde7a2e334c4724e125b558bcb97783af6

11 years agoMerge branch 'experimental' into master
John Koleszar [Fri, 12 Apr 2013 22:33:04 +0000 (15:33 -0700)]
Merge branch 'experimental' into master

VP9 preview bitstream 2, commit '868ecb55a1528ca3f19286e7d1551572bf89b642'

Conflicts:
vp9/vp9_common.mk

Change-Id: I3f0f6e692c987ff24f98ceafbb86cb9cf64ad8d3

11 years agoInclude RTCD header in encodeframe.c
Johann [Mon, 15 Apr 2013 19:19:06 +0000 (12:19 -0700)]
Include RTCD header in encodeframe.c

The file uses functions defined in vp8_rtcd.h but did not include the
header.

Change-Id: I110196ddc9181e533be1fe656e21c1791cabe226

11 years agoFix for multi-res-encoding:
Marco Paniconi [Fri, 12 Apr 2013 01:19:18 +0000 (18:19 -0700)]
Fix for multi-res-encoding:

Use local variable for setting the improved prediction mode.
cpi->sf.improved_mv_pred is set/fixed at the frame level
and should not be changed inside pick_inter_mode.

Change-Id: Ie28d9171ac000e631af0e30204970e3d4fff3078

11 years agofix make test invocation for msvc win64
James Zern [Fri, 5 Apr 2013 18:56:54 +0000 (11:56 -0700)]
fix make test invocation for msvc win64

Change-Id: If5d4b7ffa67223ed72b53a6c9b9e42b4de5718f2

11 years agotests: use a portable rand() implementation
James Zern [Fri, 5 Apr 2013 02:00:31 +0000 (19:00 -0700)]
tests: use a portable rand() implementation

the one from gtest in this case: testing::internal::Random.
this will make the tests deterministic between platforms. addresses
issue #568.

Change-Id: I5a8a92f5c33f52cb0a219c1dd3d02335acbbf163

11 years agoDemux vp9_loopfilter_x86.c
Johann [Tue, 2 Apr 2013 18:45:01 +0000 (11:45 -0700)]
Demux vp9_loopfilter_x86.c

Allow more careful targeting of compiler flags.

Change-Id: I963ab4a6479dedb165419310dfca52a58a9877b8

11 years agovp9_sadmxn_x86 only contains SSE2 functions
Johann [Tue, 2 Apr 2013 18:20:55 +0000 (11:20 -0700)]
vp9_sadmxn_x86 only contains SSE2 functions

Rename the file and clean up includes. In the future we would like to
pattern match the files which need additional compiler flags.

Change-Id: I2c76256467f392a78dd4ccc71e6e0a580e158e56

11 years agoAdding/Uncommenting elements for Alpha Support
Vignesh Venkatasubramanian [Mon, 1 Apr 2013 22:36:29 +0000 (15:36 -0700)]
Adding/Uncommenting elements for Alpha Support

Uncommenting Track elements related to BlockAdditional and adding
the new AlphaMode element as specified in the matroska spec here:
http://matroska.org/technical/specs/index.html#AlphaMode

Change-Id: I87895931e8885e4832efa74776ab1bea91a634e2

11 years agoMerge "Tokenization code cleanup." into experimental
John Koleszar [Fri, 29 Mar 2013 17:55:55 +0000 (10:55 -0700)]
Merge "Tokenization code cleanup." into experimental

11 years agoMerge "Extracting common motion vector prediction code." into experimental
John Koleszar [Fri, 29 Mar 2013 17:43:38 +0000 (10:43 -0700)]
Merge "Extracting common motion vector prediction code." into experimental

11 years agoMerge "General code cleanup." into experimental
John Koleszar [Fri, 29 Mar 2013 17:40:34 +0000 (10:40 -0700)]
Merge "General code cleanup." into experimental

11 years agoMerge "Extracting decode_tiles function." into experimental
John Koleszar [Fri, 29 Mar 2013 17:25:34 +0000 (10:25 -0700)]
Merge "Extracting decode_tiles function." into experimental

11 years agoMerge "define a specific neighborhood for SB64 mv search" into experimental
Yaowu Xu [Fri, 29 Mar 2013 16:26:14 +0000 (09:26 -0700)]
Merge "define a specific neighborhood for SB64 mv search" into experimental

11 years agoMerge "remove code not in use" into experimental
Yaowu Xu [Fri, 29 Mar 2013 15:40:29 +0000 (08:40 -0700)]
Merge "remove code not in use" into experimental

11 years agoMerge "Reoptimizing the interpolation filters" into experimental
Deb Mukherjee [Fri, 29 Mar 2013 14:15:05 +0000 (07:15 -0700)]
Merge "Reoptimizing the interpolation filters" into experimental

11 years agoMerge "Bug fix: Issue 532: VPX codec executes emms instruction without"
Scott LaVarnway [Thu, 28 Mar 2013 21:26:13 +0000 (14:26 -0700)]
Merge "Bug fix: Issue 532: VPX codec executes emms instruction without"

11 years agoMerge "Adjust mv_ratio_accumulator threshold." into experimental
Paul Wilkins [Thu, 28 Mar 2013 19:53:23 +0000 (12:53 -0700)]
Merge "Adjust mv_ratio_accumulator threshold." into experimental

11 years agoMerge "Fix mix-up in pt token indexing." into experimental
Ronald S. Bultje [Thu, 28 Mar 2013 19:53:00 +0000 (12:53 -0700)]
Merge "Fix mix-up in pt token indexing." into experimental

11 years agoMerge "Fix crash when --tune=ssim is selected." into experimental
Yaowu Xu [Thu, 28 Mar 2013 18:23:44 +0000 (11:23 -0700)]
Merge "Fix crash when --tune=ssim is selected." into experimental

11 years agoMerge "Save nzcstats." into experimental
Ronald S. Bultje [Thu, 28 Mar 2013 16:36:58 +0000 (09:36 -0700)]
Merge "Save nzcstats." into experimental

11 years agoFix mix-up in pt token indexing.
Ronald S. Bultje [Thu, 28 Mar 2013 16:24:29 +0000 (09:24 -0700)]
Fix mix-up in pt token indexing.

This fixes uninitialized reads in the trellis, and probably makes the
trellis do something again.

Change-Id: Ifac8dae9aa77574bde0954a71d4571c5c556df3c

11 years agoAdjust mv_ratio_accumulator threshold.
Paul Wilkins [Tue, 26 Mar 2013 14:40:24 +0000 (14:40 +0000)]
Adjust mv_ratio_accumulator threshold.

This threshold effectively limits the amount of motion
from one end of a GF/ARF group to the other.
This patch makes the threshold depend on image size.

Change-Id: Id45d1d7bced815f86ddd037be53164894b00b82f

11 years agoFix crash when --tune=ssim is selected.
Paul Wilkins [Tue, 26 Mar 2013 13:11:52 +0000 (13:11 +0000)]
Fix crash when --tune=ssim is selected.

Crash fix only. No functional change or testing.

Change-Id: I0c6d114d024c29fc11ae61666f5938f11b01dd6a

11 years agodefine a specific neighborhood for SB64 mv search
Yaowu Xu [Wed, 27 Mar 2013 18:07:44 +0000 (11:07 -0700)]
define a specific neighborhood for SB64 mv search

Change-Id: Ifda91d697c5970c65ce3ec1feac5562124f91782

11 years agoExtracting decode_tiles function.
Dmitry Kovalev [Wed, 27 Mar 2013 23:23:12 +0000 (16:23 -0700)]
Extracting decode_tiles function.

Extracting decode_tiles function from vp9_decode_frame.

Change-Id: I02a465eeaf76138ef3559e1d46deb452c10e1219

11 years agoExtracting common motion vector prediction code.
Dmitry Kovalev [Wed, 27 Mar 2013 21:35:36 +0000 (14:35 -0700)]
Extracting common motion vector prediction code.

Adding b_mv_pred_row and b_mv_pred_col functions, updating
mi_mv_pred_row and mi_mv_pred_row functions.

Change-Id: I9af068442d4474478375943cc6fce1605d6fc0a5

11 years agoGeneral code cleanup.
Dmitry Kovalev [Wed, 27 Mar 2013 21:22:30 +0000 (14:22 -0700)]
General code cleanup.

Removing redundant code, lower case variable names, better indentation,
better parameter names, adding const to readonly parameters.

Change-Id: Ibfdee00f60316fdc5b3f024028c7aaa76a627483

11 years agoMerge "Extract setup_frame_size and update_frame_context functions." into experimental
John Koleszar [Wed, 27 Mar 2013 21:21:57 +0000 (14:21 -0700)]
Merge "Extract setup_frame_size and update_frame_context functions." into experimental

11 years agoExtract setup_frame_size and update_frame_context functions.
Dmitry Kovalev [Wed, 27 Mar 2013 21:04:35 +0000 (14:04 -0700)]
Extract setup_frame_size and update_frame_context functions.

Extracting setup_frame_size and update_frame_context functions. Introducing
vp9_read_prob function as shortcut for (vp9_prob)vp9_read_literal(r, 8).

Change-Id: Ia5c68fd725b2d1b9c5eb20f69cacb62361b5a3dd

11 years agoTokenization code cleanup.
Dmitry Kovalev [Wed, 27 Mar 2013 21:03:56 +0000 (14:03 -0700)]
Tokenization code cleanup.

Moving almost identical code to decode_sb32 and decode_sb64 functions.

Change-Id: Id39377aa5106be85d5b0fc3f83586b3779a6c0da

11 years agoMerge "Convert inv_tile_order to control interface" into experimental
John Koleszar [Wed, 27 Mar 2013 20:41:12 +0000 (13:41 -0700)]
Merge "Convert inv_tile_order to control interface" into experimental

11 years agoMerge "Convert g_frame_parallel_decoding to control interface" into experimental
John Koleszar [Wed, 27 Mar 2013 20:41:09 +0000 (13:41 -0700)]
Merge "Convert g_frame_parallel_decoding to control interface" into experimental

11 years agoMerge "Modify idct code to use macro" into experimental
Yunqing Wang [Wed, 27 Mar 2013 19:51:41 +0000 (12:51 -0700)]
Merge "Modify idct code to use macro" into experimental

11 years agoModify idct code to use macro
Yunqing Wang [Wed, 27 Mar 2013 19:36:08 +0000 (12:36 -0700)]
Modify idct code to use macro

Small modification of idct code.

Change-Id: I5c4e3223944c68e4ccf762f6cf07c990250e4290

11 years agoMerge "Merge branch 'master' into experimental" into experimental
John Koleszar [Wed, 27 Mar 2013 19:29:32 +0000 (12:29 -0700)]
Merge "Merge branch 'master' into experimental" into experimental

11 years agoMerge "Cleaning up rate control code." into experimental
John Koleszar [Wed, 27 Mar 2013 19:29:00 +0000 (12:29 -0700)]
Merge "Cleaning up rate control code." into experimental

11 years agoMerge "Optimize 32x32 idct function" into experimental
Yunqing Wang [Wed, 27 Mar 2013 18:30:48 +0000 (11:30 -0700)]
Merge "Optimize 32x32 idct function" into experimental

11 years agoConvert inv_tile_order to control interface
John Koleszar [Wed, 27 Mar 2013 18:22:20 +0000 (11:22 -0700)]
Convert inv_tile_order to control interface

Restore ABI compatibility with the master branch.

Change-Id: Ie9f6fdf536662bd87dfcf114d16f003422670763

11 years agoConvert g_frame_parallel_decoding to control interface
John Koleszar [Wed, 27 Mar 2013 18:07:26 +0000 (11:07 -0700)]
Convert g_frame_parallel_decoding to control interface

Restore ABI compatibility with the master branch.

Change-Id: Ic57e7e1de09ab33bd37990e52a63ba7c8f1432a4

11 years agoOptimize 32x32 idct function
Yunqing Wang [Wed, 27 Mar 2013 17:46:35 +0000 (10:46 -0700)]
Optimize 32x32 idct function

Wrote sse2 version of vp9_short_idct_32x32 function. Compared
to c version, the sse2 version is 5X faster.

Change-Id: I071ab7378358346ab4d9c6e2980f713c3c209864

11 years agoMerge branch 'master' into experimental
John Koleszar [Wed, 27 Mar 2013 17:41:29 +0000 (10:41 -0700)]
Merge branch 'master' into experimental

Pick up VP8 encryption, quantization changes, and some fixes to vpxenc

Conflicts:
test/decode_test_driver.cc
test/decode_test_driver.h
test/encode_test_driver.cc
vp8/vp8cx.mk
vpxdec.c
vpxenc.c

Change-Id: I9fbcc64808ead47e22f1f22501965cc7f0c4791c

11 years agoSave nzcstats.
Ronald S. Bultje [Mon, 25 Mar 2013 23:29:45 +0000 (16:29 -0700)]
Save nzcstats.

Change-Id: I4a3a9eb9f9d17218a0f0d7e148123d34dae879c2

11 years agoScatter-based scantables.
Ronald S. Bultje [Mon, 25 Mar 2013 19:14:01 +0000 (12:14 -0700)]
Scatter-based scantables.

This gains about 0.2% on derf, 0.1% on hd and 0.4% on stdhd. I can put
this under an experimental flag if wanted, just trying to get my patch
queue in shape.

Change-Id: Ibe1a30fe0e0b07bec4802e0f3ff0ba22e505f576

11 years agoMerge "ENTROPY_STATS -> VP8_ENTROPY_STATS in vp8/." into experimental
Ronald S. Bultje [Wed, 27 Mar 2013 02:18:02 +0000 (19:18 -0700)]
Merge "ENTROPY_STATS -> VP8_ENTROPY_STATS in vp8/." into experimental

11 years agoMerge "Add col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs." into...
Ronald S. Bultje [Wed, 27 Mar 2013 02:17:08 +0000 (19:17 -0700)]
Merge "Add col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs." into experimental

11 years agoMerge "Redo banding for all transforms." into experimental
Ronald S. Bultje [Wed, 27 Mar 2013 02:16:44 +0000 (19:16 -0700)]
Merge "Redo banding for all transforms." into experimental

11 years agoMerge "Use above/left (instead of previous in scan-order) as token context." into...
Ronald S. Bultje [Wed, 27 Mar 2013 02:16:24 +0000 (19:16 -0700)]
Merge "Use above/left (instead of previous in scan-order) as token context." into experimental

11 years agoImplicit weighted prediction experiment
Deb Mukherjee [Tue, 12 Mar 2013 21:21:08 +0000 (14:21 -0700)]
Implicit weighted prediction experiment

Adds an experiment to use a weighted prediction of two INTER
predictors, where the weight is one of (1/4, 3/4), (3/8, 5/8),
(1/2, 1/2), (5/8, 3/8) or (3/4, 1/4), and is chosen implicitly
based on consistency of the predictors to the already
reconstructed pixels to the top and left of the current macroblock
or superblock.

Currently the weighting is not applied to SPLITMV modes, which
default to the usual (1/2, 1/2) weighting. However the code is in
place controlled by a macro. The same weighting is used for Y and
UV components, where the weight is derived from analyzing the Y
component only.

Results (over compound inter-intra experiment)
derf: +0.18%
yt: +0.34%
hd: +0.49%
stdhd: +0.23%

The experiment suggests bigger benefit for explicitly signaled weights.

Change-Id: I5438539ff4485c5752874cd1eb078ff14bf5235a

11 years agoAdd col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs.
Ronald S. Bultje [Mon, 25 Mar 2013 19:30:00 +0000 (12:30 -0700)]
Add col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs.

These are mostly just for experimental purposes. I saw small gains (in
the 0.1% range) when playing with this on derf.

Change-Id: Ib21eed477bbb46bddcd73b21c5c708a5b46abedc

11 years agoRedo banding for all transforms.
Ronald S. Bultje [Mon, 25 Mar 2013 19:28:24 +0000 (12:28 -0700)]
Redo banding for all transforms.

Now that the first AC coefficient in both directions use the same DC
as their context, there no longer is a purpose in letting both have
their own band. Merging these two bands allows us to split bands for
some of the very high-frequency AC bands.

In addition, I'm redoing the banding for the 1D-ADST col/row scans. I
don't think the old banding made any sense at all (it merged the last
coefficient of the first row/col in the same band as the first two of
the second row/col), which was clearly an oversight from the band being
applied in scan-order (rather than in their actual position). Now,
coefficients at the same position will be in the same band, regardless
what scan order is used. I think this makes most sense for the purpose
of banding, which is basically "predict energy for this coefficient
depending on the energy of context coefficients" (i.e. pt).

After full re-training, together with previous patch, derf gains about
1.2-1.3%, and hd/stdhd gain about 0.9-1.0%.

Change-Id: I7a0cc12ba724e88b278034113cb4adaaebf87e0c