Commit Graph

8673 Commits

Author SHA1 Message Date
122caa51b1 After an audio interruption the audio unit no longer invokes its render callback, which results in a loss of audio. Restarting the audio unit post interruption fixes the issue.
CL also replaces deprecated AudioSession calls with equivalent AVAudioSession ones.

BUG=3487
R=glaznev@webrtc.org, noahric@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6697 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 20:20:47 +00:00
42fe4350fe Remove Thread::RunningForChannelManager().
I haven't heard of this failing, so it should be safe to remove. Let me know if this isn't the case.

BUG=3388
R=andrew@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6695 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 17:52:43 +00:00
89fd1e8e99 Improvements to the pacer where it lost some budget due to truncation errors.
With this CL the resolution is increased to microseconds and proper rounding
is done in the Process() function. This means that we will be allowed to send
more than prior to r6664 as we previously truncated away parts of our budget.

We will also not lose budget due to inaccurate calculations in
TimeUntilNextProcess(), which was a regression in r6664.

BUG=cr/393950
TEST=out/Debug/webrtc_perf_tests --gtest_filter=RampUpTest.Simulcast
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6694 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 16:40:38 +00:00
376b4ea93f Fix breakage introduced by r6691.
ModuleRtpRtcpImpl returned incorrectly on RemoteNTP as the
RTCPReceiver::NTP changed return type.

BUG=
TBR=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6693 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 15:51:33 +00:00
2f4b14e3f3 Make RTCP sender report send media bytes.
r6654 changed RtpSender::Bytes() to return the number of bytes sent
instead of number of media bytes. This is used by VideoEngine for stats.
This change broke RTCP which sends this same count as the number of
payload bytes sent (excluding headers and padding).

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6691 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 15:25:39 +00:00
ffa8dcab1e Eliminate unnecessary #include
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6690 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 12:50:13 +00:00
324f63ca38 rtc::Fatal output: Print space between # and message
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6689 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 11:41:05 +00:00
bc73871251 Remove the VPM denoiser.
The VPM denoiser give bad results, is slow and has not been used in
practice. Instead we use the VP8 denoiser. Testing this denoiser takes
up a lot of runtime on linux_memcheck (about 4 minutes) which we can do
without.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6688 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 09:50:40 +00:00
92a9bacf9a Rebase webrtc/base with r6682 version of talk/base:
cls ported: r6671, r6672, r6679 (reverts and unreverts in r6680, r6682).
svn diff -r 6656:6682 http://webrtc.googlecode.com/svn/trunk/talk/base >
6682.diff
sed -i.bak "s/talk_base/rtc/g" 6682.diff
sed -i.bak "s/#ifdef WIN32/#if defined(WEBRTC_WIN)/g" 6682.diff
sed -i.bak "s/#if defined(WIN32)/#if defined(WEBRTC_WIN)/g" 6682.diff
patch -p0 -i 6682.diff

BUG=3379
TBR=tommi@webrtc.org,jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6683 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-14 22:03:57 +00:00
a4da771914 Fix deadlock in Android stopCapture() call.
BUG=3467
R=braveyao@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6673 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-14 17:01:53 +00:00
9bef551ba1 GN: Fix include paths for WebRTC in Chromium build.
Most WebRTC source files are using full paths for includes which
requires the root to be in the include path.

This is currently handled in the common_inherited_config config in
webrtc/BUILD.gn: the .. include_dir.

However, when built from Chromium, the include
paths are not inherited in the same way when building the all target.
Building the 'webrtc' target of Chrome works without the changes
in this CL, but the default target fails.

BUG=3441
TEST=Built the default target from a Chromium checkout with
https://codereview.chromium.org/321313006/ applied and
src/third_party/webrtc linked to the webrtc folder of the WebRTC
workspace.

R=brettw@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6670 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-13 09:02:54 +00:00
9e1acc8728 Fix bugs introduced by https://code.google.com/p/webrtc/source/detail?r=6667 .
A few places were relying on temporalIdx being signed. Fix to explicitly check
for kNoTemporalIdx.

TBR=pbos,stefan

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6669 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 20:33:39 +00:00
dd6780d85d Remove always-true expression.
TBR=pbos

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6668 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 19:34:54 +00:00
eec6ecdb1e Landing pkasting's webrtc fixes for MSVC level 4 warnings in WebRTC.
---

Fixes for re-enabling more MSVC level 4 warnings: webrtc/ edition

This contains fixes for the following sorts of issues:
* Possibly-uninitialized local variable
* Signedness mismatch
* Assignment inside conditional

This also contains a small number of other cleanups to nearby code. In
particular several warning-disables for MSVC are removed because they don't seem
to be necessary (either that warning is not enabled or the code does not trigger
it).

BUG=crbug.com/81439
TEST=none
R=henrika@webrtc.org, pkasting@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6667 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 19:09:59 +00:00
180e516bef Thread annotate RTCPSender.
Also fixes data races in RTCPSender::SetCSRCStatus() and
RTCPSender::SetStartTimestamp().

BUG=
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6666 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 15:36:26 +00:00
168f23faa5 Move pacer to fully use webrtc::Clock instead of webrtc::TickTime.
This required rewriting the send-side delay stats api to be callback based, as otherwise the SuspendBelowMinBitrate test started flaking much more frequently since it had lock order inversion problems.

R=pbos@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6664 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 13:44:02 +00:00
a1bfcad3a3 Cast payload types to int for logging.
uint8_t gets interpreted as char and printed as such, instead of being
printed in decimal, casting them to int allows us to read what payload
types are actually used without converting them from ASCII first.

BUG=chromium:390874
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6662 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 12:33:45 +00:00
fb2e7c22a0 Document that channels are stored contiguously in AudioBuffer
R=andrew@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6661 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 11:40:48 +00:00
d212ffcfc6 Remove unnecessary build message.
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6660 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 11:15:35 +00:00
4ef438e2de Remove the send-side cname getter APIs from voice and video engine.
These APIs aren't being used, and introduces deadlocks when using GetStats() in the new Call api. Having getters for cname at the send-side is pointless, as it's always the user who sets the cname.

R=henrika@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6659 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 09:55:30 +00:00
b614d0626f Rebase webrtc/base with r6655 version of talk/base:
cls to port: r6633,r6639 (there is no cl in between that affects base and all other talk/base cls took care of webrtc/base as well (see r6569, r6624)):
svn diff -r 6632:6639 http://webrtc.googlecode.com/svn/trunk/talk/base > 6655.diff
sed -i.bak "s/talk_base/rtc/g" 6655.diff
patch -p0 -i 6555.diff

BUG=3379
TBR=tommi@webrtc.org,jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6656 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 22:47:02 +00:00
72491b9a90 Count total bytes sent in RTPSender::Bytes().
Previously only media bytes were included, this adds header bytes and
padding bytes to the calculation.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6654 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 16:24:54 +00:00
0422100818 Fix data race in VCMTiming::ResetDecodeTime.
Also thread annotating class.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6653 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 15:25:37 +00:00
bd9c0920ec Skip encoding in fake VP8 encoder.
Broke memcheck, FakeEncoder::Encode doesn't produce valid VP8 frames.

BUG=3424
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6652 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 13:21:40 +00:00
7ae9108b60 Remove more unused tsan suppressions and fix call test passing the same decoder to multiple received streams.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6651 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 10:35:12 +00:00
91f1752f2d Support VP8 encoder settings in VideoSendStream.
Stop-gap solution to support VP8 codec settings in the new API until
encoder settings can be passed on to the VideoEncoder without requiring
explicit support for the codec.

BUG=3424
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6650 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 10:13:37 +00:00
8f1512140e Refactor registerable callbacks for FrameCountObserver from rtp_rtcp module into vie_channel.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6649 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 09:39:23 +00:00
5bde66e913 audio_processing: Updates aec_core_sse2.c with changes made to aec_common.h
The change of definitions moved to aec_common.h was done in CL17839005.

BUG=3131
TBR=kwiberg@webrtc.org
TESTED=builds locally

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6648 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 08:09:50 +00:00
555fc78f27 Neon version of SubbandCoherence()
The performance gain on a Nexus 7 reported by audioproc is ~1.4%

The output is NOT bit exact.  Any difference seen is +-1.

BUG=3131
R=bjornv@webrtc.org, cd@webrtc.org

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

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6647 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 08:03:11 +00:00
ac800c8004 Neon version of rftbsub_128()
The performance gain on a Nexus 7 reported by audioproc is ~4.5%

The output is bit exact.

BUG=3131
TESTED=trybots and manually
R=bjornv@webrtc.org, cd@webrtc.org

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

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6646 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 07:53:13 +00:00
5ac876bae0 Revert "Remove remains of WEBRTC_NO_STL." (rev 6641).
Reason breaks linux_memcheck.

TBR=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6645 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-10 07:41:59 +00:00
47d1c98a4e Remove remains of WEBRTC_NO_STL.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6641 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 20:18:28 +00:00
10ef8fe611 Create FullScreenChromeWindowDetector in DesktopConfigurationOptions::CreateDefault.
BUG=crbug/385294
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6640 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 19:41:32 +00:00
7af12be781 Thread annotations for vie_encoder.cc/.h
Review URL: https://webrtc-codereview.appspot.com/8739005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6638 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 14:46:31 +00:00
045a9b17da Remove unnecessary race suppressions copied from chromium.
And added suppressions to allow to run tests with gtest_parallel in which case some new races were showing up.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6635 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 11:44:34 +00:00
b8e9e44eac Add full stack test cases with a fake network pipe.
R=pbos@webrtc.org
BUG=1872

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6634 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 11:29:06 +00:00
b753762ce6 delay_estimator: Increases test coverage and makes input spectrum const
Noticed lack in tests verifying initial state is not left if we have zero input spectra. This CL adds such a test and change input spectra to const at affected places.

BUG=N/A
TESTED=trybots and manually
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6631 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-09 06:40:09 +00:00
12b4efefdd Implement a work around for Chrome full-screen tab switch on Mac.
Chrome creates a new window in full-screen and minimizes the old window when a tab is switched to full-screen.
We try to find the new window to continue capturing for window sharing.

BUG=crbug/385294
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6629 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 22:05:24 +00:00
e55641d4f7 Neon version of rftfsub_128()
The performance gain on a Nexus 7 reported by audioproc is ~3.3%

The output is bit exact.

BUG=3131
TESTED=trybots and manually on N7
R=bjornv@webrtc.org, cd@webrtc.org

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

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6628 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 21:12:23 +00:00
d11bec40b2 Refactor registerable callbacks for VideoBitrateObserver from rtp_rtcp module into vie_channel.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6626 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 14:32:58 +00:00
3d7da88e06 Refactor ramp-up tests to have separate help files for the test classes, to make things more reusable.
R=pbos@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6625 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 13:59:46 +00:00
ecb8723402 Change Timing::WallTimeNow to be static.
There's no need to construct a Timing object to call this method.
On Windows we were unnecessarily calling CreateWaitableTimer + CloseHandle but never actually using that waitable timer.

There's otherwise no change in functionality.

R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6624 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 12:48:29 +00:00
62bafae661 Some refactoring inside rtp_rtcp/.
Renaming ModuleRTPUtility -> RtpUtility.
Renaming RTPHeaderParser -> RtpHeaderParser.
Making RtpHeaderParser accept size_t instead of int for packet length.
Making RtpUtility::RtpHeaderParser accept size_t for packet length.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6623 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 12:10:51 +00:00
241a9b0b65 Fixing compile error.
Made a mistake in https://webrtc-codereview.appspot.com/13849004/,
fixing that here.

TBR=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6622 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 11:48:37 +00:00
22292df53b Adding explicit check for using dummy file devices.
Calling into the file device factory without being compiled with file
devices makes no sense and would cause hard-to-debug errors. Therefore
I'm adding an explicit check so this isn't allowed.

R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6621 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 11:39:19 +00:00
33d110d8ea Tight data race suppressions around thread_posix.
BUG=3372,3549
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6620 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 10:36:39 +00:00
af38f4e511 Extract RTP-header SSRC inline in Call.
Prevents unknown-RTP-header-extension warnings to be flooding from the
RTP-header parsing as there's no way to register RTP extensions for the
parser in Call as they're allowed to differ between RTP streams.

RTP-header parsing should instead be done separately in every
VideoReceiveStream.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6619 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 07:38:12 +00:00
3c637cdaa5 Clean data races from system_wrappers_unittests.
- Remove unittest_utilities that are not used.
 - Remove SetLevelFilter that does not seems necessary and anyhow was racy.

BUG=3549
R=henrike@webrtc.org, henrike

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6617 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 20:37:39 +00:00
285e9bc84d Fix potential deadlock in webrtc/system_wrappers/source/logging_unittest.cc.
crit_ should not be held while calling Trace.

BUG=3003
R=henrike@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6616 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 20:27:33 +00:00
5f2c81c17f webrtc/base: Fixes miss in base.gyp for windows. See https://code.google.com/p/webrtc/source/browse/trunk/talk/libjingle.gyp?r=6503#764 for the corresponding condition.
BUG=3379
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6615 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 17:42:45 +00:00