a6ad6e5b58
Add callbacks for send channel rtcp statistics
...
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4429004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5220 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-05 09:48:44 +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
3d9981d58a
Remove unused ThreadData struct.
...
TBR=bjornv
Review URL: https://webrtc-codereview.appspot.com/4949004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5216 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 17:13:47 +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
79b63206b9
Fixes a crash in fullstack tests introduced with r5209.
...
TBR=mflodman@webrtc.org
BUG=1812
Review URL: https://webrtc-codereview.appspot.com/4689005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5211 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 13:34:28 +00:00
b477fa6d21
Small fixes to plot_neteq_delay.m
...
Fixing problems with wrap-arounds and other small things. Adding an
extra output value.
Review URL: https://webrtc-codereview.appspot.com/4929004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5210 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 12:28:47 +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
9523b55826
Fix a typo in neteq.gypi
...
This CL is for NetEq3. The #define for iSAC-fb was wrong on one
line. It did not affect the defualt use case, but resulted in
errors if 48 kHz mode was enabled.
TBR=tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4909004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5208 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-04 08:24:49 +00:00
d7696c4ed1
Compile-out functions only used by the bit-exact test.
...
Causes errors on platforms where the test is unused.
TBR=bjornv
Review URL: https://webrtc-codereview.appspot.com/4869004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5207 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 23:39:16 +00:00
d3865e9124
Don't HANDLE_EINTR(close). Use IGNORE_EINTR(close).
...
It is incorrect to wrap close in HANDLE_EINTR on Linux.
BUG=chromium:269623
R=fischman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4759004
Patch from Mark Mentovai <mark@chromium.org >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5206 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 19:10:20 +00:00
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
499631c1e4
Utility class for reading/writing network-byte-ordered integers.
...
BUG=
R=holmer@google.com , mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2151008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5203 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 13:22:48 +00:00
37968a9be7
Change BitrateStats to more generalized RateStatistics
...
BUG=2656
R=holmer@google.com , mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4559004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5202 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 10:31:59 +00:00
5ecdef11cc
Do not use recursive calling in NetEq test tools
...
This CL removes recursive calling in:
- NETEQTEST_DummyRTPpacket::readFromFile,
- NETEQTEST_RTPpacket::readFromFile.
The files currently exist for both NetEq3 and NetEq4, and all are
changed with this CL.
R=turaj@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4699004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5200 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 08:26:49 +00:00
8418e9696b
Fixing NetEq tests for new Opus version
...
The new version of Opus doesn't generate the same number of bytes encoding the test vectors in audio_decoder_unittest. Therefore the test was updated not to check the length of the encoded packet, to prepare for the coming roll of Opus. Same change was applied to iSAC, which can also generate different number of bytes on different platforms.
BUG=1459
R=henrik.lundin@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4609004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5195 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-29 09:30:43 +00:00
bd41a84694
This CL adds an API to enable robust validation of delay estimates.
...
Added is
- a member variable for turning robust validation on and off.
- API to enable/disable feature.
- API to check if enabled.
- unit tests for these APIs.
Not added is
- the actual functionality (separate CL), hence turning feature on/off has no impact currently.
- calls in AEC and AEC, where the delay estimator is used. This is also done in a separate CL when we know if it should be turned on in both components.
TESTED=trybots, module_unittest
BUG=
R=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4609005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5191 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 14:58:35 +00:00
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
d1a1c353ac
Recommit CL5184
...
TBR=aluebs@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/4599004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5187 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 11:45:05 +00:00
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
82eb3a690e
Revert 5184 "Small refactoring change in delay_estimator."
...
> Small refactoring change in delay_estimator.
>
> This CL produce the bit exact output and is a preparing step for an upcoming robust validation scheme.
>
> TESTED=trybots, module_unittest
> BUG=None
> R=aluebs@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/4549004
TBR=bjornv@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4589004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5185 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 09:44:47 +00:00
eea079a376
Small refactoring change in delay_estimator.
...
This CL produce the bit exact output and is a preparing step for an upcoming robust validation scheme.
TESTED=trybots, module_unittest
BUG=None
R=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4549004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5184 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-28 07:59:04 +00:00
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
4070935f4f
Implement and test EncodedImageCallback in new ViE API.
...
R=mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4059004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5179 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-26 11:41:59 +00:00
d89b52af80
Faster implementation of BitRateStats.
...
Landing cl for hguihot.
At high bitrate, EraseOld() could account for a significant part of
the total CPU usage on certain platforms. The new implementation
eliminates per-packet memory allocations and records the number of
bytes in buckets (one bucket per millisecond in window).
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4269004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5175 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-25 17:49:28 +00:00
47fadba750
Add include stdlib.h to files using abs.
...
abs function is declared in stdlib.h
Committing for alextaran@chromium.org .
Reviewed here: http://review.webrtc.org/4239004/
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4349004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5170 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-25 12:03:56 +00:00
b5bc098e20
Clear empty video frames in unittest so DrMemory will allow them to be read without an uninitialized read error.
...
BUG=libyuv:263
TESTED=drmemory out\Debug\modules_unittests.exe --gtest_filter=*PreprocessorLogic
R=kjellander@webrtc.org , mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4319004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5168 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-25 09:06:33 +00:00
5272eb8d83
Don't register iSAC-swb and iSAC-fb in NetEqDecodingTest.
...
Android bots break due to r5164. This CL patches that issue.
BUG=
TEST=modules_unittests on local device.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4309004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5166 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-23 00:11:32 +00:00
e839da02c1
Fix MouseCursor to MouseCursorShape conversion in ScreenCapturerWin.
...
BUG=crbug.com/322596
R=dcaiafa@chromium.org , wez@chromium.org
Review URL: https://webrtc-codereview.appspot.com/4279005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5165 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-22 20:39:16 +00:00
78b41a09bd
Fix issues with sequence number wrap-around in jitter statistics.
...
Related CL for NetEq 3 is https://code.google.com/p/webrtc/source/detail?r=5150
Jitter statistics was not very sensitive to timestamp warp-around, and NetEqDecodingTest.TimestampWrap *DID NOT* fail before fixes applied. However, we still keep the test.
The criteria for the tests are not satisfied for first few packets, before any wrap-around happens. We could either relax the bound or ignore the first few packets. We chose the latter.
BUG=2662
TEST=modules_unittests,trybots
R=tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4219004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5164 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-22 20:27:07 +00:00
1e8c93c953
Distinguish instances of ACM1 from ACM2 by a version string. This is fpr testing purposes and will be removed when the experiment is done and ACM1 is fade out.
...
BUG=
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4069006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5161 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-22 17:04:49 +00:00
2ffb149c2c
Replace VideoFrameI420 with I420VideoFrame.
...
Gives one less struct/class for I420 video frames.
BUG=2657
R=mflodman@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4149004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5160 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-22 13:10:13 +00:00
b0ed8f8a08
Don't reset the AEC filter in extended mode.
...
I don't believe I've witnessed this "feature" ever provide a benefit,
and have now collected some evidence of its harm when using the
extended filter mode. It can cause erroneous resets in two cases:
1. Some preprocessing noise suppression is enabled in the system (i.e.
"audio enhancements") that push the noise floor very low, possibly to
zero. If the filter is non-zero this condition can be triggered very
easily, and erroneously.
2. Non-zero energy in the filter before the peak impulse response can
cause a slight (and harmless) "pre-echo" in the error signal. This
becomes more significant as the peak is set further back in the filter.
This effect can cause needless resets during echo onsets.
In short, this isn't a great criterion for filter reset and has the
potential to cause serious harm. Ideally we would remove it entirely,
but in the interests of safety, can start with the extended mode.
BUG=1261
R=aluebs@webrtc.org , bjornv@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3959004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5159 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-22 06:39:42 +00:00
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
ffe1b17b57
Lock access to ModuleRtpRtcpImpl::simulcast_.
...
Fixes race between RegisterSendPayload and SendOutgoingData.
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4099006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5152 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 13:53:13 +00:00
6f6ba6edee
Fix issues with sequence number wrap-around in jitter statistics
...
Wrap-arounds in sequence numbers (and in timestamps) were not always
treated correctly. This is fixed by introducing two helper functions
for correct comparisons, and by casting to the right word size.
Also added a new member variable to AutomodeInst_t. The new member keeps
track of when the first packet has been registered in the automode code.
This was previously done implicitly (and not very good) using the fact
that the lastSeqNo and lastTimestamp members were initialized to zero.
Two new unit tests were added as part of this CL.
NetEqDecodingTest.SequenceNumberWrap was failing before the fixes were
made; now it is ok.
BUG=2654
R=tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/4139004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5150 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 13:17:29 +00:00
8d02f5dc71
Added API for enabling/disabling RTCP Receiver Reference Time extension.
...
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3419005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5147 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-21 08:57:04 +00:00
a750044396
Fixes a crash in VoE when unregistering JNI hooks.
...
BUG=11695087
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3939004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5144 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 22:32:12 +00:00
1ae1d0c471
Add possibility to get the last processed RTT from the call stats class (to be used by RTP/RTCP module).
...
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2383004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5139 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 12:46:11 +00:00
0b72f5863b
Add experimental noise suppression dummy API.
...
Add this flag to the voe_cmd_test.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3879004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5134 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-19 15:17:51 +00:00
5d85819dd2
Fix DesktopAndCursorComposer to restore frames to the original state.
...
Screen capturers may reuse frame buffers and they expect that the
frame content isn't changed by the frame consumer.
DesktopAndCursorComposer draws mouse cursor on generated frames and
it was releasing the frames with the mouse cursor on them. Fixed
it to restore frame content erasing mouse cursor before returning
desktop frames.
BUG=crbug.com/316297
R=wez@chromium.org
Review URL: https://webrtc-codereview.appspot.com/3899004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5133 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-19 02:15:47 +00:00
7a05ae5c69
Adding back main() to the test. Now it is possible to choose between ACM1 and ACM2, furthermore, the test can simulate a channel with packet loss and FEC can be activated. Packet loss pattern is based on channel implementation in Channel{.cc,.h}, which currently is a determenistic pattern with 1 every 3rd packet is discarded.
...
The main() was deleted in r4731.
BUG=
R=andrew@webrtc.org , minyue@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2370004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5132 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 18:16:53 +00:00
ce8e0936d9
Rename AutoMute to SuspendBelowMinBitrate
...
Changes all instances throughout the WebRTC stack.
BUG=2436
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3919004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5130 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 12:18:43 +00:00
b082ade3db
Hook up audio/video sync to Call.
...
Adds an end-to-end audio/video sync test.
BUG=2530, 2608
TEST=trybots
R=henrika@webrtc.org , mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3699004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5128 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 11:45:11 +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
e8433eb115
Reimplementing NetEq4's AudioVector
...
The current implementation using std::vector is too slow.
This CL introduces a new implementation, using a regular
array as data container.
In AudioMultiVector::ReadInterleavedFromIndex, a special case for
1 channel was implemented, to further reduce runtime. Finally,
AudioMultiVector::Channels was reimplemented.
The changes in this CL reduces the runtime of neteq4_speed_test
by 33%.
BUG=1363
R=turaj@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3509004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5115 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-12 13:15:02 +00:00
38599510df
Parse next RTCP XR report block after an unsupported block type.
...
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2649004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5114 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-12 08:08:26 +00:00
3e427263ee
Reducing opus_test runtime to pass Android test
...
BUG=2609
R=solenberg@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3639004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5111 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-11 22:03:52 +00:00
e03cafaebc
MIPS optimizations for AECM audio processing module
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2279005
Patch from Ljubomir Papuga <lpapuga@mips.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5110 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-11 20:10:01 +00:00
b0730108a2
Move audio_processing dependencies to a variable.
...
R=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3679004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5108 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-11 17:20:27 +00:00