14 Commits

Author SHA1 Message Date
pbos@webrtc.org
841c8a44bb Rename VideoCall to Call.
Call should encompass more than video, there's no point in calling it
VideoCall.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4704 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 15:04:25 +00:00
pbos@webrtc.org
0181b5f8dd ExternalVideoDecoder for new VideoEngine API.
Implements the ExternalVideoDecoder interface for VideoReceiveStream.
Also adds a FakeDecoder used in tests, removing the overhead of running
the EngineTest tests with VP8 under Memcheck/TSan, allowing us to enable
them under Memcheck/TSan as well.

BUG=2346,2312
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4702 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 08:26:30 +00:00
stefan@webrtc.org
7bb8f02274 Adds support for combining RTX and FEC/RED.
This is accomplished by breaking out RTX and FEC/RED functionality from the RTP module and keeping track of the base payload type, that is the payload type received when not receiving RTX.

Enables retransmissions over RTX by default in the loopback test.

BUG=1811
TESTS=voe/vie_auto_test --automated and trybots.
R=mflodman@webrtc.org, pbos@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4692 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 13:40:11 +00:00
pbos@webrtc.org
95e51f509c Remove send and receive streams when destroyed.
Fixes crash where packets were sent to a receive stream that had been
destroyed but not removed from the ssrc mapping from call to receiver.
Added a repro case that reliably crashed before the fix.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4681 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 12:38:54 +00:00
mflodman@webrtc.org
e2d4da6586 Enable EngineTest.ReceivesPliAndRecoversWithNack and fix memcheck suppression filter.
BUG=2346
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4677 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 14:21:57 +00:00
mflodman@webrtc.org
06f1f74331 Disable EngineTest.ReceivesPliAndRecoversWithNack.
The test times out on Linux memcheck bot at times.

BUG=2348

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4674 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 11:00:07 +00:00
pbos@webrtc.org
cb5118c14c Add FakeEncoder to VideoSendStream tests.
Breaks out config part of FakeEncoder from VideoSendStream tests to
FakeEncoder. Also sets FakeEncoder as encoder for VideoSendStream tests.
Anticipated speedup didn't happen as VP8 is still initialized by default
when creating channels in the old API. This will be sped up when moving
off the old API as VP8 won't be enabled by default.

BUG=2312
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4659 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-03 09:10:37 +00:00
pbos@webrtc.org
74fa4893f9 Remove newapi:: namespace for typenames without overlap.
Typing newapi:: everywhere is very verbose, and doesn't add any real
value. The new API is still separated from other code by being in
separate directories, such as internal/ or new_include.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4601 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-23 09:19:30 +00:00
stefan@webrtc.org
360e376872 Adds two tests for verifying padding and ramp-up behavior.
BUG=1837
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4591 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 09:29:56 +00:00
pbos@webrtc.org
d5f4c15e8f Added missing static_cast conversion.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4568 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-19 16:35:36 +00:00
pbos@webrtc.org
e7f056ec45 Implementation and testing of PLI in new API.
BUG=2174
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4567 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-19 16:09:34 +00:00
pbos@webrtc.org
fd39e13c80 Remove VideoEngine class from new VideoEngine API.
The VideoEngine class had minimal use, so it makes more sense to bake
its functionality and config into VideoCall for a simpler API. The only
thing the VideoEngine class could do was to create VideoCalls.

BUG=2224
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4543 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-14 13:52:52 +00:00
pbos@webrtc.org
9668467d87 Run loopback tests with network thread.
Running with a network thread provides a more realistic simulation. Like
a real network, packets are handed off to a socket, or buffer, and then
the call returns. This prevents weird scenarios when both the sending
side and receiving side are on the call stack simultaneously, which can
cause deadlocks as locks could otherwise be taken simultaneously in both
the sender and receiver order by the same thread.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4522 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-12 12:59:04 +00:00
pbos@webrtc.org
bbb07e69e5 Glue code and tests for NACK in new VideoEngine API.
The test works by randomly dropping small bursts of packets until enough
NACKs have been sent back by the receiver. Retransmitted packets are
never dropped in order to assure that all packets are eventually
delivered. When enough NACK packets have been received and all dropped
packets retransmitted, the test waits for the receiving side to send a
number of RTCP packets without NACK lists to assure that the receiving
side stops sending NACKs once packets have been retransmitted.

BUG=2043
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4482 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 12:01:36 +00:00