Commit Graph

7988 Commits

Author SHA1 Message Date
bjornv@webrtc.org
600587d5ac Refactor audio_coding/neteq: Removed usage of macro WEBRTC_SPL_16_16_RSFT
The macro is defined as
#define WEBRTC_SPL_MUL_16_16_RSFT(a, b, c) \
(WEBRTC_SPL_MUL_16_16(a, b) >> (c))

where the latter macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) \
    ((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definitions on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_{armv7,mips}.h)

The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
- minor cleanups like remove of unnecessary parentheses and style changes

In addition an implicit cast from int32_t to int16_t was removed, which was a bug.

BUG=3348, 3353
TESTED=Locally on Mac and trybots
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8653}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8653 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 13:30:45 +00:00
kjellander@webrtc.org
c7faace956 Roll chromium_revision e8ef1d1..87ce36b (319252:319600)
Relevant changes:
* src/third_party/libvpx: 080710f..caf68ae
Details: e8ef1d1..87ce36b/DEPS

Clang version was not updated in this roll.

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8652}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8652 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 12:43:16 +00:00
henrika@webrtc.org
474d1eb223 Adds C++/JNI/Java unit test for audio device module on Android.
This CL adds support for unittests of the AudioDeviceModule on Android using both Java and C++. The new framework uses ::testing::TesWithParam to support both Java-based audio and OpenSL ES based audio. However, given existing issues in our OpenSL ES implementation, the list of test parameters only contains Java in this first version. Open SL ES will be enabled as soon as the backend has been refactored.

It also:

- Removes the redundant JNIEnv* argument in webrtc::VoiceEngine::SetAndroidObjects().
- Modifies usage of enable_android_opensl and the WEBRTC_ANDROID_OPENSLES define.
- Adds kAndroidJavaAudio and kAndroidOpenSLESAudio to AudioLayer enumerator.
- Fixes some bugs which were discovered when running the tests.

BUG=NONE
R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8651}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8651 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 12:40:43 +00:00
mflodman@webrtc.org
1b32bbe0a7 Removing private and unused method in RTPReceiver.
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8650}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8650 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 11:54:45 +00:00
kjellander@webrtc.org
6b56d0793e Revert 8632 "Enable isac NEON building on Aarch64"
Breaks Chromium audio tests on Nexus 9.
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus9%29/builds/1152/steps/content_browsertests/logs/stdio

It also actually broke already on our android_arm64 trybot in the CL:
http://build.chromium.org/p/tryserver.webrtc/builders/android_arm64/builds/3282
but I failed to double-check that (I guess I assumed it was flakiness since
that bot has been flaking a lot lately).

> Enable isac NEON building on Aarch64
> 
> Passed building isac_neon and modules_unittests on Android ARM64 and ARMv7.
> Passed modules_unittests with following filters:
>   --gtest_filter=FiltersTest*
>   --gtest_filter=LpcMaskingModelTest*
>   --gtest_filter=TransformTest*
>   --gtest_filter=FilterBanksTest*
> 
> WebRtcIsacfix_CalculateResidualEnergyNeon is not enabled due to Issue 4224.
> 
> BUG=4002
> R=andrew@webrtc.org, jridges@masque.com, kjellander@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/39979004
> 
> Patch from Zhongwei Yao <zhongwei.yao@arm.com>.

TBR=zhongwei.yao@arm.com, andrew@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8649}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8649 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 11:08:42 +00:00
pbos@webrtc.org
385b56666a Revert "Workaround Mac align bug for observer_ and crit_."
This reverts commit r8528 which should be safe after r8646.

BUG=
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8648}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8648 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 10:43:44 +00:00
stefan@webrtc.org
a50e6f073d Move ownership of vie_encoders and vie_channels into the channel group.
BUG=4323
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8647}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8647 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-09 10:07:20 +00:00
tommi@webrtc.org
a32f064e97 Fix build configuration bug with debug builds.
The problem we were running into on the Mac 10.9 debug bot in Chrome turned out to be good ol'fashion memory corruption. Part of webrtc was being compiled with _DEBUG, another half without it. This caused the definition of some symbols to be out of sync (notably pthread_mutex_t) and would cause code built from common.gypi, to overwrite memory allocated via common types from base/base.gypi derived code.  Fun stuff to track down.  This was a problem in particular with base/criticalsection.h since it's inlined into multiple object files but will have different definitions of what a mutex is.

TBR=pbos,kjellander
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8646}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8646 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-08 07:39:22 +00:00
tommi@webrtc.org
558dc40c88 Reland 8631 "Speculative revert of 8631 "Remove lock from Bitrat..."
> Speculative revert of 8631 "Remove lock from Bitrate() and FrameRate() in Video..."
> 
> We ran into the alignment problem on Mac 10.9 debug again.  This is the only CL I see in the range that adds an rtc::CriticalSection, so I'm trying out reverting it before attempting another roll.
> 
> > Remove lock from Bitrate() and FrameRate() in VideoSender.
> > These methods are called on the VideoSender's construction thread, which is the same thread as modifies the value of _encoder.  It's therefore safe to not require a lock to access _encoder on this thread.
> > 
> > I'm making access to the rate variables from VCMGenericEncoder, thread safe, by using a lock that's not associated with the encoder.  There should be little to no contention there.  While modifying VCMGenericEncoder, I noticed that a couple of member variables weren't needed, so I removed them.
> > 
> > The reason for this change is that getStats is currently contending with the encoder when Bitrate() is called. On my machine, this means that getStats can take about 25-30ms instead of ~1ms.
> > 
> > Also adding some documentation for other methods and a suggestion for how we could avoid contention between the encoder and the network thread.
> > 
> > BUG=2822
> > R=mflodman@webrtc.org
> > 
> > Review URL: https://webrtc-codereview.appspot.com/43479004
> 
> TBR=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/45529004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8645}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8645 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 20:56:50 +00:00
tommi@webrtc.org
679d2f1352 Disable CS_TRACK_OWNER on Mac in debug mode.
Local testing indicates that the pthread_t member variable might be causing alignment problems on the Chromium bots.  After landing this (and once the Chromium tree is open again), I'll try a roll again to see if this has an effect.

R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8644}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8644 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 20:15:24 +00:00
tommi@webrtc.org
f696e49c9a Re-landing perf improvement for libjingle logging after reverting the general change.
This contains only a part of r8635 that I just reverted to unblock the roll.

TBR=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8643}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8643 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 12:18:14 +00:00
tommi@webrtc.org
52130b6412 Revert 8635 "Make LS_ logging constants to match Chromium's logg..."
LibjingleLoggingTests in Chromium started failing so more thought needs to be applied here.
Would be good to get he perf improvement in though.

> Make LS_ logging constants to match Chromium's logging constants when building with Chrome.
> This was causing logging to be done at incorrect levels and filters not work as expected.
> 
> R=perkj@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/40239004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8642}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8642 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 12:09:40 +00:00
tommi@webrtc.org
92696cd0c6 Speculative revert of 8631 "Remove lock from Bitrate() and FrameRate() in Video..."
We ran into the alignment problem on Mac 10.9 debug again.  This is the only CL I see in the range that adds an rtc::CriticalSection, so I'm trying out reverting it before attempting another roll.

> Remove lock from Bitrate() and FrameRate() in VideoSender.
> These methods are called on the VideoSender's construction thread, which is the same thread as modifies the value of _encoder.  It's therefore safe to not require a lock to access _encoder on this thread.
> 
> I'm making access to the rate variables from VCMGenericEncoder, thread safe, by using a lock that's not associated with the encoder.  There should be little to no contention there.  While modifying VCMGenericEncoder, I noticed that a couple of member variables weren't needed, so I removed them.
> 
> The reason for this change is that getStats is currently contending with the encoder when Bitrate() is called. On my machine, this means that getStats can take about 25-30ms instead of ~1ms.
> 
> Also adding some documentation for other methods and a suggestion for how we could avoid contention between the encoder and the network thread.
> 
> BUG=2822
> R=mflodman@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/43479004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8640}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8640 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 09:26:43 +00:00
glaznev@webrtc.org
dc08a230da Fix H.264 start code position search.
This will address incorrect start code search
in a sequence like 00 00 00 00 00 01.
Thanks Noah.

R=noahric@chromium.org, wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8639}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8639 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 23:32:42 +00:00
magjed@webrtc.org
1af1391b41 Remove WebRtcTextureVideoFrame
WebRtcTextureVideoFrame is currently an empty shell that only provides a convenience constructor of I420VideoFrame with a texture buffer. This CL moves that constructor, and all unittests, of WebRtcTextureVideoFrame into the base class. Then it's possible to completely remove WebRtcTextureVideoFrame and all its files.

BUG=1128
R=pbos@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8638}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8638 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 17:17:43 +00:00
magjed@webrtc.org
c2008a0e8c RTCOpenGLVideoRenderer: Add support for padded frames
This CL allows RTCOpenGLVideoRenderer to handle frames with pitch > width by making an intermediate frame copy.

BUG=4381,1128
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8637}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8637 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 16:59:23 +00:00
jiayl@webrtc.org
b4cd093f41 Change the unintentioal CHECK to DCHECK in DtlsIdentityStore.
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8636}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8636 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 16:32:57 +00:00
tommi@webrtc.org
66f153f89f Make LS_ logging constants to match Chromium's logging constants when building with Chrome.
This was causing logging to be done at incorrect levels and filters not work as expected.

R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8635}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8635 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 15:56:46 +00:00
pbos@webrtc.org
a2a6fe66a3 Reconfigure default streams on AddRecvStream.
Makes sure RTX can be used for streams that have received early media
before being properly configured.

BUG=1788
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8634}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8634 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 15:35:48 +00:00
perkj@webrtc.org
bcead305a2 Make the entry point for VideoFrames to webrtc const ref I420VideoFrame.
This removes the none const pointer entry and SwapFrame.

Since frames delivered using VideoSendStream no longer use the external capture module, VideoSendStream will not get an incoming framerate callback. VideoSendStream now uses a rtc::RateTracker.
Also, the video engine must ensure that time stamps are always increasing.

With this, time stamps (ntp, render_time and rtp timestamps ) are checked and set in ViECapturer::OnIncomingCapturedFrame

BUG=1128
R=magjed@webrtc.org, mflodman@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8633}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8633 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 12:38:22 +00:00
kjellander@webrtc.org
75e850e192 Enable isac NEON building on Aarch64
Passed building isac_neon and modules_unittests on Android ARM64 and ARMv7.
Passed modules_unittests with following filters:
  --gtest_filter=FiltersTest*
  --gtest_filter=LpcMaskingModelTest*
  --gtest_filter=TransformTest*
  --gtest_filter=FilterBanksTest*

WebRtcIsacfix_CalculateResidualEnergyNeon is not enabled due to Issue 4224.

BUG=4002
R=andrew@webrtc.org, jridges@masque.com, kjellander@webrtc.org

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

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

Cr-Commit-Position: refs/heads/master@{#8632}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8632 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 12:29:23 +00:00
tommi@webrtc.org
0d5ea21325 Remove lock from Bitrate() and FrameRate() in VideoSender.
These methods are called on the VideoSender's construction thread, which is the same thread as modifies the value of _encoder.  It's therefore safe to not require a lock to access _encoder on this thread.

I'm making access to the rate variables from VCMGenericEncoder, thread safe, by using a lock that's not associated with the encoder.  There should be little to no contention there.  While modifying VCMGenericEncoder, I noticed that a couple of member variables weren't needed, so I removed them.

The reason for this change is that getStats is currently contending with the encoder when Bitrate() is called. On my machine, this means that getStats can take about 25-30ms instead of ~1ms.

Also adding some documentation for other methods and a suggestion for how we could avoid contention between the encoder and the network thread.

BUG=2822
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8631}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8631 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 12:21:41 +00:00
magjed@webrtc.org
f98030b029 Add intermediate TextureVideoFrame typedef for Chromium
BUG=1128
R=perkj@webrtc.org
TBR=stefan

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

Cr-Commit-Position: refs/heads/master@{#8630}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8630 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 11:18:43 +00:00
magjed@webrtc.org
45cdcce5f5 Remove TextureVideoFrame
TextureVideoFrame is currently an empty shell that only provides a convenience constructor of I420VideoFrame with a texture buffer. This CL moves that constructor, and all unittests, of TextureVideoFrame into the base class. Then it's possible to completely remove TextureVideoFrame and all its files. Also, there is no point in having I420VideoFrame virtual anymore.

R=pbos@webrtc.org, perkj@webrtc.org, stefan@webrtc.org
TBR=mflodman

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

Cr-Commit-Position: refs/heads/master@{#8629}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8629 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 10:41:47 +00:00
kjellander@webrtc.org
7158ec1727 Remove android-webrtc.mk
This is a stale file that haven't been used for years.
If anyone relies on this for their custom build, it's better
they keep it in their repo instead.

R=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8628}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8628 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 08:44:44 +00:00
kjellander@webrtc.org
e41ec818a7 Remove libjingle_root GYP variable
It is no longer needed.

R=andrew@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8627}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8627 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 08:03:47 +00:00
henrik.lundin@webrtc.org
e9217b4bdb Remove WebRtcACMEncodingType
The parameter was not needed; it was sufficient with a bool indicating
speech or not speech. This change propagates to the InFrameType
callback function. Some tests are updated too.

COAUTHOR=kwiberg@webrtc.org
R=minyue@webrtc.org
TBR=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8626}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8626 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 07:51:21 +00:00
kjellander@webrtc.org
84f5309dbd Roll chromium_revision e144d30..e8ef1d1 (318658:319252)
Relevant changes:
* src/buildtools: 93b3d0a..d4dd4f7
* src/third_party/icu: df1bf38..eda9e75
* src/tools/grit: a5890a8..0287c18
* src/tools/gyp: 3464008..4a9b712
Details: e144d30..e8ef1d1/DEPS

Clang version changed 223108:231191
Details: e144d30..e8ef1d1/tools/clang/scripts/update.sh

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8625}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8625 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 07:18:14 +00:00
kjellander@webrtc.org
a743f6f17f Widening memcheck suppressions for libjingle_peerconnection_unittest
Make the excluded tests filter match the ones for Dr Memory, since
these tests are probably flaky only due to the same slowdown caused
by memcheck as for Dr Memory.

BUG=4387
TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8624}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8624 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 07:16:46 +00:00
pthatcher@webrtc.org
818c4984e4 Modify the simulcast encoder factory adapter to allow external encoder factories that support more than one codec.
Only VP8 encoders will be wrapped in the simulcast adapter; other codec types will be created directly with the real encoder factory and cleaned up appropriately.

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

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

Cr-Commit-Position: refs/heads/master@{#8623}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8623 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 02:21:23 +00:00
marpan@webrtc.org
16a87b97f9 Add VP9 denoiser test to videoprocessor_integrationtest.
TBR=stefan@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8622}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8622 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 22:19:15 +00:00
aluebs@webrtc.org
1d88394bcb Add support for arbitrary array geometries in Beamformer
R=andrew@webrtc.org, mgraczyk@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#8621}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8621 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 20:39:20 +00:00
andrew@webrtc.org
0933d01d09 Enabling common_audio building with NEON on ARM64
Passed building common_audio_neon and common_audio_unittests both on
Android ARMv7 and Android ARM64. Pass common_audio_unittests tests both
on Android ARMv7 and Android ARM64.

BUG=4002
R=andrew@webrtc.org, jridges@masque.com, kjellander@webrtc.org

Change-Id: I8e0722f356db8cca6fc8232f00ae1e898a086f5a

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

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

Cr-Commit-Position: refs/heads/master@{#8620}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8620 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 19:14:21 +00:00
bjornv@webrtc.org
d7a212e8b9 audio_processing/aec: Increased delay metrics aggregation window to five seconds
The known clients (GetStats and UMA histogram in Chrome) use at least 5 second aggregation window. There is no particular value in calculating the metrics more often.

The CL also includes a small refactoring moving a declaration inside an if statement.

BUG=2994
TEST=N/A
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8619}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8619 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 16:14:58 +00:00
stefan@webrtc.org
c3f15c08bc Fix scoped_ptrs in bwe_simulations.
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8618}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8618 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 16:06:21 +00:00
kjellander@webrtc.org
74304330df Print better information during Chromium sync.
Many users are having problems with the initial sync.
Let's print a bit more information and advice on how
to recover from an aborted sync.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8617}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8617 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 14:38:42 +00:00
magjed@webrtc.org
2386d6dd92 Revert 8599 "Revert 8580 "Unify underlying frame buffer in I420VideoFrame and...""
It's possible to build Chrome on Windows with this patch now.

BUG=1128

> This is unfortunately causing build problems in Chrome on Windows.

>> Unify underlying frame buffer in I420VideoFrame and WebRtcVideoFrame
>>
>> Currently, I420VideoFrame uses three webrtc::Plane to store pixel data, and WebRtcVideoFrame uses WebRtcVideoFrame::FrameBuffer/webrtc::VideoFrame. The two subclasses WebRtcTextureVideoFrame and TextureVideoFrame use a NativeHandle to store pixel data, and there is also a class WebRtcVideoRenderFrame that wraps an I420VideoFrame.
>>
>> This CL replaces these classes with a new interface VideoFrameBuffer that provides the common functionality. This makes it possible to remove deep frame copies between cricket::VideoFrame and I420VideoFrame.
>>
>> Some additional minor changes are:
>> * Disallow creation of 0x0 texture frames.
>> * Remove the half-implemented ref count functions in I420VideoFrame.
>> * Remove the Alias functionality in WebRtcVideoFrame
>>
>> The final goal is to eliminate all frame copies, but to limit the scope of this CL, some planned changes are postponed to follow-up CL:s (see planned changes in https://webrtc-codereview.appspot.com/38879004, or https://docs.google.com/document/d/1bxoJZNmlo-Z9GnQwIaWpEG6hDlL_W-bzka8Zb_K2NbA/preview). Specifically, this CL:
>> * Keeps empty subclasses WebRtcTextureVideoFrame and TextureVideoFrame, and just delegates the construction to the superclass.
>> * Keeps the deep copies from cricket::VideoFrame to I420VideoFrame.
>>
>> BUG=1128
>> R=mflodman@webrtc.org, pbos@webrtc.org, perkj@webrtc.org, tommi@webrtc.org
>>
>> Review URL: https://webrtc-codereview.appspot.com/42469004

R=pbos@webrtc.org
TBR=mflodman, pbos, perkj, tommi

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

Cr-Commit-Position: refs/heads/master@{#8616}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8616 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 14:03:51 +00:00
pbos@webrtc.org
67a9e40286 Prevent encoding frames with wrong resolution.
This is a speculative fix for a crash that should be able to happen if a
codec is reconfigured while a frame is leaving the
VideoProcessingModule, causing a mismatch between configured codec and
input frame size.

BUG=
R=magjed@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8615}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8615 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 13:58:16 +00:00
tommi@webrtc.org
03054486f5 Adding basic support for posting tasks to a process thread.
BUG=
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8614}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8614 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 13:14:19 +00:00
tommi@webrtc.org
658d2015f3 Allow VideoSender to be constructed on one thread but initialized and used for doing registrations, on another.
R=andresp@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8613}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8613 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 12:22:22 +00:00
kjellander@webrtc.org
7008f2227c Revert Clang roll in r8596 + add memcheck suppression.
The roll seems to cause leaks on our Linux Memcheck bot.
Added a suppression needed for Trusty in order to run
memcheck similar to the bot (that runs Precise).
Leave all the other source code edits from r8596 in place.

See also http://chromegw/i/client.webrtc/builders/Linux%20Memcheck/builds/3343

TBR=pbos@webrtc.org
TESTED=Can no longer repro memcheck failure with this patch applied:
GYP_DEFINES="build_for_tool=memcheck" webrtc/build/gyp_webrtc
ninja -C out/Release libjingle_peerconnection_unittest
tools/valgrind-webrtc/webrtc_tests.sh --test libjingle_peerconnection_unittest --tool memcheck --target Release --build-dir out  --gtest_filter=WebRtcSessionTest.TestIncorrectMLinesInLocalAnswer

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

Cr-Commit-Position: refs/heads/master@{#8612}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8612 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 08:53:44 +00:00
tommi@webrtc.org
5af41aabae Fix uninitialized variable. If FindConstraint() returns false, we check |value| in two places and at that point, it can hold an uninitialized value. Caught by Linux Memcheck builder.
http://chromegw.corp.google.com/i/client.webrtc/builders/Linux%20Memcheck/builds/3351/steps/libjingle_peerconnection_unittest/logs/0A34BA777AB03D08

TBR=perkj@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8611}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8611 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 08:42:13 +00:00
andrew@webrtc.org
fa67463d37 skip isac_neon if neon is not supported
R=andrew@webrtc.org

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

Patch from Mostyn Bramley-Moore <mostynb@opera.com>.

Cr-Commit-Position: refs/heads/master@{#8610}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8610 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 06:07:51 +00:00
guoweis@webrtc.org
bbce5efaa6 Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%.
BUG=
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8582

Committed: https://code.google.com/p/webrtc/source/detail?r=8607

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

Cr-Commit-Position: refs/heads/master@{#8609}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8609 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 04:39:07 +00:00
guoweis@webrtc.org
d43b2c098d Revert "Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%."
This reverts commit 86c33e3a94.

TBR=guoweis@webrtc.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#8608}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8608 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 04:03:44 +00:00
guoweis@webrtc.org
86c33e3a94 Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%.
BUG=
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8582

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

Cr-Commit-Position: refs/heads/master@{#8607}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8607 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-05 03:40:48 +00:00
guoweis@webrtc.org
4536289353 Add CVO support to RTP sender side.
According to http://www.etsi.org/deliver/etsi_ts/126100_126199/126114/12.07.00_60/ts_126114v120700p.pdf,
CVO byte should only be added in the last packet of each key frame or when the rotation changes. Currently, we're adding this byte in each frame to start with.

BUG=4145
R=mflodman@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8606}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8606 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 22:55:43 +00:00
jiayl@webrtc.org
61e00b0bca Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8576

Committed: https://code.google.com/p/webrtc/source/detail?r=8581

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

Cr-Commit-Position: refs/heads/master@{#8605}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8605 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 22:18:18 +00:00
marpan@webrtc.org
6daacbc8ae Set cpu_speed parameter for low resolutions, for non-simulcast.
Allow for setting different cpu_speed setting based on resolution, for non-simulcast.
Use the existing low resolution simulcast cpu_speed setting for the non-simulcast case.

No change to simulcast behavior, unless top/highest layer stream is also below CIF resolution,
(in which case all layers will use lower the cpu_speed setting =-4).

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8603}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8603 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 21:47:18 +00:00
kjellander@webrtc.org
7b93ea1667 Remove DCHECK from common_types.cc
The DCHECKs added in https://webrtc-codereview.appspot.com/41069004/
introduces a dependency on base, which may cause problems.
This CL reverts that change.

R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8602}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8602 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 20:10:38 +00:00