a4c5abb52a
Make sure padding packets are sent.
...
BUG=1837
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1717006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4260 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-25 15:46:16 +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
508a84b255
Wire up pacer-based padding.
...
This connects the pacer-based padding with the RTP modules, which will
generate padding packets roughly according to what the pacer suggests.
It will only generate padding packets of maximum size to keep the number
off padding packets as small as possible. This also sets a limit of how much
padding + media bitrate which the pacer is allowed to "request" from the
RTP modules.
Padding will for now only be generated by the first sending RTP module.
BUG=1837
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1612005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4234 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-17 12:53:37 +00:00
63e988856e
Merge more tests into modules_{unit,integration}tests.
...
A new test target named 'modules_integrationtests' is created
and the following test targets were merged into it:
* audio_coding_module_test
* test_fec
* video_coding_integrationtests
* vp8_integrationtests
A couple of other targets were merged into modules_unittests:
* audio_coding_unittests
* audioproc_unittest
* common_unittests
* video_coding_unittests
* video_processing_unittests
* vp8_unittests
I wasn't able to merge audio_decoder_unittests and neteq_unittests due to
conflicts with different defines in these tests.
Some tests that have special requirements aren't merged into
modules_integrationtests yet. I took the opportunity to rename them
since the bot configs will need to be update anyway:
* audio_device_test_api -> audio_device_integrationtests
* video_capture_module_test -> video_capture_integrationtests
* video_render_module_test -> video_render_integrationtests
Exclude files were added for modules_integrationtests to make sure
the memcheck and tsan bots doesn't tests that are too slow
(audio_coding_module_test and vp8_integrationtests were previously
disabled on those bots).
Suppressions for AudioCodingModuleTest needed to be added to get
modules_integrationtests to pass memcheck (even if the test is
excluded from execution).
BUG=1843
TEST=local execution on Linux and trybots (passing except the merged tests of course)
R=andrew@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1656004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4228 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-14 20:09:44 +00:00
04996cd5e5
Fix breakage due to test_fec conversion to gtest.
...
In my attempt to commit a subset of http://review.webrtc.org/1647005/
instead of all of it, I forgot to add the gtest dependency to the
test_fec.gypi. This CL fixes that.
TEST=local compile + win_rel,mac_rel,linux_rel trybots
BUG=1916
R=marpan
TBR=marpan
Review URL: https://webrtc-codereview.appspot.com/1655004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4219 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 12:15:33 +00:00
22bbbdfa68
Convert test_fec to gtest
...
All tests needs to be gtest tests in order to be executed
with the upcoming isolate/swarm framework.
TEST=trybots passing
BUG=1916
R=andrew@webrtc.org , marpan@google.com
Review URL: https://webrtc-codereview.appspot.com/1647005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4218 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 11:55:05 +00:00
6c35e0b0f7
Reorganize test targets in WebRTC
...
This CL will lower the number of test targets in WebRTC by:
Add common_audio_unittests and merge the following targets into it (copied from http://review.webrtc.org/1584006 ):
* resampler_unittests
* signal_processing_unittests
* vad_unittests
Merge into modules_unittests:
* bitrate_controller_unittests
* desktop_capture_unittests
* media_file_unittests
* remote_bitrate_estimator_unittests
* rtp_rtcp_unittests
* paced_sender_unittests
Merge into test_support_unittests:
* channel_transport_unittests
channel_transport.gyp was also removed in favor for test.gyp.
I had to remove a main method from rtcp_format_remb_unittest.cc
since it caused the fileutils.h code to not be able to find the
right project root path in ordrer to provide correct paths
to test files.
Buildbot configuration update will be synced with the commit of this CL.
TEST=trybots
BUG=1843
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1639004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4213 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-11 08:29:17 +00:00
a817962bab
Refactor padding and rtp header functionality.
...
BUG=1837
R=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1611004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4172 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 13:47:36 +00:00
fa64a595ad
Change SetRTPAudioLevelIndicationStatus to ignore the id in the case of disabling.
...
This makes it easier for the users of the interface, i.e. doesn't need to remember the id in order to disable audio level indication later.
BUG=1828
TEST=unit tests
R=henrika@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1598005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4157 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 21:27:57 +00:00
a048d7cb0a
Include files from webrtc/.. paths in rtp_rtcp/
...
BUG=1662
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1557004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4135 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 14:27:38 +00:00
a5cb98cbbd
Breaking out RTP header parsing from the RTP module.
...
This is the first step in order to move bandwidth estimation closer to the network. The goal is to have RTP header parsing and bandwidth estimation before voice and video engine, and have a joint estimate for audio and video.
Moving bandwidth estimation before the RTP module is also required for RTX.
TEST=vie_auto_test, voe_auto_test, trybots.
BUG=1811
R=andresp@webrtc.org , henrika@webrtc.org , mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1545004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4129 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 12:12:51 +00:00
a6ae644e52
Add comment about test_packet_masks_metrics.
...
R=andrew@webrtc.org , kjellander@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1577004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4124 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 17:42:12 +00:00
8665da8926
Remove dead testRateControl.cc
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1556004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4101 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-24 13:29:29 +00:00
a01f7f6509
Removed dead testH263Parser.cc
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1555004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4100 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-24 13:01:57 +00:00
c1f0eb2c03
Remove dead bitstreamTest.cc.
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1553004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4099 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-24 12:46:08 +00:00
c74c3c2447
Adds integration test for RTX and fixes bugs found.
...
BUG=1811
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1529004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4096 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-23 13:48:22 +00:00
5c58f63d3f
Fix regression where retransmission bitrate is no longer estimated.
...
BUG=1813
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1530004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4095 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-23 13:36:55 +00:00
c0352d566a
Fix assertions in rtp_header_extension.h caused by not handling the AudioLevel extension. Added unit tests to do basic checks of the AudioLevel extension.
...
BUG=
R=asapersson@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1510004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4069 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-20 20:55:07 +00:00
9919ad5caf
Formatted FEC stuff.
...
Unfortunately I had to pull in quite a bit of stuff due to use of unencapsulated public member variables.
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1401004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4047 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 15:06:28 +00:00
7ebbea14a9
Add handling of the absolute send time header extension to the rtp_rtcp module.
...
BUG=
R=asapersson@webrtc.org , stefan@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1480004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4041 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 11:10:31 +00:00
6cfa3907c8
Updating NACK RTX test
...
BUG=1513
R=holmer@google.com , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1274006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4036 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-15 20:17:43 +00:00
29b2219914
Adding a factory to remote bitrate estimator and allow it to be set via config.
...
Additionally:
- clean api to set remote bitrate estimator mode.
- clean api to set over use detector options.
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1448006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4027 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 12:10:58 +00:00
527f6c62fc
Reformatted FEC tables.
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1400004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4020 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 09:25:01 +00:00
7bfb3a3227
Add more tracing for key frames.
...
R=mallinath@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1428004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4015 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-13 22:59:00 +00:00
315d39866e
Formatted dtmf_queue.
...
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1398004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3982 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-08 10:04:06 +00:00
3004c79c6a
Fix clang errors in non-GYP_DEFINES=clang=1 build
...
BUG=1623
R=stefan@webrtc.org , tina.legrand@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1368004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3968 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-07 12:36:21 +00:00
77f6b2175e
Revert 3934 "Revert 3933 "Remove traces of deprecated WebRtc_Wor..."
...
> Revert 3933 "Remove traces of deprecated WebRtc_Word types."
>
> > Remove traces of deprecated WebRtc_Word types.
> >
> > BUG=314
> > R=tommi@webrtc.org
> >
> > Review URL: https://webrtc-codereview.appspot.com/1385004
>
> TBR=pbos@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/1386004
TBR=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1397004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3948 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-03 12:02:11 +00:00
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
68e5a68f07
Revert 3933 "Remove traces of deprecated WebRtc_Word types."
...
> Remove traces of deprecated WebRtc_Word types.
>
> BUG=314
> R=tommi@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/1385004
TBR=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1386004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3934 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 09:30:12 +00:00
265a5d298a
Remove traces of deprecated WebRtc_Word types.
...
BUG=314
R=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1385004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3933 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 09:11:20 +00:00
b0061f94b2
Enable Nack pacing.
...
Review URL: https://webrtc-codereview.appspot.com/1357004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3912 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-27 00:41:08 +00:00
8ca8a71de2
Revert "Add a default RTT to CallStats and use different values for buffered/real-time mode."
...
This reverts commit aae26db1da5803482b094357c546b8454ab1c26d.
BUG=1613
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1327008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3890 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 16:48:32 +00:00
ccd4b2aec8
Add a default RTT to CallStats and use different values for buffered/real-time mode.
...
BUG=1613
Review URL: https://webrtc-codereview.appspot.com/1326007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3888 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 15:58:23 +00:00
6e788df19e
Remove vim/emacs modelines from .gypi files
...
BUG=1655
Review URL: https://webrtc-codereview.appspot.com/1326005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3857 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 12:40:34 +00:00
9f5ebb5251
Adding a payload type for RTX.
...
BUG=736
TEST=Modified RTP unittests.
Review URL: https://webrtc-codereview.appspot.com/1278004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3843 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-12 14:55:46 +00:00
b8e7f4cc97
Change capture interface to use NTP capture time.
...
Move NTP functionality to Clock.
BUG=1563
TEST=trybots and vie_auto_test --automated
Review URL: https://webrtc-codereview.appspot.com/1313005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3842 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-12 11:56:23 +00:00
7bc465bd21
Fix issues with incorrect wrap checks when having big buffers and high bitrate.
...
Introduces shared functions for timestamp and sequence number wrap checks.
BUG=1607
TESTS=trybots
Review URL: https://webrtc-codereview.appspot.com/1291005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3833 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 17:48:02 +00:00
523f93729b
Re-write the build of the nacklist.
...
Review URL: https://webrtc-codereview.appspot.com/1304008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3822 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 11:30:39 +00:00
ab9202b673
Removing remaining WebRtc_Word32 not in typedefs.h
...
BUG=
Review URL: https://webrtc-codereview.appspot.com/1306006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3813 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 17:59:17 +00:00
806dc3b0e6
More trace events
...
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.
BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00
7da3459b2a
Revert "With these changes we will assume that the capture time of a frame is based on NTP time. This makes the interface of video engine more well defined and makes it easier and cleaner to handle user provided capture timestamps."
...
This reverts commit 4954b3650192d78037714138a5c519ef08f2670e.
Reverts r3799
TBR=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1308004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3802 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 14:56:29 +00:00
afcc6101d0
With these changes we will assume that the capture time of a frame is based on NTP time. This makes the interface of video engine more well defined and makes it easier and cleaner to handle user provided capture timestamps.
...
We should consider making the same change to the render timestamps generated at the receiver.
BUG=1563
Review URL: https://webrtc-codereview.appspot.com/1283005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3799 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 13:37:40 +00:00
2f44673d66
WebRtc_Word32 => int32_t for rtp_rtcp/
...
BUG=314
Review URL: https://webrtc-codereview.appspot.com/1279007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3777 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-08 11:08:41 +00:00
19da719a5f
Resolves TSan v2 reports data races in voe_auto_test.
...
--- Note that I will add more fixes to this CL ---
BUG=1590
Review URL: https://webrtc-codereview.appspot.com/1286005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3770 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-05 14:34:57 +00:00
b5bf54c4e7
Permit arbitrary payload names for kVideoCodecGeneric.
...
BUG=1575
Review URL: https://webrtc-codereview.appspot.com/1282005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3768 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-05 13:27:38 +00:00
79b0289bfc
Adds event traces and counters for WebRTC receive side.
...
Review URL: https://webrtc-codereview.appspot.com/1279005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3766 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 19:43:34 +00:00
e1a7193869
Fix flakiness in network up/down event tests when running under memcheck.
...
TBR=pwestin@webrtc.org
BUG=1524
Review URL: https://webrtc-codereview.appspot.com/1261005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3732 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 17:01:48 +00:00
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
d8a6e72057
Fix potential buffer overrun when checking if a packet is RTCP. Also makes validation slightly more robust.
...
BUG=
Review URL: https://webrtc-codereview.appspot.com/1232005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3726 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-26 14:02:30 +00:00