Commit Graph

7549 Commits

Author SHA1 Message Date
tommi@webrtc.org
8e612aba60 Remove voice_engine_ member variable and GetVoiceEngine() from ViEChannelManager.
This is dead code right now and since the implementation of GetVoiceEngine() grabbed a lock and returned a raw pointer, it's not to be trusted anyway :)

R=mflodman@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8306}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8306 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-10 08:16:02 +00:00
kjellander@webrtc.org
5b8f3e0206 Roll chromium_revision 598c3e9..601e6f3
Relevant changes:
* src/buildtools: 451dcd0..da0df3f
* src/third_party/openmax_dl: c01d587..81318c1
* src/tools/swarming_client: c698ea2..bdad118
Details: 598c3e9..601e6f3/DEPS

Clang version was not updated in this roll.

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8305}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8305 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-10 07:34:41 +00:00
glaznev@webrtc.org
44ae4c8b07 Support using VP9 video codec in AppRTCDemo.
- Add peer connection Java API to initialize field trial string.
- Add setting option to select VP8 or Vp9 as default video codec.
- Minor code clean up and allowing 720p portrait encoding.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8303}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8303 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 23:26:41 +00:00
tommi@webrtc.org
f7e6cfd3a0 Add CHECK to EventWrapper to see if there's a subtle bug there or not.
R=pbos@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8302}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8302 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 18:25:56 +00:00
glaznev@webrtc.org
669bc7ee43 Modify default field trial implementation to allow
WebRTC client to turn on feature code.

R=andresp@webrtc.org, henrika@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8301}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8301 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 18:18:19 +00:00
tommi@webrtc.org
11c5db01af Revert 8273 "Temporarily change ThreadPosix to CHECK (crash) if ..."
> Temporarily change ThreadPosix to CHECK (crash) if we ever spend more than 30 seconds waiting for thread shutdown. There are cases on build bots where it looks like we're hitting this problem, but reproducing locally has been a struggle.
> 
> TBR=pbos@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/41799004

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8300}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8300 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 16:31:54 +00:00
pbos@webrtc.org
0d852d5c27 Use VideoReceiveStream as an ExternalRenderer.
Removes AddRenderCallback from ViERenderer and implements
VideoReceiveStream on top of DeliverI420Frame like WebRtcVideoEngine
currently does today.

Also adds ::IsTextureSupported() to the VideoRenderer interface to
permit querying whether an external renderer supports texture rendering.

R=stefan@webrtc.org
TBR=mflodman@webrtc.org
BUG=1667

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

Cr-Commit-Position: refs/heads/master@{#8299}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8299 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 15:15:24 +00:00
stefan@webrtc.org
d6e25a5b27 Revert r8297 "Introduce PacketReceiver and remove configuration of simulations via the BweTestConfig."
BUG=4173
R=andresp@webrtc.org
TBR=andresp@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8298}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8298 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 15:06:42 +00:00
stefan@webrtc.org
03c1c103e4 Introduce PacketReceiver and remove configuration of simulations via the BweTestConfig.
This makes it possible to build more flexible simulations, and makes it easier to implement bi-directional simulations. This also removes support for generating baseline files and comparing against a baseline, which hasn't turned out to be particuarly useful.

BUG=4173
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8297}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8297 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 14:47:15 +00:00
andresp@webrtc.org
53d9012faf Clean kForever from basictypes and move it to the interfaces that actually have it.
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8296}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8296 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 14:19:39 +00:00
henrik.lundin@webrtc.org
e01bae24a5 Fixing a nit
This is a follow-up for https://webrtc-codereview.appspot.com/33209004/
where a post-commit nit was provided.

R=tommi@webrtc.org, kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8295}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8295 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 13:21:44 +00:00
kwiberg@webrtc.org
1c6239a3b6 G711: Make input arrays const and use uint8_t[] for byte arrays
BUG=909
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8294}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8294 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 12:56:16 +00:00
tommi@webrtc.org
d0165c62b5 Use a manual reset event in PosixThread.
This fixes occasional hangs we've been seeing in the past few days. I'm using rtc::Event instead of the EventWrapper, so I'll wait with landing this cl until I've made that change in a separate cl.

BUG=2822,4282
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8293}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8293 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 11:48:13 +00:00
tommi@webrtc.org
4c0fd965ce Move rtc::Event to rtc_base_approved. We need an event implementation in WebRTC that allows us to specify whether it's manually reset or automatically. EventWrapper currently doesn't support it and it adds a heap allocation + vtable, so rtc::Event is the lighter of the two.
I'm also tidying rtc::Event up a bit. Removing member variable that's not needed on all platforms and moving the mutex itself up in the member list given the recent alignment scare on Mac.

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8292}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8292 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 10:23:39 +00:00
pbos@webrtc.org
8cf9bdb3fa Remove USE_WEBRTC_DEV_BRANCH.
talk/ and webrtc/ are hosted in the same repository and it no longer
makes sense to support building talk/ without the corresponding webrtc/
catalog.

R=bjornv@webrtc.org, juberti@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8291}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8291 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 10:17:12 +00:00
kjellander@webrtc.org
2b69eab077 Restructure GYP for vp9, opus and direct trace
This is needed to make the build more flexible for some use cases.

BUG=4185
R=andresp@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8290}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8290 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 10:01:40 +00:00
changbin.shao@webrtc.org
f31f56d8d4 Remove default arguments in EncodedImageCallback.
BUG=
R=mflodman@webrtc.org, pbos@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8289}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8289 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 09:14:48 +00:00
guoweis@webrtc.org
6c930c7183 Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

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

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

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

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

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

Cr-Commit-Position: refs/heads/master@{#8288}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8288 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 01:29:45 +00:00
tommi@webrtc.org
7a57f8f101 Reland 8203 "Reducing locking in OveruseFrameDetect..."
The issue that was causing the thread checker to report error, turned out to be unrelated.

> Revert 8203 "Reducing locking in OveruseFrameDetector and increa..."
>
> Broke tests in Chrome for some reason:
>
> [ RUN      ] WebRtcAecDumpBrowserTest.CallWithAecDump
> [80131:1287:0129/074432:30561723987517:ERROR:vt_video_decode_accelerator.cc(132)] Failed to create VTDecompressionSession: codecOpenErr (-8973)
> [80129:1287:0129/074432:30562276677373:INFO:CONSOLE(64)] "Looking at video in element remote-view-1", source: http://127.0.0.1:61401/media/webrtc_test_utilities.js (64)
> [80129:1287:0129/074432:30562281435788:INFO:CONSOLE(64)] "Looking at video in element remote-view-2", source: http://127.0.0.1:61401/media/webrtc_test_utilities.js (64)
> [80129:1287:0129/074432:30562315329399:INFO:CONSOLE(800)] "Negotiating call...", source: http://127.0.0.1:61401/media/peerconnection-call.html (800)
> [80133:29187:0129/074432:30562402039578:FATAL:overuse_frame_detector.cc(388)] Check failed: processing_thread_.CalledOnValidThread().
> 0   libbase.dylib                       0x000000010dfd688f base::debug::StackTrace::StackTrace() + 47
> 1   libbase.dylib                       0x000000010dfd68e3 base::debug::StackTrace::StackTrace() + 35
> 2   libbase.dylib                       0x000000010e030076 logging::LogMessage::~LogMessage() + 70
> 3   libbase.dylib                       0x000000010e02f0c3 logging::LogMessage::~LogMessage() + 35
> 4   libcontent.dylib                    0x000000011d8c0cd5 webrtc::OveruseFrameDetector::TimeUntilNextProcess() + 245
> 5   libcontent.dylib                    0x000000011d31ddfd webrtc::ProcessThreadImpl::Process() + 525
> 6   libcontent.dylib                    0x000000011d31d836 webrtc::ProcessThreadImpl::Run(void*) + 38
> 7   libcontent.dylib                    0x000000011d10c390 webrtc::ThreadPosix::Run() + 288
> 8   libcontent.dylib                    0x000000011d10c076 webrtc::StartThread(void*) + 38
> 9   libsystem_pthread.dylib             0x00007fff8e667899 _pthread_body + 138
> 10  libsystem_pthread.dylib             0x00007fff8e66772a _pthread_struct_init + 0
> 11  libsystem_pthread.dylib             0x00007fff8e66bfc9 thread_start + 13
>
>
> > Reducing locking in OveruseFrameDetector and increasing constness.
> >
> > I also added a few TODOs there to see what we can do to reduce the chance of contention.
> > To catch regressions, I've started using the ThreadChecker class on the processing thread but it might also be a good idea to add similar checks for other known threads such as the thread we receive frames on.  I'm sure we can reduce locking even further.
> >
> > BUG=2822
> > R=asapersson@webrtc.org
> >
> > Review URL: https://webrtc-codereview.appspot.com/33129004
>
> TBR=tommi@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/34079004

TBR=tommi@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8287}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8287 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-08 18:29:12 +00:00
tommi@webrtc.org
103f3289b5 Fix the binary layout of ProcessThreadImpl.
We apparently hit an obscure problem on mac where seemingly an unaligned mutex causes memory corruption.
The effect was that the |modules_| list became corrupt and we crashed.  At this point I'm not exactly
sure what the alignment requirements are but for now, I've fixed up the layout in a way that doesn't cause these same issues.

I'm also changing auto->proper type at the request of drive by reviewers from my previous cl in the same file.

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8286}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8286 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-08 00:48:40 +00:00
jlmiller@webrtc.org
ec499beaf5 Increase testclient timeout from 1 to 5 seconds
BUG=4182
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8285}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8285 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 22:38:16 +00:00
tommi@webrtc.org
fe19699a20 Revert 8260 "Base RWLockWrapper on rtc::SharedExclusiveLock."
Unfortunately this caused channel teardown to hang.
More details in email(s).

> Base RWLockWrapper on rtc::SharedExclusiveLock.
>
> Also moves rtc::Event and rtc::SharedExclusiveLock to rtc_base_approved.
>
> R=tommi@webrtc.org
> BUG=
>
> Review URL: https://webrtc-codereview.appspot.com/38889004

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8284}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8284 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 22:36:19 +00:00
tommi@webrtc.org
2eb1660791 Switch ThreadCheckerImpl over to using PlatformThreadRef.
Like PlatformThreadId, this type is borrowed from Chromium.
The difference between the two is that PlatformThreadRef is pthread_t on posix platforms.
On Windows PlatformThreadRef and PlatformThreadId are the same thing.

The reason for this switch is pretty crazy.  On Chromium's "Mac 10.9 dbg" bot,
we have been seeing the following code:

ThreadCheckerImpl::ThreadCheckerImpl() : valid_thread_(CurrentThreadId()) {
  fprintf(stderr, "*** valid=%d\n", valid_thread_);
  valid_thread_ = CurrentThreadId();
  fprintf(stderr, "*** valid after=%d\n", valid_thread_);
}

print this:

*** valid=946872320
*** valid after=5647

This is for the same thread checker instance.

What's worse is that printing out what CurrentThreadId was returning, yielded that it was always returning 5647.

After switching over to pthread_t on Mac, this stopped happening.
So, to remove the current hack, reinstate the class on Mac and take a look at the next problem, I'm switching to pthread_t.
Really looking forward to truly getting to the bottom of this.

Tbr-ing since the build is essentially broken (we can't roll).

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8283}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8283 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 19:18:16 +00:00
tommi@webrtc.org
2bf0e90c9d Revert 8275 "This CL adds an API to the SSL stream adapters and ..."
I'm reverting the patch due to compilation issues. It would be great if we could make sure Chromium is ready for the patch before we land it in WebRTC.
As is, we're trying to roll webrtc into Chromium and we can't (this is not the only reason though).  I might reland this after the roll, depending on how that goes though.
Here's an example failure:

e:\b\build\slave\win_gn\build\src\jingle\glue\channel_socket_adapter_unittest.cc(77) : error C2259: 'jingle_glue::MockTransportChannel' : cannot instantiate abstract class
        due to following members:
        'bool cricket::TransportChannel::GetSslCipher(std::string *)' : is abstract
        e:\b\build\slave\win_gn\build\src\third_party\webrtc\p2p\base\transportchannel.h(107) : see declaration of 'cricket::TransportChannel::GetSslCipher'
ninja: build stopped: subcommand failed.

> This CL adds an API to the SSL stream adapters and transport channels to get the SSL cipher that was negotiated with the remote peer.
> 
> BUG=3976
> R=davidben@chromium.org, juberti@webrtc.org, pthatcher@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/26009004

TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8282}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8282 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 11:13:18 +00:00
tommi@webrtc.org
1d4830a077 Disable ProcessThread tests that are dependent on timing.
Some of the bots are too slow for the tests to make much sense as they are.

TBR=bjornv@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8281}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8281 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 08:44:40 +00:00
bjornv@webrtc.org
95a32ec098 Revert 8271 "VirtualSocketServer out-of-order issue with closing..."
Failed on Linux_Memcheck bot.
http://chromegw/i/client.webrtc/builders/Linux%20Memcheck/builds/3182

> VirtualSocketServer out-of-order issue with closing TCP sockets
> 
> https://webrtc-codereview.appspot.com/41449004 added a TURN TCP
> allocation release test which was disabled as it triggered an assert
> in the turnserver.
> 
> This was caused by VirtualSockerServer delivering the last TCP packet
> after closing the connection. Calling
>     VirtualSocketServer::SendTcp
> and
>     VirtualSocket::Close
> from TestTurnTCPReleaseAllocation led to the following order of
> messages in VirtualSocket::OnMessage:
>     MSG_ID_DISCONNECT
>     MSG_ID_PACKET
> 
> This is out of order and triggers an assert in turnserver.cc since the
> socket from which the message arrives has already been discarded,
> subsequently breaking the test.
> 
> In VirtualSocketServer::Disconnect the MSG_ID_DISCONNECT is posted to the
> msg_queue immediately, thus getting ahead of any (slightly delayed)
> actual packets.
> 
> Maybe PostAt(network_delay_ + 1, ...) would be better?
> 
> Re-enables TestTurnTCPReleaseAllocation.
> 
> BUG=
> R=juberti@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/34759004

TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8280}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8280 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 06:47:21 +00:00
aluebs@webrtc.org
2a44be93e8 Normalize delay-and-sum mask in Beamformer
This normalization is done in the Matlab Code but was never ported to the C++ version.

R=andrew@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8279}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8279 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 02:41:41 +00:00
aluebs@webrtc.org
799e667e9f Add high frequency correction to Beamformer
R=andrew@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8278}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8278 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-07 01:07:43 +00:00
guoweis@webrtc.org
0c7ec770ff Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

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

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

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

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

Cr-Commit-Position: refs/heads/master@{#8277}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8277 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 21:01:47 +00:00
guoweis@webrtc.org
110443aaac Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

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

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

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

Cr-Commit-Position: refs/heads/master@{#8276}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8276 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 20:00:46 +00:00
pthatcher@webrtc.org
1d11c8202b This CL adds an API to the SSL stream adapters and transport channels to get the SSL cipher that was negotiated with the remote peer.
BUG=3976
R=davidben@chromium.org, juberti@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8275}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8275 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 19:47:39 +00:00
bjornv@webrtc.org
63da1dd972 audio_processing: Now records mic volume level also when using new AGC
Previously only mic level calculated by the legacy agc was logged in aecdebug dumps.
Now we log it for any agc.
In addition, it is now possible to turn on and off debug recording in the test tool voe_cmd_test.

BUG=4274
TESTED=verified using voe_cmd_test
R=andrew@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8274}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8274 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 19:44:46 +00:00
tommi@webrtc.org
ccd7e99f0a Temporarily change ThreadPosix to CHECK (crash) if we ever spend more than 30 seconds waiting for thread shutdown. There are cases on build bots where it looks like we're hitting this problem, but reproducing locally has been a struggle.
TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8273}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8273 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 19:27:12 +00:00
tommi@webrtc.org
13a0e184ee Temporarily disable a couple of ThreadChecker tests on Mac.
TBR=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8272}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8272 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 16:39:18 +00:00
pthatcher@webrtc.org
4770437da9 VirtualSocketServer out-of-order issue with closing TCP sockets
https://webrtc-codereview.appspot.com/41449004 added a TURN TCP
allocation release test which was disabled as it triggered an assert
in the turnserver.

This was caused by VirtualSockerServer delivering the last TCP packet
after closing the connection. Calling
    VirtualSocketServer::SendTcp
and
    VirtualSocket::Close
from TestTurnTCPReleaseAllocation led to the following order of
messages in VirtualSocket::OnMessage:
    MSG_ID_DISCONNECT
    MSG_ID_PACKET

This is out of order and triggers an assert in turnserver.cc since the
socket from which the message arrives has already been discarded,
subsequently breaking the test.

In VirtualSocketServer::Disconnect the MSG_ID_DISCONNECT is posted to the
msg_queue immediately, thus getting ahead of any (slightly delayed)
actual packets.

Maybe PostAt(network_delay_ + 1, ...) would be better?

Re-enables TestTurnTCPReleaseAllocation.

BUG=
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8271}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8271 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 16:33:47 +00:00
perkj@webrtc.org
9baa9ca399 Add libjingle_peerconnection_so.so to Java test dependencies.
This fix a problem where the Java test is not dependent on the so file.

BUG=4275
R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8270}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8270 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 16:09:20 +00:00
tommi@webrtc.org
b5a1252e66 Hack to work around the current issues with rolling WebRTC into chromium.
In order to figure out the issue with the Mac 10.9 debug bot, this patch disables the ThreadChecker class on Mac in debug builds. For diagnostic purposes, it instead prints out when there's a thread mismatch. I'm also adding a DCHECK in case fetching the current thread id ever returns 0.

R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8269}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8269 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 15:39:16 +00:00
henrik.lundin@webrtc.org
751a36590a Switch to using AudioEncoderPcmU/A instead of ACMPCMU/A
This change switches from the old codec wrappers ACMPCMU and ACMPCMA
to the new AudioEncoderPcmU and AudioEncoderPcmA wrapped in an
ACMGenericCodecWrapper. RED and CNG is also switched to using their
AudioEncoder implementations (AudioEncoderCopyRed and AudioEncoderCng,
respectively), when RED and/or CNG is combined with PCM u/A.

This is the first in a series of changes that will switch all codecs
to use the new AudioEncoder interface.

BUG=4228
COAUTHOR=kwiberg@webrtc.org
R=minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8268}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8268 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 14:03:41 +00:00
mflodman@webrtc.org
02270cd718 Implementing a packet router class, used to route RTP packets to the
sending RTP module for the specified simulcast layer a frame belongs to.
This CL also removes the corresponding functionality from the RTP RTCP
module and fixes lint warnings in the files touched.

BUG=769
TEST=New unittest and manual tests
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8267}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8267 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 13:10:39 +00:00
stefan@webrtc.org
10a9e924eb Fix delete of stack allocated object causing test crashes.
Introduced in r8264.

BUG=4173
R=bjornv@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8266}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8266 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 13:00:26 +00:00
magjed@webrtc.org
4b320cf214 Revert "Cleanup: unify rotation to be enum based instead of int for degree."
Reason for revert:
Compile error on bots - A subclass of cricket::VideoFrame still uses old GetRotation return type.

BUG=4145
TBR=guoweis,stefan,pthatcher

This reverts commit 3e733a43f5.

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

Cr-Commit-Position: refs/heads/master@{#8265}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8265 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 12:58:46 +00:00
stefan@webrtc.org
fb609a1f57 Wire up new feedback format by introducing a FeedbackPacket type.
The new format instantiates the RemoteBitrateEstimator at the send-side and feeds back all packet arrival timestamps and sequence numbers to the sender, where inter-arrival deltas are calculated.

Next step will be to make feedback packets part of regular packets and send them over the network. This also requires bi-directional simulations.

BUG=4173
R=mflodman@webrtc.org, sprang@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8264}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8264 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 12:21:21 +00:00
bjornv@webrtc.org
353c8b8c08 audio_processing/agc: Changed to correct include path in agc_unittests
The agc test_utils were moved to tools/ in r8205. The agc_unittests are currently not in use due to interface mismatches.

BUG=N/A
TBR=kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8263}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8263 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 12:03:13 +00:00
tommi@webrtc.org
bc3241a8cc Update ProcessCallAfterXms to better match the performance of our faster bots. Previously I had made sure these tests didn't flake out on our slow trybots, but apparently I need to do the same for the fast bots :)
TBR=bjornv@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8262}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8262 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 11:28:41 +00:00
tommi@webrtc.org
0c3e12b7bf Revamp the ProcessThreadImpl implementation.
* Add a new WakeUp method that gives a module a chance to be called back right away on the worker thread.
* Wrote unit tests for the class.
* Significantly reduce the amount of locking.
  - ProcessThreadImpl itself does a lot less locking.
  - Reimplemented the way we keep track of when to make calls to Process.
    This reduces the amount of calls to TimeUntilNextProcess and since most implementations of that function grab a lock, this means less locking.
* Renamed ProcessThread::CreateProcessThread to ProcessThread::Create.
* Added thread checks for Start/Stop.  Threading model of other functions is now documented.
* We now log an error if an implementation of TimeUntilNextProcess returns a negative value (some implementations do, but the method should only return a positive nr of ms).
* Removed the DestroyProcessThread method and instead force callers to use scoped_ptr<> to maintain object lifetime.

BUG=2822
R=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8261}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8261 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 09:44:45 +00:00
pbos@webrtc.org
75025434bf Base RWLockWrapper on rtc::SharedExclusiveLock.
Also moves rtc::Event and rtc::SharedExclusiveLock to rtc_base_approved.

R=tommi@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8260}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8260 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 08:33:15 +00:00
kjellander@webrtc.org
5e05731b0f Roll chromium_revision cd35af6..598c3e9
Relevant changes:
* src/third_party/android_tools: aaeda3d..f6e2370
* src/third_party/boringssl/src: be629e0..8f5e2eb
Details: cd35af6..598c3e9/DEPS

Clang version was not updated in this roll.

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8259}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8259 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 07:25:16 +00:00
guoweis@webrtc.org
57ac2c84dd Default destination used by c line should be IPv4 only to avoid parsing error in legacy client.
Make sure the IP family overwrites the preference of candidates. Also,
make sure only UDP is used as default destination.

BUG=4269
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8258}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8258 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 00:45:43 +00:00
guoweis@webrtc.org
3e733a43f5 Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

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

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

Cr-Commit-Position: refs/heads/master@{#8257}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8257 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-05 23:40:43 +00:00
jan.skoglund@webrtc.org
74d27884af Remove defined(__cplusplus) tests in C++ code.
This header is a C++ header (it contains keywords such as 'class'
and 'public'). It is not necessary to test defined(__cplusplus).
That test is appropriate in a C header that may be included by C++
code.

R=henrik.lundin@webrtc.org, jan.skoglund@webrtc.org, sprang@webrtc.org
BUG=none

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

Cr-Commit-Position: refs/heads/master@{#8256}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8256 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-05 19:18:21 +00:00