pbos@webrtc.org
709e29742e
Simplify pacer interface.
...
New interface uses two bitrates (max/min). The pace multiplier is also
removed from the interface and instead utilized outside. Min bitrate
will be filled with padding if there's not enough media to transmit.
Also fixes a bug in minimum transmission bitrate that made it ignore
REMBs. A regression test has been added to catch it.
BUG=3014
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/10059004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5723 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 10:59:52 +00:00
elham@webrtc.org
32c3247418
Fix for libtalkmobile build error
...
bug=b/12549061
R=andresp@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/7329004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5404 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-21 16:16:58 +00:00
andresp@webrtc.org
7fb75ecbd4
Add thread_annotations for clang targets.
...
TESTED: As expected clang bots catched a few issues which are fixed with this CL, other bots ignore the annotations and compile fine.
R=niklas.enbom@webrtc.org , phoglund@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/6209004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5328 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-20 20:20:50 +00:00
stefan@webrtc.org
dd393e7b9d
Measure pacer queue size based on when packets are inserted rather than captured.
...
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5659004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5291 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-13 22:03:27 +00:00
stefan@webrtc.org
b627f676b3
Fixes a crash in the pacer where it fails to find a normal prio packet if there are no high prio packets, given that the queue has grown too large.
...
BUG=2682
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4599005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5190 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 14:00:09 +00:00
stefan@webrtc.org
19a40ff05b
Ensure that no packet stays in the pacer queue for longer than 2 seconds.
...
BUG=2682
TEST=trybots
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4519004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5182 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-27 14:16:20 +00:00
stefan@webrtc.org
ef2d55461b
Increase size of pacer window to 500 ms as that better matches the encoder.
...
BUG=1812
R=andresp@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4129006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5154 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 14:37:11 +00:00
stefan@webrtc.org
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
stefan@webrtc.org
b2c8a952a7
Improving padding rules and breaking out bw allocation to ViEEncoder.
...
BUG=1837
TESTS=vie_auto_test --automated, trybots
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2170004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4693 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 13:58:01 +00:00
stefan@webrtc.org
80865fd611
Don't pace out packets or generate padding when the pacer is disabled.
...
TEST=trybots
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2000004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4513 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-09 11:31:23 +00:00
hclam@chromium.org
6eb53f71d6
Fix memory bot failure
...
Exit the method with critical setting held. This should make
the memory bot happy.
TBR=pwestin@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1704005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4251 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-20 23:01:39 +00:00
hclam@chromium.org
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
stefan@webrtc.org
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
stefan@webrtc.org
8ad3ec9722
Fix build error introduced with r4168.
...
TBR=mflodman@webrtc.org
BUG=1837
Review URL: https://webrtc-codereview.appspot.com/1610004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4169 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 09:52:46 +00:00
stefan@webrtc.org
c3cc375499
Add support for padding in pacer.
...
This improves pacer-based padding by making sure it limits padding according to:
- Never pad more than 800 kbps.
- Padding + media should not go above a given target bitrate.
Also adds appropriate unittests to make sure we reach the given targets.
BUG=1837
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1582005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4168 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 09:36:56 +00:00
pwestin@webrtc.org
0f29810288
Fix crash in pacer.
...
BUG=1731
R=niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1410006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3964 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-06 16:37:22 +00:00
pwestin@webrtc.org
52b4e8871a
Adding trace and changing pacing constants
...
BUG=1721,1722
R=mikhal@webrtc.org , niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1380005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3940 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 19:02:17 +00:00
pwestin@webrtc.org
52aa019e98
Avoid adding duplicates in pacer lists.
...
Review URL: https://webrtc-codereview.appspot.com/1329007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3899 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-25 17:35:56 +00:00
stefan@webrtc.org
bfacda60be
Add interface to signal a network down event.
...
- In real-time mode encoding will be paused until the network is back up.
- In buffering mode the encoder will keep encoding, and packets will be
buffered at the sender. When the buffer grows above the target delay
encoding will be paused.
- Fixes a couple of issues related to pacing which was found with the new test.
- Introduces different max bitrates for pacing and for encoding. This allows
the pacer to faster get rid of the queue after a network down event.
(Work based on issue 1237004)
BUG=1524
TESTS=trybots,vie_auto_test
Review URL: https://webrtc-codereview.appspot.com/1258004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3730 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 16:36:01 +00:00
pwestin@webrtc.org
db4185664c
Introduced pause and resume to the pacer
...
Review URL: https://webrtc-codereview.appspot.com/1217007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3717 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-22 23:39:29 +00:00
pwestin@webrtc.org
b518017e71
Adding pacing module, will replace the transmission_bucket in the RTP module.
...
TESTED=unittest
Review URL: https://webrtc-codereview.appspot.com/930015
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3073 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 20:56:23 +00:00