22 Commits

Author SHA1 Message Date
Stefan Holmer
e590416722 Moving the pacer and the pacer thread to ChannelGroup.
This means all channels within the same group will share the same pacing queue and scheduler. It also means padding will be computed and sent by a single pacer. To accomplish this I also introduce a PacketRouter which finds the RTP module which owns the packet to be paced out.

BUG=4323
R=mflodman@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8864}
2015-03-26 10:11:22 +00:00
solenberg@webrtc.org
aafbec15f9 Remove ViENetwork::SetBandwidthEstimationConfig() interface since dynamically changing BWE settings isn't necessary now that AIMD is the default.
BUG=3735
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8351}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8351 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-12 13:21:27 +00:00
pkasting@chromium.org
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
pbos@webrtc.org
4e2806d85f Remove WEBRTC_TRACE uses in video_engine/
Complements fixes by mflodman@.

BUG=3153
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6136 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-14 08:02:22 +00:00
stefan@webrtc.org
a16147c037 Adding API for setting bandwidth estimation configurations.
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5773 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 10:37:31 +00:00
solenberg@webrtc.org
3fb8f7bbb0 Implement ViE forwarding to RBE of packets for BWE coming in through the ViENetwork::ReceivedBWEPacket API.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5765 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 20:28:11 +00:00
solenberg@webrtc.org
b1f5010075 VoE changes to allow forwarding of packets from VoE to ViE BWE.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5757 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 10:38:25 +00:00
wu@webrtc.org
a9890800e0 Update talk to 58127566 together with
https://webrtc-codereview.appspot.com/5309005/.

R=mallinath@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5277 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-13 00:21:03 +00:00
wu@webrtc.org
2018269dc3 Revert 5274 "Update talk to 58113193 together with https://webrt..."
> Update talk to 58113193 together with https://webrtc-codereview.appspot.com/5309005/.
> 
> R=mallinath@webrtc.org, niklas.enbom@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/5719004

TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5275 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-12 22:54:25 +00:00
wu@webrtc.org
a129b6cd13 Update talk to 58113193 together with https://webrtc-codereview.appspot.com/5309005/.
R=mallinath@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5274 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-12 22:40:39 +00:00
wu@webrtc.org
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
tnakamura@webrtc.org
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
stefan@webrtc.org
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
mflodman@webrtc.org
4dee30927a Remove SetOverUseDetectorOptions and cleaned ViESharedData.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4042 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 11:13:18 +00:00
andrew@webrtc.org
d72262dc01 Fix compile errors in ViE with latest clang.
Rolling to the latest Chromium picks up a new clang, which catches a fresh error:

error: 'reinterpret_cast' to class 'webrtc::VideoEngineImpl *' from its base at non-zero offset 'webrtc::VideoEngine *' behaves differently from 'static_cast' [-Werror,-Wreinterpret-base-class]
 VideoEngineImpl* vie_impl = reinterpret_cast<VideoEngineImpl*>(video_engine);
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../webrtc/video_engine/vie_codec_impl.cc:36:31: note: use 'static_cast' to adjust the pointer correctly while downcasting
  VideoEngineImpl* vie_impl = reinterpret_cast<VideoEngineImpl*>(video_engine);
                              ^~~~~~~~~~~~~~~~
                              static_cast

This was triggered by André's change here:
https://code.google.com/p/webrtc/source/detail?r=3986
which made VideoEngineImpl a derived class of VideoEngine (good).

Picked up one other error as well:
error: implicit conversion from 'long' to 'int' changes value from 9223372036854775807 to -1 [-Werror,-Wconstant-conversion]
        AutoTestSleep(std::numeric_limits<long>::max());
        ~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This fixes the errors and is required before stable can be rolled in Chromium.

TBR=mflodman,andresp

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3989 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-09 02:12:07 +00:00
pbos@webrtc.org
b238d1210b WebRtc_Word32 -> int32_t in video_engine/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3801 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 13:41:51 +00:00
pwestin@webrtc.org
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
pwestin@webrtc.org
82dcc9ff11 Remove UDP transport API from ViE
Review URL: https://webrtc-codereview.appspot.com/1232004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3754 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-02 20:37:14 +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
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
pwestin@webrtc.org
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
andrew@webrtc.org
14b43beb7c Move src/ -> webrtc/
TBR=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2963 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-10-22 18:19:23 +00:00