Revert "Revert part of r7561, "Refactor audio conversion functions.""

This restores the conversion changes to AudioProcessing originally
added in r7561, with minor alterations to ensure it passes all tests.

TBR=kwiberg

Review URL: https://webrtc-codereview.appspot.com/28899004

git-svn-id: http://webrtc.googlecode.com/svn@7574 4adac7df-926f-26a2-2b94-8c16560cd09d
Adapting bitrate according to maxplaybackrate for Opus.

BUG=
R=mflodman@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29929004

git-svn-id: http://webrtc.googlecode.com/svn@7575 4adac7df-926f-26a2-2b94-8c16560cd09d
Simplify bwe tests.

R=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29999004

git-svn-id: http://webrtc.googlecode.com/svn@7576 4adac7df-926f-26a2-2b94-8c16560cd09d
Configure A/V sync in WebRtcVideoEngine2.

Sets up A/V sync for the first video receive channel with the default
voice channel. This is only done when conference mode is disabled to
preserve existing behavior. Ideally we'd know which voice channel to
sync with here.

R=mflodman@webrtc.org, stefan@webrtc.org
BUG=1788

Review URL: https://webrtc-codereview.appspot.com/23249004

git-svn-id: http://webrtc.googlecode.com/svn@7577 4adac7df-926f-26a2-2b94-8c16560cd09d
Implement conference-mode temporal-layer screencast.

Renames VideoStream::temporal_layers to temporal_layer_thresholds_bps to
convey that it contains thresholds needed to ramp up between them (1
threshold -> 2 temporal layers, etc.).

R=mflodman@webrtc.org, stefan@webrtc.org
BUG=1788,1667

Review URL: https://webrtc-codereview.appspot.com/23269004

git-svn-id: http://webrtc.googlecode.com/svn@7578 4adac7df-926f-26a2-2b94-8c16560cd09d
Fix a name collision with Android libc++

The Android libc++ has a symbol called '_P'
This CL renames a property called _P in webrtc.

BUG=chromium:427718
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/30009004

Patch from Fabrice de Gans-Riberi <fdegans@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn@7579 4adac7df-926f-26a2-2b94-8c16560cd09d
Build fix for MIPS32R6.

Exclude MIPS optimizations for MIPS32R6 build since some of the instructions
are not supported. This is temporary fix, until the MIPS32R6 code is added.

R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25989004

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn@7580 4adac7df-926f-26a2-2b94-8c16560cd09d
Fix N7 camera aspect ratio.

N7 video preview generates stretched output:
https://code.google.com/p/android/issues/detail?id=70830.
To workaround the problem set camera picture size in
addition to video preview size with the same resolution.

BUG=3971
R=braveyao@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25009004

git-svn-id: http://webrtc.googlecode.com/svn@7581 4adac7df-926f-26a2-2b94-8c16560cd09d
Update Android projects to API level 20.

This is required in order to roll chromium_revision to
keep up with Chrome, as third_party/android_tools have now
dropped support for API level 19.

Commands used:
third_party/android_tools/sdk/tools/android update project --name OpenSlDemo --target android-20 --path webrtc/examples/android/opensl_loopback
third_party/android_tools/sdk/tools/android update project --name WebRTCDemo --target android-20 --path webrtc/examples/android/media_demo/
third_party/android_tools/sdk/tools/android update project --name AppRTCDemo --target android-20 --path talk/examples/android/
Then I restored the changes of the ANDROID_SDK_ROOT -> ANDROID_HOME since it seems the Chromium build toolchain doesn't set it properly when
build/android/envsetup.sh is sourced.

BUG=
R=glaznev@webrtc.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/23309004

git-svn-id: http://webrtc.googlecode.com/svn@7582 4adac7df-926f-26a2-2b94-8c16560cd09d
Update all .isolate files for the new format.

R=kjellander@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/27809004

Patch from Marc-Antoine Ruel <maruel@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn@7583 4adac7df-926f-26a2-2b94-8c16560cd09d
Change default JVM location to /usr/lib/jvm/java-7-openjdk-amd64

Given that OpenJDK 1.7 is the recommended Java SDK for
Chromium these days, we should get rid of linking to the old
non-standardized link referring to a Sun Java 1.6 SDK.

Instead of requiring all users to set JAVA_HOME, I prefer
have the most common path as default and and close webrtc:2113
as won't fix after this is submitted.

BUG=2113
R=henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29839004

git-svn-id: http://webrtc.googlecode.com/svn@7584 4adac7df-926f-26a2-2b94-8c16560cd09d
Add a WavReader counterpart to WavWriter.

Don't bother with a C interface as we currently have no need to call
this from C code. The first use will be in the audioproc tool.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/30829004

git-svn-id: http://webrtc.googlecode.com/svn@7585 4adac7df-926f-26a2-2b94-8c16560cd09d
replace inline assembly WebRtcNsx_SynthesisUpdateNeon by intrinsics.

The modification only uses the unique part of the synthesis_update
function. Pass byte to byte conformance test both on ARMv7 and ARMv8,
and the single function performance is similar with original assembly
version on different platforms (if not specified, the code is compiled
by GCC 4.6):

| run 100k times             | cortex-a7 | cortex-a9 | cortex-a15 |
| use C as the base          |  (1.2Ghz) |  (1.0Ghz) |   (1.7Ghz) |
| (the smaller the better)   |           |           |            |
|----------------------------+-----------+-----------+------------|
| C                          |      100% |      100% |       100% |
| Neon asm                   |    15.93% |    17.01% |     12.50% |
| Neon inline asm            |    27.74% |    31.41% |     14.64% |
| Neon intrinsics (GCC 4.8)  |    17.84% |    14.10% |     13.84% |
| Neon intrinsics (LLVM 3.4) |    16.63% |    14.01% |     12.98% |

BUG=3580
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/23159004

Patch from Zhongwei Yao <zhongwei.yao@arm.com>.

git-svn-id: http://webrtc.googlecode.com/svn@7586 4adac7df-926f-26a2-2b94-8c16560cd09d
Update Android projects to API level 21.

The update in https://webrtc-codereview.appspot.com/23309004
was not enough, so this updates to 21 instead.

This is required in order to roll chromium_revision to
keep up with Chrome, as third_party/android_tools have now
dropped support for API level 20.

Commands used:
third_party/android_tools/sdk/tools/android update project --name OpenSlDemo --target android-21 --path webrtc/examples/android/opensl_loopback
third_party/android_tools/sdk/tools/android update project --name WebRTCDemo --target android-21 --path webrtc/examples/android/media_demo/
third_party/android_tools/sdk/tools/android update project --name AppRTCDemo --target android-21 --path talk/examples/android/
Then I restored the changes of the ANDROID_SDK_ROOT -> ANDROID_HOME since it seems the Chromium build toolchain doesn't set it properly when
build/android/envsetup.sh is sourced.

BUG=
R=glaznev@webrtc.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25029004

git-svn-id: http://webrtc.googlecode.com/svn@7587 4adac7df-926f-26a2-2b94-8c16560cd09d
Add VP9 codec to VCM and vie_auto_test.
Include VP9 tests in videoprocessor_integrationtests.
Include end-to-end send/receiveVP9 test.

This is the same patch as https://code.google.com/p/webrtc/source/detail?r=7422, which was reverted when rolled into chrome (due to bss size increase). Relanding this again as we now have the clear to get this in:
see https://code.google.com/p/webrtc/issues/detail?id=3932

R=kjellander@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31829004

git-svn-id: http://webrtc.googlecode.com/svn@7588 4adac7df-926f-26a2-2b94-8c16560cd09d
Adjust/increase rate control thresold for a vp9 test.

TBR=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25049004

git-svn-id: http://webrtc.googlecode.com/svn@7589 4adac7df-926f-26a2-2b94-8c16560cd09d