ccd42840bc
Wire up statistics in video send stream of new video engine api
...
Note, this CL does not contain any tests. Those are implemeted as call
tests and will be submitted when the receive stream is wired up as well.
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5559006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5344 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-07 09:54:34 +00:00
54ae4ffb9e
Add callbacks for receive channel RTCP statistics.
...
This allows a listener to receive new statistics as it is generated - avoiding the need to poll. This also makes handling stats from multiple RTP streams more tractable.
The change is primarily targeted at the new video engine API.
TEST=Unit test in ReceiveStatisticsTest. Integration tests to follow as call tests when fully wired up.
BUG=2235
R=henrika@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5089004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5323 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-19 13:26:02 +00:00
052fa6243a
Stop transport in test SuspendBelowMinBitrate.
...
Avoids race when packets are still left in the network while the Call is
being destroyed.
R=mflodman@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/6009004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5307 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-17 11:19:58 +00:00
5ab756703e
Revert r5294 to re-roll r5293.
...
To fix races in test each stream now owns its own encoder/decoder.
R=mflodman@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/5919004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5297 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-16 12:24:44 +00:00
41e2615e02
Revert 5293 "Auto instantiate RBE depending on whether AST or TO..."
...
> Auto instantiate RBE depending on whether AST or TOF is available in incoming packet stream.
>
> BUG=
> R=mflodman@webrtc.org , stefan@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/5409004
TBR=solenberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5889004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5294 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-15 18:42:32 +00:00
341e91441a
Auto instantiate RBE depending on whether AST or TOF is available in incoming packet stream.
...
BUG=
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5409004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-13 23:57:54 +00:00
724947b8ef
Add SwapFrame() to VideoSendStreamInput.
...
Optionally prevents doing a frame copy when putting frames into a
VideoSendStream. PutFrame() is still there, which copies the frame.
Also removes time_since_capture_ms as a parameter, since
I420VideoFrame::render_time_ms() denotes when the frame was captured.
BUG=2657
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5119004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5265 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 16:26:16 +00:00
8b8819262f
Improve VideoSendStreamTest::MaxPacketSize
...
This CL was submitted as issue https://webrtc-codereview.appspot.com/4849004/ , but was reverted because of flakiness. This new issue will correct that.
Patch Set 1 contains the code that was submitted in 4849004.
BUG=2428
R=pbos@webrtc.org , phoglund@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5399004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5251 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-10 10:05:17 +00:00
797522f9f2
Revert 5229 "Make VideoSendStreamTest::MaxPacketSize test a whol..."
...
> Make VideoSendStreamTest::MaxPacketSize test a whole range of frame sizes, to make sure all corner cases are covered.
>
> BUG=2428
> R=pbos@webrtc.org , phoglund@webrtc.org , stefan@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/4849004
It caused a failure in video_engine_tests on the Linux Tsan bot.
TBR=sprang@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5269004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5240 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-06 17:42:32 +00:00
7104fc1906
Make VideoSendStreamTest::MaxPacketSize test a whole range of frame sizes, to make sure all corner cases are covered.
...
BUG=2428
R=pbos@webrtc.org , phoglund@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4849004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5229 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-05 16:15:11 +00:00
b613b5ab2b
Set local SSRC for VideoReceiveStream.
...
As a bonus, also removes GenerateRandomSsrc, which only worked on sender
configs. There's no point to generate random SSRCs in tests.
BUG=2691
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4689004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5201 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 10:13:04 +00:00
e1fc3f22ea
Disable check for all sent SSRCs being valid.
...
Since the code for setting these up will set the codec before setting
SSRCs for the streams, any frames sent in between will be sent on
random-generated SSRCs.
This part should be added back during work on issue 1695.
BUG=1695
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4629004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5192 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 15:40:12 +00:00
13d38a13e3
Set up SSRCs correctly after switching codec.
...
Before SSRCs were not set up correctly, as the old VideoEngine API
doesn't support setting additional SSRCs before a codec with as many
streams are set.
No test was in place to catch this, so two tests are added to make sure
that we send the SSRCs that are set, and also that we can switch from
using one to using all SSRCs, even though initially not all of them are
set up.
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4539004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5188 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 11:59:31 +00:00
4ab4fc0044
Add test for automatically disabling padding when no video is being captured.
...
BUG=2648
TEST=trybots
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4329004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5169 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-25 11:54:24 +00:00
331d4402fc
Connect pacer/padding to SuspendBelowMinBitrate
...
The suspend function must not be engaged unless padding is also enabled.
This CL makes the connection so that the pacer and padding is enabled
when SuspendBelowMinBitrate is.
Had to change the unit test to make it aware of the padding packets.
BUG=2606
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4089004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5153 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 14:05:40 +00:00
2c46f8d854
Rename DestroyStream methods to include Video.
...
Matches r5135 which renames CreateSendStream->CreateVideoSendStream for
instance.
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4109005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5151 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 13:49:43 +00:00
ce90eff345
Rename RTP-extension constants.
...
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3969004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5137 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 11:48:56 +00:00
53c8573525
Rename video streams' start/stop methods.
...
{Start,Stop}{Send,Receive}() -> {Start,Stop}{Sending,Receiving}().
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3609005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5136 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 11:36:47 +00:00
5a63655ab0
Rename Call::Create{Receive,Send}Stream().
...
Renaming the methods to include Video. Long-term there will hopefully be
AudioSendStream/AudioReceiveStreams as well.
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3439004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5135 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 10:40:25 +00:00
ce8e0936d9
Rename AutoMute to SuspendBelowMinBitrate
...
Changes all instances throughout the WebRTC stack.
BUG=2436
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3919004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5130 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 12:18:43 +00:00
4cfa6050f6
Fix breakage after introducing new test.
...
TBR=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3899005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5127 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-15 13:15:56 +00:00
69969e2e2f
Improve Call tests for RTX.
...
Also does some refactoring to reuse RtpRtcpObserver.
BUG=1811
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3809004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5126 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-15 12:32:15 +00:00
6488761f2e
Implement VideoSendStream::SetCodec().
...
Removing assertion that SSRC count should be the same as the number of
streams in the codec. It makes sense that you don't always use the same
number of streams under one call. Dropping resolution due to CPU overuse
for instance can require less streams, but the SSRCs should stay
allocated so that operations can resume when not overusing any more.
This change also means we can get rid of the ugly SendStreamState whose
content wasn't defined. Instead we use SetCodec to change resolution
etc. on the fly. Should something else have to be replaced on the fly
then that functionality simply has to be implemented.
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3499005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5123 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-14 08:58:14 +00:00
def22b455b
Stop DirectTransports in VideoSendStreamTests.
...
Prevents racy packet delivery during or after Call destruction.
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3099005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5049 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-29 10:12:10 +00:00
16e03b7bd8
Separate Call API/build files from video_engine/.
...
BUG=2535
R=andrew@webrtc.org , mflodman@webrtc.org , niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2659004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5042 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-28 16:32:01 +00:00