32 Commits

Author SHA1 Message Date
stefan@webrtc.org
946ad76f7e Switched lists of packets to lists of packet pointers. Allows Packet polymorphism.
This allows for different packet types in a follow-up CL, so that feedback can be passed through the network instead being fed directly into senders. It also made the whole simulator faster.

BUG=4173
R=pbos@webrtc.org, sprang@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8227}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8227 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-02 14:51:45 +00:00
stefan@webrtc.org
f88bee6d88 Refactor senders into senders and sources in the simulation framework.
BUG=4173
R=sprang@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8218}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8218 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-30 14:37:09 +00:00
stefan@webrtc.org
73ee4537be Switch to use range based loops in the BWE simulation framework.
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8135 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-23 08:29:52 +00:00
stefan@webrtc.org
e5251ad63c Integrate send-side BWE into simulation framework.
BUG=4173
R=mflodman@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8123 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-22 10:10:53 +00:00
stefan@webrtc.org
387841ac5c Improved fairness simulation by starting the flows 20 seconds apart.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8062 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 16:45:29 +00:00
pkasting@chromium.org
0b1534c52e Use int64_t for milliseconds more often, primarily for TimeUntilNextProcess.
This fixes a variety of MSVC warnings about value truncations when implicitly
storing the 64-bit values we get back from e.g. TimeTicks in 32-bit objects, and
removes the need for a number of explicit casts.

This also moves a number of constants so they're declared right where they're used, which is easier to read and maintain, and makes some of them of integral type rather than using the "enum hack".

BUG=chromium:81439
TEST=none
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7905 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 22:09:40 +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
stefan@webrtc.org
82462aade0 Adds support for sending first set of packets at increasingly higher bitrates to probe the link and faster ramp up to a high bitrate.
Also wires up a finch experiment to control this.

R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7505 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-23 11:57:05 +00:00
kjellander@webrtc.org
3c0aae17f0 Change gflags and gmock includes to be full paths.
This will fix PRESUBMIT warnings developers will get due to
r7014 and r7020.

Also some minor style cleanup in:
webrtc/modules/audio_coding/main/test/RTPFile.cc
webrtc/modules/audio_coding/neteq/test/RTPjitter.cc

BUG=
R=henrik.lundin@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7058 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-04 09:55:40 +00:00
stefan@webrtc.org
bee164a214 Fix test issues and a win compile error introduced with r6605.
Also changes the name of a variable which has been hijacked by windef.h (included by windows.h), which forces #define near and #define far upon us. This issue was introduced via the following inclusion chain:
bwe_test_framework_unittest.cc includes
  paced_sender.h
    tick_util.h
      windows.h
        windef.h

And causes EXPECT_NEAR(foo, bar, near); to expand to EXPECT_NEAR(foo, bar,); generating a very confusing compile error.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6606 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04 17:00:06 +00:00
stefan@webrtc.org
88e0dda475 Introduces PacedVideoSender to test framework and moves the Pacer to use Clock.
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6600 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04 09:20:42 +00:00
henrike@webrtc.org
88fbb2d86b Switch to using base/constructormagic.h and remove system_wrappers/interface/constructor_magic.h.
Same as https://webrtc-codereview.appspot.com/19519004. The issue in
http://chromegw.corp.google.com/i/internal.chromium.webrtc.fyi/builders/Linux...
is solved by this change
http://src.chromium.org/viewvc/chrome/trunk/src/third_party/libjingle/libjing...
(tested locally).

BUG=3380
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6218 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-21 21:18:46 +00:00
mcasas@webrtc.org
2fa7f79094 Revert 6202 "Switch to using base/constructormagic.h and remove ..."
> Switch to using base/constructormagic.h and remove system_wrappers/interface/constructor_magic.h.
> 
> BUG=N/A
> R=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/19519004

TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6210 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-21 11:07:29 +00:00
henrike@webrtc.org
125ffd709d Switch to using base/constructormagic.h and remove system_wrappers/interface/constructor_magic.h.
BUG=N/A
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6202 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-20 15:20:44 +00:00
stefan@webrtc.org
dfe2a1c995 Adding BweFeedbackTest which tracks BWE performance over a set of simulated scenarios.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6015 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-29 14:21:42 +00:00
stefan@webrtc.org
4f616a02bd Support for simulating multiple independent flows in a network.
R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5980 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-25 10:59:24 +00:00
kjellander@webrtc.org
7de47bce12 Remove use of tmpnam.
This solves compilation with the Mac SDK 10.9.

BUG=3120, 3151
TEST=git try -t modules_tests:VideoProcessorIntegrationTest*
R=fischman@webrtc.org, henrike@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5917 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-16 08:04:26 +00:00
stefan@webrtc.org
f8f7c8b618 Added simulations of capacity variations and wifi recordings.
Also changes the packet sizes for the video sender and the trace based filter to match.

R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5824 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 14:00:05 +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
stefan@webrtc.org
af839b28b0 Add AIMD option to BWE API.
TEST=trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5755 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 09:42:08 +00:00
stefan@webrtc.org
41689018a0 Add max delay to trace based filters and enhances drop tail queues with delay statistics.
R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5696 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-13 15:01:32 +00:00
pbos@webrtc.org
3ecc162d01 Remove std:: prefixes from C functions in webrtc/.
std::memcpy -> memcpy for instance. This change was motivated by a
compile report complaining that std::rand() was used instead of rand(),
probably with a stdlib.h include instead of cstdlib. Use of C functions
without the std:: prefix is a lot more common, so removing std:: to
address this.

BUG=
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5658 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-07 15:23:34 +00:00
stefan@webrtc.org
45846977f9 Fixes a bug in the simulation framework where the time offset is accumulating as the packet trace is repeated, causing increasingly large gaps with no packets being transmitted.
R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5650 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-06 15:46:46 +00:00
stefan@webrtc.org
77c917a6ee Plot the capacity of a trace-based delivery filter.
Breaks out the instantaneous rate counters to its own class.

R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5494 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-06 16:34:47 +00:00
stefan@webrtc.org
c88d3368d5 Add delay and send/receive throughput plots to BWE simulation.
R=mflodman@webrtc.org, solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5491 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-05 15:57:14 +00:00
stefan@webrtc.org
422fdbf502 Wire up feedback to VideoSender.
BUG=
R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5474 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-03 16:33:50 +00:00
stefan@webrtc.org
99a8c7e039 Add trace-based delivery filter to BWE test framework.
R=mflodman@webrtc.org, solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5423 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-24 10:00:27 +00:00
henrik.lundin@webrtc.org
e9abd591d7 Making RemoteRateControl::min_configured_bit_rate_ configurable
The minimum bitrate can now be configured from WrappingBitrateEstimator.

BUG=2698
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5279 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-13 08:42:42 +00:00
solenberg@webrtc.org
812dd11f8c Add baseline generation/verification to BWE test framework.
Updating resource file separately, once LGTM. Generates ~628k of files for current tests, highly compressable, once/if we need that.

BUG=
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5204 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 15:11:14 +00:00
solenberg@webrtc.org
c8f76ddc19 Refactor Remote Estimators Test into a more reusable form.
BUG=
R=andresp@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5186 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 10:11:35 +00:00
solenberg@webrtc.org
dce70ccb0b Add delay limit to ChokeFilter.
BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5058 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-30 19:18:07 +00:00
solenberg@webrtc.org
d6e46638ec Logging for BWE test framework.
BUG=
R=stefan@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5055 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-30 16:06:26 +00:00