Commit Graph

166 Commits

Author SHA1 Message Date
b7a91fa95a Removes VoERTP_RTCP::InsertExtraRTPPacket.
Reasons for removing:

- Feels like a complete hack IMHO.
- Not used by any client.
- Unclear functionality regarding time stamp, marker bit etc.
- Causes several issues in tests due to a bad design which mainly depends on the fact that this API "breaks" an ongoing data/packet flow and it complicates the threading model and creates risks for deadlock and memory corruption. Not worth trying to fix given the very unclear benefit of maintaining the API. Better to remove the API instead.
- We also see lots of TSan races and memcheck errors related to this API.

BUG=2296,2240
R=mflodman@webrtc.org, niklas.enbom@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5574 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-19 08:58:08 +00:00
00844d7bef Remove obsolete voe_unit_test.
BUG=
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5570 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-18 18:50:50 +00:00
a07923339b Remove external encryption API for VoE.
BUG=
R=henrika@webrtc.org, henrikg@webrtc.org, phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5564 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-18 11:27:22 +00:00
67e70442b5 Remove unused and not working voe_extended_test.
BUG=2913
R=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5533 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-12 09:58:49 +00:00
b659e2844d Reduce mixing threshold in test to avoid flakiness.
Flake observed here:
http://chromegw/i/client.webrtc/builders/Win32%20Release%20%5Blarge%20tests%5D/builds/953/steps/voe_auto_test/logs/stdio

TBR=andresp

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5530 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-11 21:52:50 +00:00
16c08f03da Restore mixing integration tests.
These high level tests were disabled over time. Since they depend on
real-time results and the filesystem, they tended to be flaky on the
bots. We now give it a very generous 1 second to start up all channels
before verification and a further relaxed file length check. If we
continue to see problems, I will up the startup delay.

The restored tests would have caught the AGC bug fixed here:
https://code.google.com/p/webrtc/source/detail?r=5454

Add a new "real audio" stress test to exercise more code paths. This
would have caught the refactor bug fixed here:
https://code.google.com/p/webrtc/source/detail?r=5437

BUG=2164,2844
TESTED=git try. Verified it would have caught the aforementioned bugs
by reintroducing them.

R=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5522 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-10 23:04:39 +00:00
3e6c41c48f Revert "Disable the test: DtmfTest.ManualSuccessfullySendsIn/OutOfBandTelephoneEvents"
This reverts commit r5479.

R=henrika@webrtc.org
BUG=2880

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5485 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-04 10:45:14 +00:00
064b32acbb Fix locking in LoopBackTransport::StorePacket.
The critical section in StorePacket was unnamed and only existed in
expression scope. Added GUARDED_BY annotations (which caught the bug),
then fixed it by naming the variable.

BUG=2880
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5484 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-04 09:42:02 +00:00
f6b8f496ee Disable the test: DtmfTest.ManualSuccessfullySendsIn/OutOfBandTelephoneEvents
Issue: https://code.google.com/p/webrtc/issues/detail?id=2880

R=andrew@webrtc.org
TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5479 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-03 21:34:35 +00:00
4371d4650a Temporarily disabling some more audio processing tests.
R=andrew@webrtc.org, bjornv@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5380 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-14 08:57:22 +00:00
886aef09a8 Fixing broken tests in voe_auto_test extended
This CL fixes the problem with voe_auto_test extended-codec test, as well as
extended-file test. First problem was that Opus was not added as a special case, like the other codecs, and the second problem was that the tests were not updated when test files were moved to the resources catalogue.

There are still some tests that fails. Here is a list of all extended tests and their status:

Base: fails - the reason seem to be that external transport has been removed.
CallReport: passes
Codec: passes (with this CL)
DTMF: passes
Encryption: fails or is dissabled?
VoEExternalMedia: passes
File: passes (with this CL)
Hardware: passes
NetEqStats: empty?
Network: passes
RTP_RTCP: fails
VideoSync: fails
VolumeControl: passes

BUG=issue2234
R=andrew@webrtc.org, henrika@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5020 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-23 10:39:56 +00:00
3555303cb0 Roll chromium_revision 226126:228675 and fix clang warnings
By request from thakis@chromium.org, I disabled the
-Wno-unused-const-variable setting that is set in Chromium's
common.gypi so we can prepare our code for it's removal.

This required some cleanup in order to get the code to compile
with Clang having the -Wunused-const-variable warning enabled.

TEST=all trybots passing
BUG=none
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4966 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-15 20:10:17 +00:00
cc92e000f3 1. adding request of ACM version in the manual mode of voe_auto_test
2. adding command line flag for automated mode of voe_auto_test to choose between ACMs

3. adding request of ACM version in voe_cmd_test

R=phoglund@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4877 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 08:43:50 +00:00
563910bde3 Disables RtpRtcpTest.CanTransmitExtraRtpPacketsWithoutError as it flakily breaks the waterfall. See http://chromegw.corp.google.com/i/client.webrtc/builders/Linux64%20Release%20%5Blarge%20tests%5D/builds/99/steps/voe_auto_test/logs/stdio the cl triggering it was a no-change (disabled some other broken tests).
TBR=wu@webrtc.org

BUG=2296

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4604 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-23 16:16:03 +00:00
822fbd8b68 Update talk to 50918584.
Together with Stefan's http://review.webrtc.org/1960004/.

R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4556 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 23:38:54 +00:00
d65914360a Disable CanTransmitExtraRtpPacketsWithoutError on Windows.
Flakily crashes on Windows.

BUG=2240
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4542 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-14 09:44:19 +00:00
6cd9341801 Hand over loopback packets to a network thread.
This version of LoopBackTransport hands packets over to a network thread
which will deliver them instead. This allows SendRTP and SendRTCP to
always be able to return, preventing deadlocks in voe_auto_test. The
previous case did not represent actual network usage. Now the send and
receive side can run concurrently with the receiving side. Previously
the sender thread also drove the receiving side, which does not
represent the regular use case where packets are put on a network
socket.

BUG=1568,2081,2178
TEST=Ran VoiceEngine RtpRtcpTest.*, known for deadlocking, 100+ times.
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4516 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-09 21:11:57 +00:00
676ff1ed89 Ref-counted rewrite of ChannelManager.
The complexity of the last ChannelManager and potentially usage of it as well caused race conditions and deadlocks in loopback voe_auto_test. This ref-counted solution takes no long-term locks, uses less locks overall and is significantly easier to understand.

ScopedChannel has been split up into a ChannelOwner with a reference to a channel and an Iterator over ChannelManager. Previous code was really used for both things. ChannelOwner is used as a shared pointer to a channel object, while an Iterator should work as expected.

BUG=2081
R=tommi@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4502 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-07 17:57:36 +00:00
94aca5c7de Disabled flaky HardwareTest.BuiltInWasapiAECWorksForAudioWindowsCoreAudioLayer.
TBR=xians@webrtc.org
BUG=2179

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4495 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-06 08:20:47 +00:00
bd69d1beaf Disabled SsrcPropagatesCorrectly on Linux.
BUG=2178
TBR=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4494 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-06 08:03:16 +00:00
12dc1a38ca Switch C++-style C headers with their C equivalents.
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
a3f30143b7 Default constructor for RtcpAppHandler.
Whenever this test (RtcpApplicationDefinedPacketsCanBeSentAndReceived) fails
because it's being run on a slower system (such as one running under valgrind),
valgrind reports a lot of undefined-value errors. Initializing the data
makes sure that, while the EXPECT_EQs trigger, they don't cause any errors in
valgrind.

BUG=
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4363 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-17 14:25:45 +00:00
aa4d96a134 Revert r4301
R=mikhal@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4357 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-16 19:25:04 +00:00
5b10d8fb18 Fix some voe_auto_test uninitialised-value errors.
BUG=
R=tommi@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4332 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-11 15:50:07 +00:00
66b2e5c05a Breaking out receive-stats, rtp-payload-registry and rtp-receiver from the
rtp_rtcp implementation.

This refactoring significantly reduces the receive-side RTP parser and receiver
complexity, and makes it possible to implement RTX correctly by having two
instances of receive-statistics.

With this change the dead-or-alive and packet timeout APIs are removed.

TEST=trybots, vie_auto_test, voe_auto_test
BUG=1811
R=mflodman@webrtc.org, pbos@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4301 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-05 14:30:48 +00:00
d900e8bea8 Proper spacing for end-of-namespace comments.
BUG=
R=mflodman@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 15:12:26 +00:00
1064cf06b0 Fixed Rtp/Rtcp tests
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4196 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-07 16:03:19 +00:00
0a38432ea5 Fix error in mixing test for supported sample rates.
With the switch to an arbitrary resampler, we now support these strange
rates.

TBR=turaj

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4158 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 22:52:09 +00:00
fa64a595ad Change SetRTPAudioLevelIndicationStatus to ignore the id in the case of disabling.
This makes it easier for the users of the interface, i.e. doesn't need to remember the id in order to disable audio level indication later.

BUG=1828
TEST=unit tests
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4157 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 21:27:57 +00:00
956aa7e087 Include files from webrtc/.. paths in voice_engine/
BUG=1662
R=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4079 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-21 13:52:32 +00:00
8a025e26db Make sure VoiceEngine tests only include one test framework.
BUG=
R=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4078 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-21 11:25:12 +00:00
9213521ea9 Remove const for plain data types in voice_engine/
BUG=1644
R=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4018 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 08:31:39 +00:00
258f55efc0 Disabled flaky test.
BUG=1719
TBR=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3935 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 12:35:00 +00:00
1de01354e6 Adding playout buffer status to the voe video sync
Review URL: https://webrtc-codereview.appspot.com/1311004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3835 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 20:23:35 +00:00
6141e13873 WebRtc_Word32 -> int32_t in voice_engine/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3792 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 10:09:10 +00:00
b9e402d99f Remove WEBRTC_*_ENGINE_NETWORK_API use
Review URL: https://webrtc-codereview.appspot.com/1203009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3767 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 19:51:42 +00:00
aa527bbc91 Disabling MixingTests due to race conditions.
BUG=1580
TBR=tommi

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3762 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 15:19:10 +00:00
0c45957e3a Remove UDP transport API from VoE
Review URL: https://webrtc-codereview.appspot.com/1236004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3757 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-03 15:43:57 +00:00
93bea51517 Removed CPU APIs from VoEHardware. Code is now only used by test applications.
Recommitting https://code.google.com/p/webrtc/source/detail?r=3736 after fixing build break.

BUG=8404677
TBR=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3739 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-28 15:58:49 +00:00
a442d4d983 Removed all code enclosed in WEBRTC_SRTP #ifdefs, and the unsupported VoE SRTP APIs. Test stubs are left in place as we still have the (De)RegisterExternalEncryption() APIs, although they are currently untested.
Today I had to figure out this code was legacy. Now next person doesn't have to.

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3738 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-28 09:14:36 +00:00
80fccc29de Revert 3736 "Removed CPU APIs from VoEHardware. Code is now only..."
> Removed CPU APIs from VoEHardware. Code is now only used by test applications.
> 
> BUG=8404677
> 
> Review URL: https://webrtc-codereview.appspot.com/1238004

TBR=henrike@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1267004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3737 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 23:38:21 +00:00
4c138e8fca Removed CPU APIs from VoEHardware. Code is now only used by test applications.
BUG=8404677

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3736 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 21:23:42 +00:00
e30823911c Move the VoE tests to use external transport instead of the built in udp transport
Review URL: https://webrtc-codereview.appspot.com/1223006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3708 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-22 16:12:57 +00:00
684f0577fb Revert r3667 and r3665
Review URL: https://webrtc-codereview.appspot.com/1199004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3668 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-13 23:20:57 +00:00
361bac7a4f Removed the engine API:s related to transport such as SetSendDestination, the functionality is now provided via the test frame work.
Review URL: https://webrtc-codereview.appspot.com/1029004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3665 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-13 17:52:42 +00:00
b7edd06530 Remove DTMF detection. Talk team has been in the loop and there is no need for
DTMF detection at the receiver side.

test=voe_auto_test, VoE extended test DTMF
Review URL: https://webrtc-codereview.appspot.com/1168004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3663 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-12 22:27:27 +00:00
24045c5a02 None of the clients of VoE use SetNetEQBGNMode(), furthermore, NetEq 4 does not provide an API to change the mode of the background noise.
bug=issue1370
test=trybots
Review URL: https://webrtc-codereview.appspot.com/1121007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3607 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-05 03:14:22 +00:00
6ed8ebcef9 Fix MaxChannels test; 32 -> 100.
TBR=henrika

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3460 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-02 00:05:58 +00:00
4a6f62d4dc Remove (in practice) the voice engine channel limit.
There's really no reason for this limit. I've bumped it to a
practically unreachable ceiling, with a TODO for removing it
entirely.

TBR=henrika
BUG=b/8122300

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3459 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-01 23:42:44 +00:00
08d660f08e Allow for some error in volume testing.
BUG=616
TESTED=voe_auto_test:VolumeTest.* now passes on a MacBook

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3348 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-09 17:07:02 +00:00