4813 Commits

Author SHA1 Message Date
deadbeef
2b5586774c Exposing DTLS transport state from TransportChannel.
This is necessary in order to support the RTCPeerConnectionState enum in
the future, as well as a correct RTCIceConnectionState (which isn't a
combination ICE and DTLS state).

Review URL: https://codereview.webrtc.org/1414363002

Cr-Commit-Position: refs/heads/master@{#10419}
2015-10-27 00:23:34 +00:00
guoweis
b0bb77fd61 Reland of Add experiment on weak ping delay during call set up time (patchset #1 id:1 of https://codereview.webrtc.org/1416773003/ )
Reason for revert:
https://codereview.chromium.org/1419253002 is landed to address this linker issue. Keep my fingers crossed.

Original issue's description:
> Revert of Add experiment on weak ping delay during call set up time (patchset #4 id:60001 of https://codereview.webrtc.org/1411883002/ )
>
> Reason for revert:
> This CL breaks Chromium, undefined reference link error to webrtc::field_trial::FindFullName. Adding the dependency system_wrappers to the rtc_p2p target is not enough to fix this.
>
> Looking at field_trial.h (in system_wrappers/interface/, not to be confused with the one in test/) the documentation says "WebRTC clients MUST provide an implementation of: ...FindFullName... Or link with a default one provided in: ...system_wrappers.gyp:field_trial_default).
>
> So maybe just depend on field_trial_default? Not sure what should be done in case there are implications to adding this dependency, I'm reverting this. Sorry :)
>
> Original issue's description:
> > Add experiment on weak ping delay during call set up time
> >
> > BUG=
> > R=pthatcher@webrtc.org
> >
> > Committed: https://crrev.com/3bf69b15f4c0c0ca4ab17c237084684a37bb8279
> > Cr-Commit-Position: refs/heads/master@{#10343}
>
> TBR=pthatcher@webrtc.org,juberti@webrtc.org,guoweis@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=
>

TBR=pthatcher@webrtc.org,juberti@webrtc.org,hbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.webrtc.org/1413603005

Cr-Commit-Position: refs/heads/master@{#10418}
2015-10-26 22:10:06 +00:00
deadbeef
8f46c63f6f Revert of Adding the ability to create an RtpSender without a track. (patchset #8 id:140001 of https://codereview.webrtc.org/1413713003/ )
Reason for revert:
Causing a compiler warning, and causing WebRtcBrowserTest.CallAndModifyStream to fail.

Original issue's description:
> Adding the ability to create an RtpSender without a track.
>
> This CL also changes AddStream to immediately create a sender, rather
> than waiting until the track is seen in SDP. And the PeerConnection now
> builds the list of "send streams" from the list of senders, rather than
> the collection of local media streams.
>
> Committed: https://crrev.com/ac9d92ccbe2b29590c53f702e11dc625820480d5
> Cr-Commit-Position: refs/heads/master@{#10414}

TBR=pthatcher@webrtc.org,pthatcher@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.webrtc.org/1426443007

Cr-Commit-Position: refs/heads/master@{#10417}
2015-10-26 21:11:25 +00:00
Karl Wiberg
e2a83eee73 Introduce rtc::ArrayView<T>, which keeps track of an array that it doesn't own
The main intended use case is as a function argument, replacing the
harder-to-read and harder-to-use separate pointer and size arguments.
It's easier to read because it's just one argument instead of two, and
with clearly defined semantics; it's easier to use because it has
iterators, and will automatically figure out the size of arrays.

BUG=webrtc:5028
R=andrew@webrtc.org, solenberg@webrtc.org

Review URL: https://codereview.webrtc.org/1408403002 .

Cr-Commit-Position: refs/heads/master@{#10415}
2015-10-26 18:51:42 +00:00
deadbeef
ac9d92ccbe Adding the ability to create an RtpSender without a track.
This CL also changes AddStream to immediately create a sender, rather
than waiting until the track is seen in SDP. And the PeerConnection now
builds the list of "send streams" from the list of senders, rather than
the collection of local media streams.

Review URL: https://codereview.webrtc.org/1413713003

Cr-Commit-Position: refs/heads/master@{#10414}
2015-10-26 18:48:26 +00:00
Peter Boström
65e7d4cf20 Remove CanCreateAndDestroyManyVideoStreams.
This test was used to verify that VideoEngine handles were handed back
correctly. This is no longer applicable.

BUG=webrtc:1695
R=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1425673002 .

Cr-Commit-Position: refs/heads/master@{#10412}
2015-10-26 16:39:43 +00:00
Henrik Kjellander
c4ef1439f6 Revert "Add GN Build file for rtc_sound target."
This reverts commit f054819e257a4f9cbb7fa82ba51dc2335f4359ec,
2d3747de9b7c3014e106d3766dc07cf5da3e1881 and
7ef0553c85c5b373535d7f6161e9a6d3b5b9a826.
It seems harder than expected to get a GN build for rtc_sound
and we lack sufficient trybot support for the case where
WebRTC is built as part of Chromium.

The Debug builds failed like this:
[6939/7454] SOLINK ./libcontent.so
FAILED: ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -B../../third_party/binutils/Linux_x64/Release/bin -fuse-ld=gold -Wl,--icf=all -pthread -m64 -Wl,--export-dynamic -o ./libcontent.so -Wl,-soname=libcontent.so @./libcontent.so.rsp && { readelf -d ./libcontent.so | grep SONAME ; nm -gD -f p ./libcontent.so | cut -f1-2 -d' '; } > ./libcontent.so.tmp && if ! cmp -s ./libcontent.so.tmp ./libcontent.so.TOC; then mv ./libcontent.so.tmp ./libcontent.so.TOC; fi
../../third_party/webrtc/sound/alsasoundsystem.cc:453: error: undefined reference to 'rtc::LateBindingSymbolTable::Load()'
../../third_party/webrtc/base/latebindingsymboltable.h.def:62: error: undefined reference to 'rtc::LateBindingSymbolTable::IsLoaded() const'
../../third_party/webrtc/base/latebindingsymboltable.h.def:62: error: undefined reference to 'rtc::LateBindingSymbolTable::IsLoaded() const'
../../third_party/webrtc/base/latebindingsymboltable.h.def:62: error: undefined reference to 'rtc::LateBindingSymbolTable::IsLoaded() const'
../../third_party/webrtc/base/latebindingsymboltable.h.def:62: error: undefined reference to 'rtc::LateBindingSymbolTable::IsLoaded() const'
../../third_party/webrtc/base/latebindingsymboltable.cc.def:63: error: undefined reference to 'rtc::LateBindingSymbolTable::LateBindingSymbolTable(rtc::LateBindingSymbolTable::TableInfo const*, void**)'
../../third_party/webrtc/base/latebindingsymboltable.cc.def:65: error: undefined reference to 'rtc::LateBindingSymbolTable::~LateBindingSymbolTable()'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

BUG=webrtc:4160
TBR=tfarina@chromium.org

Review URL: https://codereview.webrtc.org/1407893005 .

Cr-Commit-Position: refs/heads/master@{#10411}
2015-10-26 16:39:21 +00:00
mflodman
717432f130 Remove network_enabled_crit_ in call.cc.
After #10321 (5a289393928c18af580c6339ba77600fb67006e2) I don't see that
we still need this lock.

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

Review URL: https://codereview.webrtc.org/1409193003 .

Cr-Commit-Position: refs/heads/master@{#10410}
2015-10-26 15:34:58 +00:00
Marco
09b38f3ca0 Re-enable VP9 resize test.
TBR=stefan@webrtc.org
BUG=webrtc:5097

Review URL: https://codereview.webrtc.org/1409143005 .

Cr-Commit-Position: refs/heads/master@{#10409}
2015-10-26 15:22:41 +00:00
tfarina
7ef0553c85 Fix for Win GN Build.
This changes it to inherit common configuration, in order to LOG() macro
take effect (hopefully).

This should fix the following errors:
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc.exe "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86/cl.exe" /nologo /showIncludes /FC @obj/third_party/webrtc/sound/rtc_sound/nullsoundsystem.obj.rsp /c ../../third_party/webrtc/sound/nullsoundsystem.cc /Foobj/third_party/webrtc/sound/rtc_sound/nullsoundsystem.obj /Fdobj/third_party/webrtc/sound/rtc_sound_cc.pdb
e:\b\build\slave\win_gn\build\src\third_party\webrtc\sound\nullsoundsystem.cc(78) : error C3861: 'LOG': identifier not found
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc.exe "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86/cl.exe" /nologo /showIncludes /FC @obj/third_party/webrtc/sound/rtc_sound/platformsoundsystemfactory.obj.rsp /c ../../third_party/webrtc/sound/platformsoundsystemfactory.cc /Foobj/third_party/webrtc/sound/rtc_sound/platformsoundsystemfactory.obj /Fdobj/third_party/webrtc/sound/rtc_sound_cc.pdb
e:\b\build\slave\win_gn\build\src\third_party\webrtc\sound\platformsoundsystemfactory.cc(29) : error C3861: 'LOG': identifier not found
ninja: build stopped: subcommand failed.

BUG=webrtc:4160
R=kjellander@webrtc.org
NOTRY=True

Review URL: https://codereview.webrtc.org/1419413002

Cr-Commit-Position: refs/heads/master@{#10408}
2015-10-26 13:48:11 +00:00
tfarina
2d3747de9b Fix for Mac GN BUILD.
It can't find //webrtc/base:rtc_base, which is weird, the fix is to use
a relative path.

This should fix the following error:

ERROR at //third_party/webrtc/sound/BUILD.gn:38:5: Can't load input
file.
    "//webrtc/base:rtc_base",
    ^-----------------------

NOTRY=true
BUG=webrtc:4160
TBR=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/1419953003

Cr-Commit-Position: refs/heads/master@{#10407}
2015-10-26 12:47:41 +00:00
henrik.lundin
e9eca8f5ae Removing AudioCoding class, a.k.a the new ACM API
We have decided not to do a switch from old (AudioCodingModule) to new
(AudioCoding) API. Instead, we will gradually evolve the old API to
meet the new design goals.

As a consequence of this decision, the AudioCoding and AudioCodingImpl
classes are deleted. Also removing associated unit test sources. No
test coverage is lost with this operation, since the tests for the
"old" API are testing more than the deleted tests did.

BUG=webrtc:3520

Review URL: https://codereview.webrtc.org/1415163002

Cr-Commit-Position: refs/heads/master@{#10406}
2015-10-26 12:26:45 +00:00
tfarina
f054819e25 Add GN Build file for rtc_sound target.
Tested on Linux with the following command lines:

$ gn gen out-gn/Release --args='is_debug=false target_cpu="x64"
build_with_chromium=false'
$ ninja -C out-gn/Release rtc_sound

BUG=webrtc:4160
R=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/1425583002

Cr-Commit-Position: refs/heads/master@{#10405}
2015-10-26 12:15:33 +00:00
Peter Boström
415d2cd745 Use webrtc/base/logging.h for video.
BUG=webrtc:5118
R=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1415413004 .

Cr-Commit-Position: refs/heads/master@{#10403}
2015-10-26 10:35:26 +00:00
noahric
5d9b92b53d Update Bind to match its comments and always capture by value. Also update the generated count to 9 args.
The existing comment is wrong, and the test even ensures it: Bind will capture reference values by reference. That makes it hard to use with AsyncInvoker, because you can't safely Bind to a function that takes (const) reference params.

The new version of this code strips references in the bound object, so it captures by value, but can bind against functions that take const references, they'll just be references to the copy.

As the class comment implies, actual by-reference args should be passed as pointers or things that safely share (e.g. scoped_refptr) and not references directly. A new test case ensures the pointer reference works. The new code will also give a compiler error if you try to bind
to a non-const reference.

BUG=

Review URL: https://codereview.webrtc.org/1291543006

Cr-Commit-Position: refs/heads/master@{#10397}
2015-10-24 18:14:52 +00:00
tfarina
90d67ddc1d Remove two more deprecated methods from SocketAddress API.
This patch removes IPToString and IPToSensitiveString static helper
methods, since there are class methods that replace them already, and
they aren't used by anyone anymore.

BUG=None
R=pthacher@webrtc.org

Review URL: https://codereview.webrtc.org/1408873005

Cr-Commit-Position: refs/heads/master@{#10391}
2015-10-23 18:22:06 +00:00
Peter Boström
49e196af40 Remove VideoFrameType aliases for FrameType.
No longer used in Chromium, so these can now be removed.

BUG=webrtc:5042
R=mflodman@webrtc.org
TBR=magjed@webrtc.org

Review URL: https://codereview.webrtc.org/1415693002 .

Cr-Commit-Position: refs/heads/master@{#10390}
2015-10-23 13:58:27 +00:00
pbos
a99069db63 Fix win32 header include order in rtp_utility.h.
Matches the include order in webrtc/base/criticalsection.h and makes use
of winsock2.h instead of winsock.h for consistency.

BUG=
R=tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1407053008

Cr-Commit-Position: refs/heads/master@{#10389}
2015-10-23 13:32:44 +00:00
Peter Boström
225789d067 Move logging CriticalSection into implementation.
Prevents including platform headers from all files that include logging.
Also removes warn_slow_logs_delay_ which adds contention to the logging
critical section.

BUG=
R=tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1416373004 .

Cr-Commit-Position: refs/heads/master@{#10388}
2015-10-23 13:21:10 +00:00
mflodman
aa0429928d Don't wait until distant future to shut down video app.
BUG=
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1415033005 .

Cr-Commit-Position: refs/heads/master@{#10387}
2015-10-23 13:10:05 +00:00
noahric
27dfe201a5 Remove final from rtc::Buffer.
With it removed, you can now use it with scoped_refptr by wrapping it in
an rtc::RefCountedObject<rtc::Buffer>.

BUG=

Review URL: https://codereview.webrtc.org/1414053003

Cr-Commit-Position: refs/heads/master@{#10386}
2015-10-23 13:01:14 +00:00
Peter Boström
1e737c6f2c Fix thread safety in VcmCapturer.
Makes VcmCapturer::Stop() blocking so that no frames can be in delivery
while the camera has stopped.

BUG=
R=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1411813004 .

Cr-Commit-Position: refs/heads/master@{#10385}
2015-10-23 12:46:06 +00:00
stefan
bbe876f0d3 Set send times in send time history via OnSentPacket.
BUG=webrtc:4173

Review URL: https://codereview.webrtc.org/1419503004

Cr-Commit-Position: refs/heads/master@{#10384}
2015-10-23 09:05:43 +00:00
asapersson
9a4cd87640 Add support for handling reordered SS data on the receive-side for VP9.
BUG=chromium:500602

Review URL: https://codereview.webrtc.org/1386903002

Cr-Commit-Position: refs/heads/master@{#10383}
2015-10-23 07:27:22 +00:00
guoweis
a3587fb779 clean up field_trial_default target, to be used by remoting_perftests.
TBR=tommi@webrtc.org
BUG=

Review URL: https://codereview.webrtc.org/1415743005

Cr-Commit-Position: refs/heads/master@{#10382}
2015-10-23 02:33:22 +00:00
guoweis
00507f8eb6 Separate StunProber::Start into Prepare and Run so we could create multiple of them and send out STUN pings at regular interval.
Also update the wake up logic to handle the case if <5 ms interval is requested.

BUG=

Review URL: https://codereview.webrtc.org/1422593002

Cr-Commit-Position: refs/heads/master@{#10381}
2015-10-23 02:16:02 +00:00
guoweis
4f6a8b5f55 Revert of Add experiment on weak ping delay during call set up time (patchset #1 id:1 of https://codereview.webrtc.org/1406153005/ )
Reason for revert:
Still cause break on mac. reverting it again.

Original issue's description:
> Reland of Add experiment on weak ping delay during call set up time (patchset #1 id:1 of https://codereview.webrtc.org/1423443002/ )
>
> Reason for revert:
> This should be safe to land now.
>
> Original issue's description:
> > Revert of Add experiment on weak ping delay during call set up time (patchset #4 id:60001 of https://codereview.webrtc.org/1411883002/ )
> >
> > Reason for revert:
> > guoweis - Here's the target that's failing:
> > https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libjingle/libjingle_nacl.gyp&l=17
> >
> > This has unfortunately been causing problems repeatedly for us since libjingle_nacl is maintained separately from libjingle (I don't know the history).
> >
> > The way this works for Chrome in general is that the FindFullName method is implemented in init_webrtc.cc in the overrides folder in Chrome and that hooks WebRTC up with Chrome's implementation.  I'm not sure if that's the right thing to do for nacl, how webrtc is initialized there etc.  I'll ping the nacl team for some help too offline and include you.  Reverting this change for now.
> >
> > Original issue's description:
> > > Add experiment on weak ping delay during call set up time
> > >
> > > BUG=
> > > R=pthatcher@webrtc.org
> > >
> > > Committed: https://crrev.com/3bf69b15f4c0c0ca4ab17c237084684a37bb8279
> > > Cr-Commit-Position: refs/heads/master@{#10343}
> >
> > TBR=pthatcher@webrtc.org,juberti@webrtc.org,guoweis@webrtc.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=
> >
> > Committed: https://crrev.com/a01d44022355796d4fd86d00aae6d3263573b6f1
> > Cr-Commit-Position: refs/heads/master@{#10350}
>
> TBR=pthatcher@webrtc.org,juberti@webrtc.org,tommi@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=
>
> Committed: https://crrev.com/e26ce1b7a4644942b239ed788a737200762db3b3
> Cr-Commit-Position: refs/heads/master@{#10379}

TBR=pthatcher@webrtc.org,juberti@webrtc.org,tommi@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.webrtc.org/1413843003

Cr-Commit-Position: refs/heads/master@{#10380}
2015-10-23 01:00:46 +00:00
guoweis
e26ce1b7a4 Reland of Add experiment on weak ping delay during call set up time (patchset #1 id:1 of https://codereview.webrtc.org/1423443002/ )
Reason for revert:
This should be safe to land now.

Original issue's description:
> Revert of Add experiment on weak ping delay during call set up time (patchset #4 id:60001 of https://codereview.webrtc.org/1411883002/ )
>
> Reason for revert:
> guoweis - Here's the target that's failing:
> https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libjingle/libjingle_nacl.gyp&l=17
>
> This has unfortunately been causing problems repeatedly for us since libjingle_nacl is maintained separately from libjingle (I don't know the history).
>
> The way this works for Chrome in general is that the FindFullName method is implemented in init_webrtc.cc in the overrides folder in Chrome and that hooks WebRTC up with Chrome's implementation.  I'm not sure if that's the right thing to do for nacl, how webrtc is initialized there etc.  I'll ping the nacl team for some help too offline and include you.  Reverting this change for now.
>
> Original issue's description:
> > Add experiment on weak ping delay during call set up time
> >
> > BUG=
> > R=pthatcher@webrtc.org
> >
> > Committed: https://crrev.com/3bf69b15f4c0c0ca4ab17c237084684a37bb8279
> > Cr-Commit-Position: refs/heads/master@{#10343}
>
> TBR=pthatcher@webrtc.org,juberti@webrtc.org,guoweis@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=
>
> Committed: https://crrev.com/a01d44022355796d4fd86d00aae6d3263573b6f1
> Cr-Commit-Position: refs/heads/master@{#10350}

TBR=pthatcher@webrtc.org,juberti@webrtc.org,tommi@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.webrtc.org/1406153005

Cr-Commit-Position: refs/heads/master@{#10379}
2015-10-23 00:49:34 +00:00
magjed
8c425aa8f6 Android: Replace EGL14 with EGL10
The purpose with this change is to support older API levels by replacing EGL14 (API lvl 17) with EGL10 (API lvl 1). The main purpose is to lower API lvl requirement for SurfaceViewRenderer from API lvl 17 to API lvl 15. Also, camera texture capture will work on API lvl < 17 (and texture encode/decode in MediaCodec, but we don't use MediaCodec below API lvl 18?).

GLSurfaceView/VideoRendererGui is already using EGL10.

EGL 1.1 - 1.4 added new functionality, but won't affect performance. We don't need the functionality, so there should be no reason to not use EGL 1.0.

I have profiled AppRTCDemo with Qualcomm Trepn Profiler on a Nexus 5 and Nexus 6 and couldn't see any difference.

Specifically, this CL:
 * Update EglBase to use EGL10 instead of EGL14.
 * Update imports from EGL14 to EGL10 in a lot of files (plus changing import order in some cases).
 * Update VideoCapturerAndroid to always support texture capture.

Review URL: https://codereview.webrtc.org/1396013004

Cr-Commit-Position: refs/heads/master@{#10378}
2015-10-22 23:52:45 +00:00
deadbeef
c80741f895 Fixing some issues with the direction attribute of m-lines in offers.
By default, we'll now offer to receive if already receiving
(meaning that the last remote description contained a track).

Also, m-lines that are neither receiving nor sending are now correctly
marked "inactive".

Also moved some logic relating to default tracks out of webrtcsdp.cc,
such that now the direction seen by upper layers will always be
consistent with the consumed/produced SDP.

BUG=528089

Review URL: https://codereview.webrtc.org/1406803004

Cr-Commit-Position: refs/heads/master@{#10376}
2015-10-22 20:14:51 +00:00
pbos
b7edb88ae2 Prevent BWE rampdowns without new loss reports.
Before this change, UpdateEstimate would repeatedly decrease bitrate
even though there's no fresh corresponding RTCP loss report, triggering
multiple reactions to a single indication of high packet loss.

BUG=webrtc:5101
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1417723005

Cr-Commit-Position: refs/heads/master@{#10374}
2015-10-22 15:52:28 +00:00
Henrik Kjellander
a74c08dced Move i420 files to the right location
There's also a presubmit check that disallows .. references
in GYP files, which this solves.

BUG=webrtc:5095
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1418753002 .

Cr-Commit-Position: refs/heads/master@{#10371}
2015-10-22 10:23:21 +00:00
Fredrik Solenberg
4f4ec0a927 Re-Land: Implement AudioReceiveStream::GetStats().
R=tommi@webrtc.org
BUG=webrtc:4690

Committed: a457752f4a

Review URL: https://codereview.webrtc.org/1390753002 .

Cr-Commit-Position: refs/heads/master@{#10369}
2015-10-22 08:49:39 +00:00
noahric
b1ce663d16 Allow encoders to fall back dynamically to software.
Like video_decoder.cc, a call to Encode that returns
WEBRTC_VIDEO_CODEC_FALLBACK_SOFTWARE will trigger an attempted fallback
to a built-in software encoder. Initialization information, along with
any rate and channel parameter info, will be replayed on the software
encoder and then the frame (that cause the fallback) will be immediately
replayed for the software encoder.

Also modified the existing behavior to Release() the "real" encoder even
if a fallback encoder exists. That seems like the correct behavior.

BUG=webrtc:2920

Review URL: https://codereview.webrtc.org/1328863002

Cr-Commit-Position: refs/heads/master@{#10368}
2015-10-22 06:54:57 +00:00
Henrik Kjellander
b788bc25f3 Add Mac-specific resource to modules_unittests.isolate
This should make
http://build.chromium.org/p/client.webrtc.fyi/builders/Mac64%20Release%20%28swarming%29
go green.

BUG=chromium:497757
TBR=stip@chromium.org

Review URL: https://codereview.webrtc.org/1415093005 .

Cr-Commit-Position: refs/heads/master@{#10367}
2015-10-22 05:31:39 +00:00
Henrik Kjellander
9589e2af16 Update isolate files for swarming tests
Xvfb is needed for the screen capture tests in modules_unittests,
which also brings in xdisplaycheck used by testing/xvfb.py.

libjingle_media_unittest was missing a resource video in the .isolate
file.

BUG=chromium:497757
R=stip@chromium.org

Review URL: https://codereview.webrtc.org/1415603005 .

Cr-Commit-Position: refs/heads/master@{#10365}
2015-10-22 04:48:34 +00:00
sprang
affa39cb39 Remove time constraint on first retransmit of a packet.
We don't allow more than one retransmission within one RTT, but the RTT
estimate might be off. Reasonably, the remote end will not send a NACK
until the packet after has been received - so always resend on first
request.

Review URL: https://codereview.webrtc.org/1414563003

Cr-Commit-Position: refs/heads/master@{#10362}
2015-10-21 20:46:42 +00:00
magjed
f4d23b2254 Remove MockVideoCapturer
This class is not used.

Review URL: https://codereview.webrtc.org/1403783002

Cr-Commit-Position: refs/heads/master@{#10360}
2015-10-21 16:56:14 +00:00
mflodman
0c478b3d75 Rename ChannelGroup to CongestionController and move to webrtc/call/.
BUG=webrtc:5079
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1419803002 .

Cr-Commit-Position: refs/heads/master@{#10358}
2015-10-21 13:52:33 +00:00
henrika
edcbd5610b Adding the OnePlus 2 device to AEC and NS blacklists.
Reports show that we see full echo from the OnePlus 2 device.
Disabling hardware effects and revert to WebRTC-based
components instead as a test to see if it helps.

R=tommi@webrtc.org
TBR=tommi
BUG=b/25096456

Review URL: https://codereview.webrtc.org/1417093002 .

Cr-Commit-Position: refs/heads/master@{#10357}
2015-10-21 11:43:57 +00:00
Stefan Holmer
0a87ffcaad Fix bug in how send timestamps are converted to 24 bits.
BUG=webrtc:4173
R=sprang@webrtc.org

Review URL: https://codereview.webrtc.org/1412683004 .

Cr-Commit-Position: refs/heads/master@{#10356}
2015-10-21 11:42:09 +00:00
mflodman
e37870297f ChannelGroup cleanup.
Move CallStats to Call, EncoderStateFeedback to VideoSendStream and
remove last ViEChannel dependency from ChannelGroup.

BUG=webrtc:5079
R=pbos@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1418613002 .

Cr-Commit-Position: refs/heads/master@{#10355}
2015-10-21 11:24:37 +00:00
henrika
45c136b579 Adds support for Bluetooth headsets to the iOS audio layer.
This patch also also ensures that audio is restored after an incoming
GSM call.

BUG=webrtc:5058, webrtc:5012
TEST=Manual tests using modified AppRTCDemo and three different BT headsets

Review URL: https://codereview.webrtc.org/1401963002

Cr-Commit-Position: refs/heads/master@{#10354}
2015-10-21 11:12:01 +00:00
Karl Wiberg
6e587200db Introduce rtc::Maybe<T>, which either contains a T or not.
It's a simple std::experimental::optional-wannabe. For simplicity and
portability, it still secretly contains a (default-constructed) T when
it's supposedly empty. This restriction is fine for simple types.

One important application is for the return type of functions. For
example, a function which either returns a size_t or fails can return
rtc::Maybe<size_t>.

BUG=webrtc:5028
R=andrew@webrtc.org, mgraczyk@chromium.org

Review URL: https://codereview.webrtc.org/1413763003 .

Cr-Commit-Position: refs/heads/master@{#10353}
2015-10-21 10:44:17 +00:00
tommi
a01d440223 Revert of Add experiment on weak ping delay during call set up time (patchset #4 id:60001 of https://codereview.webrtc.org/1411883002/ )
Reason for revert:
guoweis - Here's the target that's failing:
https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libjingle/libjingle_nacl.gyp&l=17

This has unfortunately been causing problems repeatedly for us since libjingle_nacl is maintained separately from libjingle (I don't know the history).

The way this works for Chrome in general is that the FindFullName method is implemented in init_webrtc.cc in the overrides folder in Chrome and that hooks WebRTC up with Chrome's implementation.  I'm not sure if that's the right thing to do for nacl, how webrtc is initialized there etc.  I'll ping the nacl team for some help too offline and include you.  Reverting this change for now.

Original issue's description:
> Add experiment on weak ping delay during call set up time
>
> BUG=
> R=pthatcher@webrtc.org
>
> Committed: https://crrev.com/3bf69b15f4c0c0ca4ab17c237084684a37bb8279
> Cr-Commit-Position: refs/heads/master@{#10343}

TBR=pthatcher@webrtc.org,juberti@webrtc.org,guoweis@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.webrtc.org/1423443002

Cr-Commit-Position: refs/heads/master@{#10350}
2015-10-21 08:07:32 +00:00
asapersson
86b016027d Add stats for average QP per frame for VP8 (for received video streams):
"WebRTC.Video.Decoded.VP8.Qp"

BUG=chromium:512752

Review URL: https://codereview.webrtc.org/1340623002

Cr-Commit-Position: refs/heads/master@{#10349}
2015-10-21 06:55:32 +00:00
Marco
fcab1cdcac Disable VP9 resize test for now.
Will re-enable after libvpx roll,
needs to be updated.

TBR=stefan@webrtc.org
BUG=webrtc:5097

Review URL: https://codereview.webrtc.org/1417873002 .

Cr-Commit-Position: refs/heads/master@{#10347}
2015-10-21 06:10:21 +00:00
tommi
e4f96501fc Remove system_wrappers/interface/trace_event.h
BUG=

Review URL: https://codereview.webrtc.org/1417773002

Cr-Commit-Position: refs/heads/master@{#10346}
2015-10-21 06:00:57 +00:00
Marco
3cf20ed676 Will re-enable after libvpx roll,
needs to be updated.

BUG=

TBR=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1410013005 .

Cr-Commit-Position: refs/heads/master@{#10345}
2015-10-21 03:27:47 +00:00
Guo-wei Shieh
3bf69b15f4 Add experiment on weak ping delay during call set up time
BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1411883002 .

Cr-Commit-Position: refs/heads/master@{#10343}
2015-10-20 19:09:45 +00:00