0b0c24177b
Only return Rtx mode in RTXSendStatus().
...
There is no need to return 'ssrc' and 'payloadtype' inside this function
since they are never used.
BUG=
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/38569004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8049 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-13 14:15:15 +00:00
16825b1a82
Use int64_t more consistently for times, in particular for RTT values.
...
Existing code was inconsistent about whether to use uint16_t, int, unsigned int,
or uint32_t, and sometimes silently truncated one to another, or truncated
int64_t. Because most core time-handling functions use int64_t, being
consistent about using int64_t unless otherwise necessary minimizes the number
of explicit or implicit casts.
BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org , holmer@google.com , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/31349004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8045 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 21:51:21 +00:00
8f27fcce79
Revert 8028 "Support associated payload type when registering Rt..."
...
Reasons for revert:
1. glaznev discovered potentially related problems using the Android AppRTCDemo.
2. We're trying to do an M41 webrtc roll in Chromium, and this CL is risky.
> Support associated payload type when registering Rtx payload type.
>
> Major changes include,
> - Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
> - Receiver: Restore RTP packets by the new RTX-APT map.
> - Sender: Send RTP packets by checking RTX-APT map.
> - Add RTX payload type for RED in the default codec list.
>
> BUG=4024
> R=pbos@webrtc.org , stefan@webrtc.org
> TBR=mflodman@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/26259004
>
> Patch from Changbin Shao <changbin.shao@intel.com >.
TBR=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/33829004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8033 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 20:22:46 +00:00
2a169640a3
Support associated payload type when registering Rtx payload type.
...
Major changes include,
- Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
- Receiver: Restore RTP packets by the new RTX-APT map.
- Sender: Send RTP packets by checking RTX-APT map.
- Add RTX payload type for RED in the default codec list.
BUG=4024
R=pbos@webrtc.org , stefan@webrtc.org
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/26259004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8028 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 15:16:10 +00:00
d16e839c6d
Rtp-Rtcp sender cleanup.
...
Some setter functions from Rtp and Rtcp Sender never return negative values. Remove return results from those functions.
Also removed const on non-pointer/reference types for related files.
BUG=
R=henrika@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/34469004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7962 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-19 13:49:55 +00:00
11d8176cb3
Move updating nack bitrate inside UpdateNACKBitRate.
...
BUG=
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/32819004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7960 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-19 09:52:24 +00:00
ce4e9a3562
Refactor some receive-side stats.
...
Removes polling of CName as well as receive codec statistics in favor of
internal callbacks keeping a statistics struct up to date.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1667
Review URL: https://webrtc-codereview.appspot.com/28259005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7950 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 13:50:16 +00:00
97d0489058
Add video send bitrates to histogram stats:
...
- total bitrate ("WebRTC.Video.BitrateSentInKbps")
- media bitrate ("WebRTC.Video.MediaBitrateSentInKbps")
- rtx bitrate ("WebRTC.Video.RtxBitrateSentInKbps")
- padding bitrate ("WebRTC.Video.PaddingBitrateSentInKbps")
- retransmitted bitrate ("WebRTC.Video.RetransmittedBitrateInKbps")
Add retransmitted bytes to StreamDataCounters.
Change in UpdateRtpStats to also update counters for retransmitted packet.
BUG=crbug/419657
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/30199004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7838 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-09 09:47:53 +00:00
9334ac2d78
Use vector of CSRCs for DeliverFrame & SetCSRCs.
...
BUG=
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28029004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7734 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-24 08:25:50 +00:00
4591fbd09f
Use size_t more consistently for packet/payload lengths.
...
See design doc at https://docs.google.com/a/chromium.org/document/d/1I6nmE9D_BmCY-IoV6MDPY2V6WYpEI-dg2apWXTfZyUI/edit?usp=sharing for more information.
This CL was reviewed and approved in pieces in the following CLs:
https://webrtc-codereview.appspot.com/24209004/
https://webrtc-codereview.appspot.com/24229004/
https://webrtc-codereview.appspot.com/24259004/
https://webrtc-codereview.appspot.com/25109004/
https://webrtc-codereview.appspot.com/26099004/
https://webrtc-codereview.appspot.com/27069004/
https://webrtc-codereview.appspot.com/27969004/
https://webrtc-codereview.appspot.com/27989004/
https://webrtc-codereview.appspot.com/29009004/
https://webrtc-codereview.appspot.com/30929004/
https://webrtc-codereview.appspot.com/30939004/
https://webrtc-codereview.appspot.com/31999004/
Committing as TBR to the original reviewers.
BUG=chromium:81439
TEST=none
TBR=pthatcher,henrik.lundin,tina.legrand,stefan,tkchin,glaznev,kjellander,perkj,mflodman,henrika,asapersson,niklas.enbom
Review URL: https://webrtc-codereview.appspot.com/23129004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7726 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-20 22:28:14 +00:00
0bae1fab4a
Wire up bandwidth stats to the new API and webrtcvideoengine2.
...
Adds stats to verify bandwidth and pacer stats.
BUG=1788
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/24969004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7634 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 14:05:29 +00:00
dcebf2daa7
Reworked paced sender queue
...
Packet queue in the paced sender is now based on a priority queue rather than having a separate fifo-queue per priority level. This allows more flexible sorting and cleaner usage.
Packets with earlier capture times are now prioritized higher. In situations with high packet loss, the queue might contain packets from several subsequent frames. Retransmit packets from the earlier frames first, since the later ones will probably be dependent on these.
Also, don't force sending of packets after a certain time of inactivity or when packets grow too old, since this was causing consistent overuse on poor connections. Instead, drop frames in vie encoder if pacer queue is too long.
BUG=
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/27869004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7617 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 16:27:16 +00:00
38344ed280
Move thread_annotations.h to webrtc/base/.
...
R=andresp@webrtc.org , mflodman@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/27579004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7283 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 06:05:00 +00:00
c3c29113d1
Expose setPayloadType on the rtp_sender. Thus allowing other users of this module
...
to set the payload type to be used without having to call SendOutgoingData.
BUG=3694
R=asapersson@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/18289004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6988 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-27 09:39:43 +00:00
817a034cf2
Fix TimeToSendPadding return to be 0 if no padding bytes are sent.
...
BUG=3694
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15149005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6900 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-14 08:24:47 +00:00
8b94e3da0f
Fix issue where padding is sent before media with undefined timestamps if not abs-send-time is enabled.
...
This broke bandwidth estimation for calls without abs-send-time is enabled, but where RTX was.
BUG=
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/16929004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6719 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-17 16:10:14 +00:00
63c60ed224
Remove old padding path in RTPSender.
...
Removing RTPSender::SendPaddingAccordingToBitrate() as well as a couple
of arguments from SendPadData().
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/14989004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6703 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-16 09:37:29 +00:00
2f4b14e3f3
Make RTCP sender report send media bytes.
...
r6654 changed RtpSender::Bytes() to return the number of bytes sent
instead of number of media bytes. This is used by VideoEngine for stats.
This change broke RTCP which sends this same count as the number of
payload bytes sent (excluding headers and padding).
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/14959004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6691 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 15:25:39 +00:00
168f23faa5
Move pacer to fully use webrtc::Clock instead of webrtc::TickTime.
...
This required rewriting the send-side delay stats api to be callback based, as otherwise the SuspendBelowMinBitrate test started flaking much more frequently since it had lock order inversion problems.
R=pbos@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/21869005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6664 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 13:44:02 +00:00
72491b9a90
Count total bytes sent in RTPSender::Bytes().
...
Previously only media bytes were included, this adds header bytes and
padding bytes to the calculation.
BUG=
R=stefan@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/19939004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6654 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 16:24:54 +00:00
8f1512140e
Refactor registerable callbacks for FrameCountObserver from rtp_rtcp module into vie_channel.
...
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/16839004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6649 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 09:39:23 +00:00
d11bec40b2
Refactor registerable callbacks for VideoBitrateObserver from rtp_rtcp module into vie_channel.
...
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20879004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6626 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 14:32:58 +00:00
62bafae661
Some refactoring inside rtp_rtcp/.
...
Renaming ModuleRTPUtility -> RtpUtility.
Renaming RTPHeaderParser -> RtpHeaderParser.
Making RtpHeaderParser accept size_t instead of int for packet length.
Making RtpUtility::RtpHeaderParser accept size_t for packet length.
BUG=
R=stefan@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/19899004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6623 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 12:10:51 +00:00
2bb1bdab8d
Preserve RTP states for restarted VideoSendStreams.
...
A restarted VideoSendStream would previously be completely reset,
causing gaps in sequence numbers and potentially RTP timestamps as well.
This broke SRTP which requires fairly sequential sequence numbers.
Presumably, were this sent without SRTP, we'd still have problems on the
receiving end as the corresponding receiver is unaware of this reset.
Also adding annotation to RTPSender and addressing some unlocked
access to ssrc_, ssrc_rtx_ and rtx_.
BUG=
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20819004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6612 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 13:06:48 +00:00
aa0e56e8e8
Fixes a bug causing NACKs to be dropped excessively at the send-side.
...
This was introduced in r6472 where the target bitrate was changed to be stored in bits/s instead of kbits/s, but the storage type was accidentally left as uint16_t. This caused the bitrate to be truncated, which at times causes NACKs to be dropped due to insufficient bitrate available.
BUG=3518
TEST=Tested in Chrome, trybots and verified that it fixes the bug in vie_auto_test loopback test.
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/21739004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6544 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-26 11:44:49 +00:00
a15fbfdcde
Add round-robin selection of send stream to pad on.
...
BUG=1812
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/21669004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6472 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-17 17:32:05 +00:00
ef92755780
Have RTX be enabled by setting an RTX payload type instead of by setting an RTX SSRC.
...
This makes it easier to disable RTX by filtering out the RTX codec during call setup/signaling, and won't require that also the SSRCs are filtered out.
BUG=1811
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15629005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6335 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 08:25:29 +00:00
420b2567f3
Fix bug where RTP headers in the packet history were replaced with the RTX wrapped headers.
...
This caused only the first retransmission to be successful.
Introduced with https://code.google.com/p/webrtc/source/detail?r=5728 .
BUG=1811
R=asapersson@webrtc.org , mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/12609005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6284 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-30 12:17:15 +00:00
d09d074827
Protect write of send_target_bitrate.
...
This issue was catch by tsan bot.
BUG=3065
R=stefan@webrtc.org , andrew
Review URL: https://webrtc-codereview.appspot.com/10619004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5790 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-26 14:27:34 +00:00
efcad39f77
Fix race condition in RTPSEnder.
...
In RTPSender::SendPayloadType(), payload_type_ should not be read
without owning send_critsect_.
BUG=
R=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/8199004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5778 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 16:51:35 +00:00
7c6ff2da26
Fixes RTX related bugs.
...
- An RTX packet with no payload should be dropped prior to parsing RTX header since it doesn't have an RTX header. This can for example happen when sending padding-only packets over the RTX stream.
- The retransmit code path when the pacer is disabled doesn't properly update the abs-send-time and ts-offset header extensions.
TEST=trybots
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/9189004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5728 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 18:14:52 +00:00
5a320fb06f
Race condition in RTPSender
...
RTPSender::sending_media_ should be guarded by send_critsect_. Fix this
in GetSendSideDelay, SendPadData and TimeToSendPadding.
Also add appropriate thread annotations.
BUG=3029
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/9779004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5697 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-13 15:12:37 +00:00
ebdb0e3ad0
Help to land 7969005 on behalf of solenberg. The review and try is done in 7969005.
...
- Add ability to VoE to send Absolute Sender Time header extension.
- Refactor handling of RTP header extensions in VoE to work the same as in ViE.
- Add API to enable receiving Absolute Sender Time in VoE.
This is part of the work to include audio packets in bandwidth estimation, for
better accuracy in estimates.
BUG=
TBR=solenberg@webrtc.org ,henrikg@webrtc.org ,stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/9509004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5654 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-06 23:49:08 +00:00
6811b6e308
Callback for send bitrate estimates - new roll
...
Issue https://webrtc-codereview.appspot.com/4459004/ was commited as
r5259, after which flakiness was detected and a rollback was performed
at r5261.
Patch Set 1 of this issue is the code submitted in r5259. Subsequent
patch sets fixes a race condition which caused the seen problems.
The root cause was a dead lock between a thread sending rtp packets and
and a timed module processing thread:
webrtc::RTPSender::BitrateUpdated() // Get RTPSender stats lock
webrtc::Bitrate::Process() // Get Bitrate lock
webrtc::RTPSender::ProcessBitrate()
webrtc::ModuleRtpRtcpImpl::Process()
...
webrtc::Bitrate::Update() // Get Bitrate lock
webrtc::RTPSender::UpdateRtpStats() // Get RTPSender stats lock
webrtc::RTPSender::SendToNetwork()
...
This is fixed in Bitrate::Process() by releasing the lock before
calling the callback.
BUG=2235
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5619004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5281 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-13 09:46:59 +00:00
096e8d9f94
Revert 5259 "Callback for send bitrate estimates"
...
CL is causing flakiness in RampUpTest.WithoutPacing.
> Callback for send bitrate estimates
>
> BUG=2235
> R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/4459004
R=mflodman@webrtc.org , pbos@webrtc.org
TBR=mflodman
Review URL: https://webrtc-codereview.appspot.com/5579005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5261 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 14:07:33 +00:00
2656cf9f4c
Callback for send bitrate estimates
...
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4459004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5259 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 12:53:03 +00:00
ebad765ee0
Add callbacks for send channel rtp statistics
...
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4449004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5227 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-05 14:29:02 +00:00
0a3c1471b8
Add API to query video engine for the send-side delay.
...
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4559005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5225 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-05 14:05:07 +00:00
c4726d06fa
Make RTPSender::SendPadData public.
...
R=andresp@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5029004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5219 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-05 09:16:33 +00:00
71f055fb41
Add send frame rate statistics callback
...
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4479005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5213 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 15:09:27 +00:00
7e9315b42e
Adds support for sending redundant payloads over RTX.
...
TEST=trybots
BUG=1812
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4169004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5209 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 10:24:26 +00:00
6e95d7afab
Increment RTP timestamps for padding packets
...
This CL makes the padding packets get their own RTP timestamps,
rather than having the same timestamp as the last sent video
packet. The purpose is to solve Issue 2611, where the overuse-
detector does not react to padding packets.
A test was implemented to verify that the padding packets do
get their own timestamps.
BUG=2611
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3869004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5125 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-15 08:59:19 +00:00
9b82f5a6ed
Fix for RTX in combination with pacing.
...
Retransmissions didn't get sent over RTX when pacing was enabled since
the pacer didn't keep track of whether a packet was a retransmit or not.
BUG=1811
TEST=trybots
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3779004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5117 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-13 15:29:21 +00:00
e07049f19f
Lock RTPSender statistics.
...
Suppressing these errors in TSan has become tedious. It's better to just
lock them.
BUG=2349
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2197004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4713 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 11:29:17 +00:00
59f20bb735
Break out RTCPSender dependency on ModuleRtpRtcpImpl.
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2191004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4706 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 16:02:19 +00:00
d4f607e70a
Fixes to padding when driven by encoder.
...
- Allow padding to be sent on an ssrc which doesn't produce video, therefore
never having the last_packet_marker_bit_ set.
- Add the random timestamp offset to all padding packets.
- Store the capture time of padding packets to properly create an offset.
BUG=2258
TEST=trybots and a new test which will be committed separately.
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2060005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4566 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-19 15:55:01 +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
f3e4ceee47
Fix some chromium-style warnings in webrtc/modules/rtp_rtcp/
...
BUG=163
R=pwestin@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1904005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4444 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 15:17:19 +00:00
2e402ce873
Enqueue packet in pacer if sending fails
...
If a packet cannot be sent while pacer is in use it should be
queued. This avoid packet loss due to congestion.
BUG=1930
R=pwestin@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1693004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4250 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-20 20:18:31 +00:00
8ccb9f9716
Fixes some pacer/padding issues found while testing.
...
- A bug was introduced in r4234 causing no paced packets to be sent.
- Only update the sequence number counter if a padding packet is actually going to be sent, to avoid packet loss.
- Have all packets go through the pacer if pacing is enabled to avoid reordering.
- Fix race condition on reading capture_time_ms_/timestamp_ in rtp_sender.cc.
BUG=1837
TEST=trybots and vie_auto_test --automated
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1682004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4246 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-19 14:13:42 +00:00