Commit Graph

8673 Commits

Author SHA1 Message Date
4ffc7341ca replace inline assembly WebRtcAecm_ResetAdaptiveChannelNeon by intrinsics.
The modification only uses the unique part of the ResetAdaptiveChannel
 function. Pass byte to byte conformance test both on ARM32 and ARM64,
 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. The result is the "X version / C version" ratio, and the
 less is better.

| run 100k times             | cortex-a7 | cortex-a9 | cortex-a15 |
| use C as the base on each  |  (1.2Ghz) |  (1.0Ghz) |   (1.7Ghz) |
| CPU target                 |           |           |            |
|----------------------------+-----------+-----------+------------|
| Neon asm                   |       15% |       30% |        12% |
| Neon inline                |       21% |       30% |        12% |
| Neon intrinsics (GCC 4.6)  |       19% |       32% |        12% |
| Neon intrinsics (GCC 4.8)  |       20% |       32% |        12% |
| Neon intrinsics (LLVM 3.4) |       19% |       30% |        12% |

BUG=3580
R=andrew@webrtc.org

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7672 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-10 17:27:53 +00:00
d024f759a8 clear asm code and unused functions in audio processing module
BUG=
R=andrew@webrtc.org

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7671 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-10 17:19:57 +00:00
83d4804a50 Put send-side bwe probing under finch experiment.
BUG=crbug/425925
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7668 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-10 13:55:16 +00:00
a5d29fcd59 Add unit to dropped frames.
Missing unit causes less dropped frames to be reported as a regression
and not an improvement.

R=stefan@webrtc.org
BUG=chromium:429206

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7666 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-10 09:54:19 +00:00
d42a3adf42 Remove partially defined WebRtcRTPHeader from Parse().
It' bit ugly that RtpDepacketizer::ParsedPayload partially defines WebRtcRTPHeader, and then sent to Parse() function for internal change.
To make it clearer, the CL gets rid of using partially-defined WebRtcRTPHeader.

BUG=
R=pbos@webrtc.org, stefan@webrtc.org

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

Patch from Changbin Shao <changbin.shao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7660 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-07 11:02:12 +00:00
332331fb01 Use uint16s for port numbers in webrtc/p2p/base.
This is a necessary precursor to using uint16s for port numbers more
consistently in Chromium code.

This also makes some minor formatting changes in surrounding code (function declaration wrapping, virtual -> override).

BUG=chromium:81439
TEST=none
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7656 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 20:19:22 +00:00
d89b69aade Fix WebRTC Win64 + BoringSSL build.
There were many size_t to int conversions. RAND_poll and RAND_seed no longer do
anything in BoringSSL, so fix that one by removing it. Use a checked_cast for
the remaining ones.

BUG=chromium:429039
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7655 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 17:23:09 +00:00
dd43bbed8f Volume buttons in AppRTCDemo should affect output audio volume (part II).
See https://webrtc-codereview.appspot.com/32399004/ for part I.

BUG=3279
TEST=AppRTC demo
R=perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7654 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 15:48:05 +00:00
931e3da8f2 Log formatting fix for VideoEncoderConfig.
R=mflodman@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7648 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 09:35:08 +00:00
8b2058e733 Remove the state_ member from AudioDecoder
The subclasses that need a state pointer should declare them---with
the right type, not void*, to get rid of all those casts.

Two small but not quite trivial cleanups are included because they
blocked the state_ removal:

  - AudioDecoderG722Stereo now inherits directly from AudioDecoder
    instead of being a subclass of AudioDecoderG722.

  - AudioDecoder now has a CngDecoderInstance member function, which
    is implemented only by AudioDecoderCng. This replaces the previous
    practice of calling AudioDecoder::state() and casting the result
    to a CNG_dec_inst*. It still isn't pretty, but now the blemish is
    plainly visible in the AudioDecoder class declaration.

R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7644 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 07:54:31 +00:00
e1745cbb7c Adjust parameter in vp9 rate control test.
TBR=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7638 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 02:55:53 +00:00
5f1e2e42a8 Increase speed setting for VP9 (from 5 to 6) and re-enable end_to_end test.
TBR=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7637 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-06 02:02:28 +00:00
6a364fe11b Remove uses of build date/time.
Uses of __DATE__ and __TIME__ are blocking deterministic Chromium
builds. We're not really making use of these, and if anything they're
likely to be misleading as it's impossible to distinguish between a new
revision and a freshly-built old branch.

R=mflodman@webrtc.org, tnakamura@webrtc.org
BUG=3983

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7635 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 17:40:28 +00:00
0bae1fab4a Wire up bandwidth stats to the new API and webrtcvideoengine2.
Adds stats to verify bandwidth and pacer stats.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7634 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 14:05:29 +00:00
72fd339352 Restore old behavior for Android in fileutils.cc
From r7014 the Android APK tests are designed to be
build from a standalone WebRTC checkout instead of a
Chromium checkout. Because of that, the special handling
for both cases can be removed.

I also don't think we need to use the
base::android::GetExternalStorageDirectory() method since
all devices has a symlink at /sdcard that points
to /storage/emulated/legacy on the Android device.

This essentially reverts the changes in
https://webrtc-codereview.appspot.com/1754005/
plus some minor changes.

BUG=webrtc:3741
TEST=Locally running test_support_unittests APK test on an
Android device using:
CHECKOUT_SOURCE_ROOT=`pwd` build/android/test_runner.py gtest -s test_support_unittests --verbose --isolate-file-path=webrtc/test/test_support_unittests.isolate
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7632 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 06:28:50 +00:00
dc8662435b Fix android_clang build.
BUG=
R=kjellander@webrtc.org, tkchin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7630 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 01:15:10 +00:00
368215dacb Revert 7623 "Remove the state_ member from AudioDecoder"
Breaks Chrome compile:
e:\b\build\slave\win_builder\build\src\third_party\webrtc\modules\audio_coding\neteq\neteq_impl.cc(131) : error C3867: 'webrtc::NetEqImpl::InsertPacketInternal': function call missing argument list; use '&webrtc::NetEqImpl::InsertPacketInternal' to create a pointer to member
e:\b\build\slave\win_builder\build\src\third_party\webrtc\modules\audio_coding\neteq\neteq_impl.cc(131) : error C3861: 'LOG_FERR1': identifier not found
e:\b\build\slave\win_builder\build\src\third_party\webrtc\modules\audio_coding\neteq\neteq_impl.cc(152) : error C3867: 'webrtc::NetEqImpl::InsertPacketInternal': function call missing argument list; use '&webrtc::NetEqImpl::InsertPacketInternal' to create a pointer to member
e:\b\build\slave\win_builder\build\src\third_party\webrtc\modules\audio_coding\neteq\neteq_impl.cc(152) : error C3861: 'LOG_FERR1': identifier not found
e:\b\build\slave\win_builder\build\src\third_party\webrtc\modules\audio_coding\neteq\neteq_impl.cc(169) : error C3867: 'webrtc::NetEqImpl::GetAudioInternal': function call missing argument list; use '&webrtc::NetEqImpl::GetAudioInternal' to create a pointer to member
...

> Remove the state_ member from AudioDecoder
> 
> The subclasses that need a state pointer should declare them---with
> the right type, not void*, to get rid of all those casts.
> 
> Two small but not quite trivial cleanups are included because they
> blocked the state_ removal:
> 
>   - AudioDecoderG722Stereo now inherits directly from AudioDecoder
>     instead of being a subclass of AudioDecoderG722.
> 
>   - AudioDecoder now has a CngDecoderInstance member function, which
>     is implemented only by AudioDecoderCng. This replaces the previous
>     practice of calling AudioDecoder::state() and casting the result
>     to a CNG_dec_inst*. It still isn't pretty, but now the blemish is
>     plainly visible in the AudioDecoder class declaration.
> 
> R=henrik.lundin@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/24169005

TBR=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7629 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 00:45:58 +00:00
8a232f65dd Revert 7625 "Don't use DCHECK when you need the side effects..."
Reverting since 7623 might depend on this one

> Don't use DCHECK when you need the side effects...
> 
> R=pbos@webrtc.org
> TBR=henrik.lundin@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/32369004

TBR=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7628 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 00:43:59 +00:00
b8425bc4f3 Don't use DCHECK when you need the side effects...
R=pbos@webrtc.org
TBR=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7625 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 22:10:18 +00:00
9e525585fd Remove the state_ member from AudioDecoder
The subclasses that need a state pointer should declare them---with
the right type, not void*, to get rid of all those casts.

Two small but not quite trivial cleanups are included because they
blocked the state_ removal:

  - AudioDecoderG722Stereo now inherits directly from AudioDecoder
    instead of being a subclass of AudioDecoderG722.

  - AudioDecoder now has a CngDecoderInstance member function, which
    is implemented only by AudioDecoderCng. This replaces the previous
    practice of calling AudioDecoder::state() and casting the result
    to a CNG_dec_inst*. It still isn't pretty, but now the blemish is
    plainly visible in the AudioDecoder class declaration.

R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7623 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 21:18:47 +00:00
7c29e8c2f3 Add support for VP9 in webrtc::Call and video_loopback.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7622 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 19:41:15 +00:00
d839e0ab52 Reduce to 2 probes when probing for initial bandwidth.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7621 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 19:33:55 +00:00
db26247a9b Add UMA for measuring the diff between the BWE at 2 seconds compared to the BWE at 20 seconds when the BWE should have converged.
BUG=crbug/425925
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7620 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 19:32:10 +00:00
dcebf2daa7 Reworked paced sender queue
Packet queue in the paced sender is now based on a priority queue rather than having a separate fifo-queue per priority level. This allows more flexible sorting and cleaner usage.

Packets with earlier capture times are now prioritized higher. In situations with high packet loss, the queue might contain packets from several subsequent frames. Retransmit packets from the earlier frames first, since the later ones will probably be dependent on these.

Also, don't force sending of packets after a certain time of inactivity or when packets grow too old, since this was causing consistent overuse on poor connections. Instead, drop frames in vie encoder if pacer queue is too long.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7617 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 16:27:16 +00:00
b3265accd9 Adds support for finch experiments to video_loopback.
Adds support for logging to stderr via -logs.

Enables abs-send-time by default.

R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7613 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 14:57:14 +00:00
52b42cb069 Fix problem with late packets in NetEq
Since r7255, it could happen that an old packet would block the decoding
process until enough packet was received for the buffer to flush. This
CL fixes that by:
- Partially reverting r7255;
- Remove recent old packets before taking a decision for GetAudio;
- Remove all old packets after a packet has been extracted for decoding;
- Adding tests for reordered packets.

BUG=chrome:423985
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7612 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 14:03:58 +00:00
09cc686c8b Delete VideoReceiveStream channels in destructor.
R=stefan@webrtc.org
BUG=1667

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7611 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 13:48:15 +00:00
6de75ca3ed Remove the useless dummy state parameter to WebRtcPcm16b_DecodeW16
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7610 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 13:29:24 +00:00
c78cf97ecb Remove the useless dummy state parameter to WebRtcG711_*
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7609 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 13:23:36 +00:00
721ef633d0 Remove the codec_type_ member from AudioDecoder
It isn't actually required, as evidenced by the comparative ease with
which it can be removed.

R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7606 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 11:51:46 +00:00
f37145f685 Enables AIMD control by default.
BUG=1788
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7604 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 09:08:21 +00:00
b0f4b3da05 Improving error message from neteq_rtpplay
If a packet with unknown RTP payload type is inserted, this CL
will make sure that the error message is a little more detailed
and gives a better understadning of what to do.

BUG=2692
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7603 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 08:53:10 +00:00
5804936052 Add format members to AudioConverter for DCHECKing.
And use a std::min. Post-commit fixes after:
https://review.webrtc.org/30779004/

TBR=kwiberg

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7600 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 21:32:14 +00:00
e451b756a8 Update rate control parameter in vp9 test.
TBR=hellner@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7599 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 21:26:08 +00:00
4765ca55f9 Roll chromium_revision: 28d1981..d3db2ff
Pick up the libvpx roll: https://codereview.chromium.org/674753002

Summary of changes (28d1981..d3db2ff/DEPS):
* third_party/android_tools 36bf7ac..ea50ccc
* third_party/boringssl 7ea8481..751e889
* third_party/icu 8ac906f..d8b2a9d
* third_party/libvpx efe9712..2e5ced5
* third_party/usrsctp/usrsctplib
* tools/gyp 1990:1991
* tools/swarming_client a57d7db..bcb3bc3

Clang is not updated in this roll.

Made the change getchar() --> getc(stdin) as seems like getchar() isn't supported on android anymore.
(getchar() was causing the error: undefined reference to '__srget')

Update rate control parameter in vp9 test.

R=andrew@webrtc.org
TBR=ajm@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7598 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 20:10:26 +00:00
f866b2d9f9 Restore the void return type on WriteWavHeader.
Karl pointed out that the user can check the validity of the input
parameters with CheckWavParameters prior to calling.

TBR=kwiberg

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7597 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 18:20:06 +00:00
b81e304ac0 replace inline assembly WebRtcNsx_AnalysisUpdate by intrinsics.
The modification only uses the unique part of the analysis_update
 function. Pass byte to byte conformance test on both ARMv7 and AArch64,
 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. The result is the "X version / C version" ratio, and the
 less is better.

| run 100k times             | cortex-a7 | cortex-a9 | cortex-a15 |
| use C as the base on each  |  (1.2Ghz) |  (1.0Ghz) |   (1.7Ghz) |
| CPU target                 |           |           |            |
|----------------------------+-----------+-----------+------------|
| Neon asm                   |    15.61% |    20.15% |     14.89% |
| Neon inline asm (LLVM 3.4) |    25.98% |    33.96% |     18.18% |
| Neon intrinsics (GCC 4.6)  |    22.06% |    27.01% |     19.24% |
| Neon intrinsics (GCC 4.8)  |    17.28% |    18.23% |     18.55% |
| Neon intrinsics (LLVM 3.4) |    21.02% |    19.98% |     16.76% |

BUG=
R=andrew@webrtc.org

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7596 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 17:17:51 +00:00
f9471807a2 Add Opus support to neteq_rtpplay
BUG=2416
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7595 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 15:19:58 +00:00
548b228c91 Add UMA metrics for the initial (after two seconds) packet loss, round-trip time and bandwidth estimate of a WebRTC call.
BUG=crbug/425925
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7593 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 14:42:43 +00:00
96dc685143 Add stats for video:
- number of sent/received RTCP NACK/FIR/PLI per minute
- percentage of unique sent/received NACK requests
- percentage of discarded/duplicated packets by the jitter buffer
- permille of sent/received key frames

BUG=crbug/419657
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7592 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 14:40:38 +00:00
bf09976e86 Add more sanity checks to workaround the unidentified problem that CaptureThread is still running while related resouces are destroyed already.
BUG=
TEST=auto test
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7590 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 09:58:40 +00:00
ed45896759 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/trunk@7589 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-01 07:08:52 +00:00
5b88317820 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/trunk@7588 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-01 06:10:48 +00:00
5072e0f6cd 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/trunk@7587 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 23:26:10 +00:00
818c9f9e14 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/trunk@7586 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 22:07:35 +00:00
a3ed713dad 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/trunk@7585 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 21:51:03 +00:00
78c222bfae 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/trunk@7583 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 18:08:09 +00:00
8a130c1084 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/trunk@7582 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 17:13:37 +00:00
053c6abf8d 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/trunk@7581 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 16:58:58 +00:00
508c91683c 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/trunk@7580 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 16:26:17 +00:00