510 Commits

Author SHA1 Message Date
sakal
836f60cda1 Move matrix from VideoFrame to TextureBuffer.
Previously, the matrix in VideoFrame was used to crop and scale the
frame. This caused complications because webrtc::VideoFrame doesn't
include a matrix. cropAndScale method is added to VideoBuffer class for
cropping and scaling instead.

BUG=webrtc:7749, webrtc:7760

Review-Url: https://codereview.webrtc.org/2990583002
Cr-Commit-Position: refs/heads/master@{#19179}
2017-07-28 14:12:23 +00:00
deadbeef
28e2919cfd Adding Android binding for RTCConfiguration::max_ipv6_networks.
BUG=webrtc:7703

Review-Url: https://codereview.webrtc.org/2984863002
Cr-Commit-Position: refs/heads/master@{#19172}
2017-07-27 16:14:38 +00:00
sakal
9eb3d19ec0 Fix a crash in PeerConnectionFactory.SetVideoHwAccelerationOptions.
BUG=webrtc:8035

Review-Url: https://codereview.webrtc.org/2992523002
Cr-Commit-Position: refs/heads/master@{#19171}
2017-07-27 15:23:58 +00:00
sakal
2d4040ed0e Add a comment that RTCAVFoundationVideoSource is deprecated.
RTCAVFoundationVideoSource is deprecated and will removed after a few
weeks.

BUG=webrtc:7177
R=magjed@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2992613002
Cr-Commit-Position: refs/heads/master@{#19170}
2017-07-27 14:48:57 +00:00
deadbeef
2059bb3e4b Adding Obj-C binding for RTCConfiguration::max_ipv6_networks.
BUG=webrtc:7703

Review-Url: https://codereview.webrtc.org/2988553004
Cr-Commit-Position: refs/heads/master@{#19162}
2017-07-27 01:25:43 +00:00
deadbeef
54c721541d Fix issues with NetworkMonitor singleton when used by multiple clients.
When you create multiple "PeerConnectionFactory"s, they end up using
the same NetworkMonitor singleton. But the second one's
"AndroidNetworkMonitor" class (in C++) wasn't getting the expected
network list update, and as a result it wasn't binding sockets to
networks successfully, acting as if the networks didn't exist.

The solution is just to move "updateActiveNetworkList" to
"startMonitoring". This CL also does some other minor
cleanup/refactoring, and fixes a more corner-casey issue where, if the
first PeerConnection is destroyed, the second one would stop receiving
network updates.

BUG=webrtc:7946

Review-Url: https://codereview.webrtc.org/2990693002
Cr-Commit-Position: refs/heads/master@{#19156}
2017-07-26 18:56:49 +00:00
jtteh
3b673c66a4 Removed file RTCCameraVideoCapturer.mm that isn't needed
Also added post commit review changes.

BUG=webrtc:7898

Review-Url: https://codereview.webrtc.org/2988783002
Cr-Commit-Position: refs/heads/master@{#19145}
2017-07-25 22:48:39 +00:00
jtteh
61b0ed039d [iOS] Fix incorrectly oriented frames when rapidly switching between cameras.
During a call, with both phones in horizontal or landscape mode, rapidly switching between the front and back camera sometimes causes the remote video to be shown upside down.

There seems to be a race condition when setting the rotation based on the orientation of the device and which camera we're using.

So use the active input's camera to check instead of the client state.

BUG=webrtc:7898

Review-Url: https://codereview.webrtc.org/2964703002
Cr-Commit-Position: refs/heads/master@{#19139}
2017-07-25 16:35:55 +00:00
kthelgason
fb143127d7 Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2980173002/ )
Reason for revert:
Relanding after fixing issues with no video.

Original issue's description:
> Revert of Injectable Obj-C video codecs (patchset #2 id:370001 of https://codereview.webrtc.org/2979983002/ )
>
> Reason for revert:
> Still having problems with no video. Reverting.
> Once no video is visible, no video is available from then on even if the callee app is in the foreground.
>
>
> Original issue's description:
> > Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2979973002/ )
> >
> > Reason for revert:
> > Fix the broken build file
> >
> > Original issue's description:
> > > Revert of Injectable Obj-C video codecs (patchset #3 id:400001 of https://codereview.webrtc.org/2981583002/ )
> > >
> > > Reason for revert:
> > > Breaks bots. Build file incorrect.
> > >
> > > Original issue's description:
> > > > Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
> > > >
> > > > Reason for revert:
> > > > New CL for fixing the issues
> > > >
> > > > Original issue's description:
> > > > > Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
> > > > >
> > > > > Reason for revert:
> > > > > Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
> > > > >
> > > > > Original issue's description:
> > > > > > Injectable Obj-C video codecs
> > > > > >
> > > > > > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > > > > > (wrapping the VideoToolbox codec).
> > > > > >
> > > > > > Some notes / things left to do:
> > > > > >   - There are some hard-coded references to codec types that are supported by
> > > > > >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> > > > > >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> > > > > >     These types would need to be more codec agnostic to avoid this.
> > > > > >   - Most interfaces are borrowed from the design document for injectable
> > > > > >     codecs in Android. Some data in the corresponding C++ classes is discarded
> > > > > >     when converting to the Obj-C version, since it has fewer fields. I have not
> > > > > >     verified whether all data that we do keep is needed, or whether we might be
> > > > > >     losing anything useful in these conversions.
> > > > > >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> > > > > >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> > > > > >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> > > > > >     Decoder wrapper classes.
> > > > > >   - List the injected codec factory's supported codecs in the list of codecs in
> > > > > >     AppRTCMobile.
> > > > > >
> > > > > > BUG=webrtc:7924
> > > > > > R=magjed@webrtc.org
> > > > > >
> > > > > > Review-Url: https://codereview.webrtc.org/2966023002 .
> > > > > > Cr-Commit-Position: refs/heads/master@{#18928}
> > > > > > Committed: a0349c138d
> > > > >
> > > > > TBR=magjed@webrtc.org,andersc@webrtc.org
> > > > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > > > BUG=webrtc:7924
> > > > > NOTRY=true
> > > > >
> > > > > Review-Url: https://codereview.webrtc.org/2975963002
> > > > > Cr-Commit-Position: refs/heads/master@{#18979}
> > > > > Committed: 1095ada7ad
> > > >
> > > > R=magjed@webrtc.org
> > > > TBR=tkchin@webrtc.org
> > > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > > NOPRESUBMIT=true
> > > > NOTREECHECKS=true
> > > > NOTRY=true
> > > > BUG=webrtc:7924
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2981583002 .
> > > > Cr-Commit-Position: refs/heads/master@{#19002}
> > > > Committed: a5f1de1e65
> > >
> > > TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,andersc@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:7924
> > >
> > > Review-Url: https://codereview.webrtc.org/2979973002
> > > Cr-Commit-Position: refs/heads/master@{#19004}
> > > Committed: 81d40ee149
> >
> > TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,sprang@webrtc.org
> > BUG=webrtc:7924
> >
> > Review-Url: https://codereview.webrtc.org/2979983002
> > Cr-Commit-Position: refs/heads/master@{#19005}
> > Committed: 732a3437da
>
> TBR=magjed@webrtc.org,tkchin@webrtc.org,sprang@webrtc.org,haysc@webrtc.org,andersc@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7924
>
> Review-Url: https://codereview.webrtc.org/2980173002
> Cr-Commit-Position: refs/heads/master@{#19036}
> Committed: 860f729816

TBR=magjed@webrtc.org,tkchin@webrtc.org,sprang@webrtc.org,haysc@webrtc.org,andersc@webrtc.org,jtteh@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2977213002
Cr-Commit-Position: refs/heads/master@{#19135}
2017-07-25 14:55:58 +00:00
oprypin
d0727bfd45 Fix NSInteger formatting warning from clang 6
"error: values of type 'NSInteger' should not be used as format arguments; add an explicit cast to 'long' instead"
Casting to long is already a common practice in the code base.

This has been blocking the Chromium roll which contains an update to clang 6.0.0

BUG=None

Review-Url: https://codereview.webrtc.org/2987693002
Cr-Commit-Position: refs/heads/master@{#19127}
2017-07-25 09:04:58 +00:00
korniltsev.anatoly
f3a48ab6dc Delete unused field from AndroidVideoTrackSource
BUG=None

Review-Url: https://codereview.webrtc.org/2974713002
Cr-Commit-Position: refs/heads/master@{#19117}
2017-07-24 08:06:39 +00:00
sakal
8ac955be2c Set target API to 18 for MediaCodecUtils.
Target API 18 is needed for texture mode encoding.

BUG=None

Review-Url: https://codereview.webrtc.org/2982403002
Cr-Commit-Position: refs/heads/master@{#19107}
2017-07-21 10:30:02 +00:00
ehmaldonado
f6a861ab6c Remove remains of webrtc/base
All downstream code have been updated to the new location.

In PRESUBMIT.py:
* Remove webrtc/rtc_base from CPP_BLACKLIST
* Add webrtc/rtc_base to LEGACY_API_DIRS

Fix some duplicated paths in
webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn

BUG=webrtc:7634
TBR=kwiberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2976293002
Cr-Commit-Position: refs/heads/master@{#19094}
2017-07-19 17:40:47 +00:00
sakal
9c0e0fa687 Fix fromAndroidGraphicsMatrix to use column-major order for output.
BUG=webrtc:7760

Review-Url: https://codereview.webrtc.org/2976423002
Cr-Commit-Position: refs/heads/master@{#19089}
2017-07-19 08:24:55 +00:00
Bjorn Mellem
0cf9a4a482 Add texture support to HardwareVideoEncoder.
HardwareVideoEncoderFactory can now take an EglBase.Context on creation.
When it does, it creates video encoders in texture mode.  It uses the
COLOR_FormatSurface colorFormat.  It passes the EglBase.Context to the
HardwareVideoEncoder.

The HardwareVideoEncoder sets up an input surface for its codec and handles
incoming frames by drawing them onto the input surface.

BUG=webrtc:7760
R=pthatcher@webrtc.org, sakal@webrtc.org

Review-Url: https://codereview.webrtc.org/2977153003 .
Cr-Commit-Position: refs/heads/master@{#19083}
2017-07-18 20:19:27 +00:00
Bjorn Mellem
8fb23618d8 Add texture support to HardwareVideoDecoder.
HardwareVideoDecoder is now a listener for SurfaceTextureHelper.  It takes a
SurfaceTextureHelper on construction.  If it is non-null, it operates in texture
mode instead of byte-buffer mode.

When in texture mode, the HardwareVideoDecoder renders output frames to a Surface,
listens for the texture frame to become available, wraps it in a VideoFrame, and
pushes it to the decoder callback.

As in MediaCodecVideoDecoder, it may queue up to three buffers while waiting for
the surface to become available for rendering.  If more buffers are queued, it will
drop the oldest.

This change also implements the VideoFrame.TextureBuffer and reorganizes code
for wrapping an existing ByteBuffer into an I420Buffer.  This makes it easier
to implement the texture buffer's ToI420() method.

BUG=webrtc:7760
R=pthatcher@webrtc.org, sakal@webrtc.org

Review-Url: https://codereview.webrtc.org/2977643002 .
Cr-Commit-Position: refs/heads/master@{#19081}
2017-07-18 18:33:44 +00:00
sakal
fcf97c3b75 Fix fullscreen scaling in AppRTCMobile.
The surface view renderer size was set to match parent so it couldn't
adjust based on the frame size. The size is now set to wrap_content
which allows the renderer to adjust. The root element of the call
activity is changed to FrameLayout to allow the renderer to center.

requestLayout is added to SurfaceView setScalingType so onMeasure gets
called again.

BUG=webrtc:7901

Review-Url: https://codereview.webrtc.org/2978173002
Cr-Commit-Position: refs/heads/master@{#19073}
2017-07-18 12:01:08 +00:00
Steve Anton
d960a0c7d1 Android bindings for ice_regather_interval_range RTCConfiguration option
Bug: webrtc:7969
Change-Id: I3fbb723d35fa6cc4c7b92aa1e155b974e9fb0b55
Reviewed-on: https://chromium-review.googlesource.com/567698
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@chromium.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19062}
2017-07-17 20:09:43 +00:00
jtteh
860f729816 Revert of Injectable Obj-C video codecs (patchset #2 id:370001 of https://codereview.webrtc.org/2979983002/ )
Reason for revert:
Still having problems with no video. Reverting.
Once no video is visible, no video is available from then on even if the callee app is in the foreground.

Original issue's description:
> Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2979973002/ )
>
> Reason for revert:
> Fix the broken build file
>
> Original issue's description:
> > Revert of Injectable Obj-C video codecs (patchset #3 id:400001 of https://codereview.webrtc.org/2981583002/ )
> >
> > Reason for revert:
> > Breaks bots. Build file incorrect.
> >
> > Original issue's description:
> > > Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
> > >
> > > Reason for revert:
> > > New CL for fixing the issues
> > >
> > > Original issue's description:
> > > > Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
> > > >
> > > > Reason for revert:
> > > > Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
> > > >
> > > > Original issue's description:
> > > > > Injectable Obj-C video codecs
> > > > >
> > > > > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > > > > (wrapping the VideoToolbox codec).
> > > > >
> > > > > Some notes / things left to do:
> > > > >   - There are some hard-coded references to codec types that are supported by
> > > > >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> > > > >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> > > > >     These types would need to be more codec agnostic to avoid this.
> > > > >   - Most interfaces are borrowed from the design document for injectable
> > > > >     codecs in Android. Some data in the corresponding C++ classes is discarded
> > > > >     when converting to the Obj-C version, since it has fewer fields. I have not
> > > > >     verified whether all data that we do keep is needed, or whether we might be
> > > > >     losing anything useful in these conversions.
> > > > >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> > > > >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> > > > >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> > > > >     Decoder wrapper classes.
> > > > >   - List the injected codec factory's supported codecs in the list of codecs in
> > > > >     AppRTCMobile.
> > > > >
> > > > > BUG=webrtc:7924
> > > > > R=magjed@webrtc.org
> > > > >
> > > > > Review-Url: https://codereview.webrtc.org/2966023002 .
> > > > > Cr-Commit-Position: refs/heads/master@{#18928}
> > > > > Committed: a0349c138d
> > > >
> > > > TBR=magjed@webrtc.org,andersc@webrtc.org
> > > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > > BUG=webrtc:7924
> > > > NOTRY=true
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2975963002
> > > > Cr-Commit-Position: refs/heads/master@{#18979}
> > > > Committed: 1095ada7ad
> > >
> > > R=magjed@webrtc.org
> > > TBR=tkchin@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:7924
> > >
> > > Review-Url: https://codereview.webrtc.org/2981583002 .
> > > Cr-Commit-Position: refs/heads/master@{#19002}
> > > Committed: a5f1de1e65
> >
> > TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,andersc@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7924
> >
> > Review-Url: https://codereview.webrtc.org/2979973002
> > Cr-Commit-Position: refs/heads/master@{#19004}
> > Committed: 81d40ee149
>
> TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,sprang@webrtc.org
> BUG=webrtc:7924
>
> Review-Url: https://codereview.webrtc.org/2979983002
> Cr-Commit-Position: refs/heads/master@{#19005}
> Committed: 732a3437da

TBR=magjed@webrtc.org,tkchin@webrtc.org,sprang@webrtc.org,haysc@webrtc.org,andersc@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2980173002
Cr-Commit-Position: refs/heads/master@{#19036}
2017-07-15 02:49:58 +00:00
Steve Anton
d295e407da Reinstate "iOS - Add iceRegatherIntervalRange."
This reverts commit 93adc3209b5ff10adaba54d5eab6b53bc2780685.

Reverted originally because it depended on a CL which was reverted.
That CL has been reinstated in:

https: //chromium-review.googlesource.com/#/c/572070/
Bug: webrtc:7969
Change-Id: I608bbeaaba02e84908433c8260cf236df0307a97
Reviewed-on: https://chromium-review.googlesource.com/572405
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19035}
2017-07-14 23:55:48 +00:00
tommi
e7251599a3 Reland of Make the default ctor of rtc::Thread, protected
This is a partial re-land. The change doesn't make the default Thread ctor protected anymore but it does mark it as deprecated and updates all use of it in WebRTC.

Original issue's description:

Make the default ctor of rtc::Thread, protected.
The goal is to force use of Thread::Create or Thread::CreateWithSocketServer.

The default constructor constructs a 'default' socket server, which is usually a 'physical' socket server, but not always. Not every instance of Thread actually needs to have network support, so it's better to have this be explicit instead of unknowingly instantiate one.

BUG=none

Review-Url: https://codereview.webrtc.org/2977953002
Cr-Commit-Position: refs/heads/master@{#19031}
2017-07-14 21:44:46 +00:00
magjed
93adc3209b Revert of iOS - Add iceRegatherIntervalRange. (patchset #1 id:1 of https://codereview.webrtc.org/2976953002/ )
Reason for revert:
Blocks reverting:
https://chromium-review.googlesource.com/c/562505

Original issue's description:
> iOS - Add iceRegatherIntervalRange.
>
> BUG=webrtc:7969
>
> Review-Url: https://codereview.webrtc.org/2976953002
> Cr-Commit-Position: refs/heads/master@{#18997}
> Committed: 5e0ed36d74

TBR=haysc@webrtc.org,steveanton@webrtc.org,tkchin@webrtc.org

NOTRY=TRUE
BUG=webrtc:7969

Review-Url: https://codereview.webrtc.org/2979993003
Cr-Commit-Position: refs/heads/master@{#19023}
2017-07-14 14:59:05 +00:00
tserng
ff7acb19a1 Reset isFirstFrameRendered on init of SurfaceViewRenderer
If a SurfaceViewRenderer is reinitialized, the onFirstFrameRendered
callback is not fired.

Ensure that we reset the flag when the SurfaceViewRenderer is
initialized.

BUG=webrtc:7985

Review-Url: https://codereview.webrtc.org/2981793002
Cr-Commit-Position: refs/heads/master@{#19016}
2017-07-14 09:35:53 +00:00
Zeke Chin
c8f9230667 Remove OWNERS check for webrtc/sdk/BUILD.gn
Bug: 0
Change-Id: I3ae2fe48367bf3cac0ce1fb4b4cc2f096456a68a
Reviewed-on: https://chromium-review.googlesource.com/570822
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19015}
2017-07-14 09:12:42 +00:00
andersc
732a3437da Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2979973002/ )
Reason for revert:
Fix the broken build file

Original issue's description:
> Revert of Injectable Obj-C video codecs (patchset #3 id:400001 of https://codereview.webrtc.org/2981583002/ )
>
> Reason for revert:
> Breaks bots. Build file incorrect.
>
> Original issue's description:
> > Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
> >
> > Reason for revert:
> > New CL for fixing the issues
> >
> > Original issue's description:
> > > Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
> > >
> > > Reason for revert:
> > > Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
> > >
> > > Original issue's description:
> > > > Injectable Obj-C video codecs
> > > >
> > > > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > > > (wrapping the VideoToolbox codec).
> > > >
> > > > Some notes / things left to do:
> > > >   - There are some hard-coded references to codec types that are supported by
> > > >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> > > >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> > > >     These types would need to be more codec agnostic to avoid this.
> > > >   - Most interfaces are borrowed from the design document for injectable
> > > >     codecs in Android. Some data in the corresponding C++ classes is discarded
> > > >     when converting to the Obj-C version, since it has fewer fields. I have not
> > > >     verified whether all data that we do keep is needed, or whether we might be
> > > >     losing anything useful in these conversions.
> > > >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> > > >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> > > >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> > > >     Decoder wrapper classes.
> > > >   - List the injected codec factory's supported codecs in the list of codecs in
> > > >     AppRTCMobile.
> > > >
> > > > BUG=webrtc:7924
> > > > R=magjed@webrtc.org
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2966023002 .
> > > > Cr-Commit-Position: refs/heads/master@{#18928}
> > > > Committed: a0349c138d
> > >
> > > TBR=magjed@webrtc.org,andersc@webrtc.org
> > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > BUG=webrtc:7924
> > > NOTRY=true
> > >
> > > Review-Url: https://codereview.webrtc.org/2975963002
> > > Cr-Commit-Position: refs/heads/master@{#18979}
> > > Committed: 1095ada7ad
> >
> > R=magjed@webrtc.org
> > TBR=tkchin@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7924
> >
> > Review-Url: https://codereview.webrtc.org/2981583002 .
> > Cr-Commit-Position: refs/heads/master@{#19002}
> > Committed: a5f1de1e65
>
> TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,andersc@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7924
>
> Review-Url: https://codereview.webrtc.org/2979973002
> Cr-Commit-Position: refs/heads/master@{#19004}
> Committed: 81d40ee149

TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,sprang@webrtc.org
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2979983002
Cr-Commit-Position: refs/heads/master@{#19005}
2017-07-13 15:59:07 +00:00
sprang
81d40ee149 Revert of Injectable Obj-C video codecs (patchset #3 id:400001 of https://codereview.webrtc.org/2981583002/ )
Reason for revert:
Breaks bots. Build file incorrect.

Original issue's description:
> Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
>
> Reason for revert:
> New CL for fixing the issues
>
> Original issue's description:
> > Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
> >
> > Reason for revert:
> > Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
> >
> > Original issue's description:
> > > Injectable Obj-C video codecs
> > >
> > > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > > (wrapping the VideoToolbox codec).
> > >
> > > Some notes / things left to do:
> > >   - There are some hard-coded references to codec types that are supported by
> > >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> > >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> > >     These types would need to be more codec agnostic to avoid this.
> > >   - Most interfaces are borrowed from the design document for injectable
> > >     codecs in Android. Some data in the corresponding C++ classes is discarded
> > >     when converting to the Obj-C version, since it has fewer fields. I have not
> > >     verified whether all data that we do keep is needed, or whether we might be
> > >     losing anything useful in these conversions.
> > >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> > >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> > >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> > >     Decoder wrapper classes.
> > >   - List the injected codec factory's supported codecs in the list of codecs in
> > >     AppRTCMobile.
> > >
> > > BUG=webrtc:7924
> > > R=magjed@webrtc.org
> > >
> > > Review-Url: https://codereview.webrtc.org/2966023002 .
> > > Cr-Commit-Position: refs/heads/master@{#18928}
> > > Committed: a0349c138d
> >
> > TBR=magjed@webrtc.org,andersc@webrtc.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG=webrtc:7924
> > NOTRY=true
> >
> > Review-Url: https://codereview.webrtc.org/2975963002
> > Cr-Commit-Position: refs/heads/master@{#18979}
> > Committed: 1095ada7ad
>
> R=magjed@webrtc.org
> TBR=tkchin@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7924
>
> Review-Url: https://codereview.webrtc.org/2981583002 .
> Cr-Commit-Position: refs/heads/master@{#19002}
> Committed: a5f1de1e65

TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,andersc@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2979973002
Cr-Commit-Position: refs/heads/master@{#19004}
2017-07-13 14:09:39 +00:00
charujain
a117b04113 Revert of Make the default ctor of rtc::Thread, protected (patchset #3 id:40001 of https://codereview.webrtc.org/2981623002/ )
Reason for revert:
Break projects.

Original issue's description:
> Make the default ctor of rtc::Thread, protected.
> The goal is to force use of Thread::Create or Thread::CreateWithSocketServer.
>
> The default constructor constructs a 'default' socket server, which is usually a 'physical' socket server, but not always. Not every instance of Thread actually needs to have network support, so it's better to have this be explicit instead of unknowingly instantiate one.
>
> BUG=none
>
> Review-Url: https://codereview.webrtc.org/2981623002
> Cr-Commit-Position: refs/heads/master@{#19001}
> Committed: a8a3515997

TBR=kthelgason@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=none

Review-Url: https://codereview.webrtc.org/2979963002
Cr-Commit-Position: refs/heads/master@{#19003}
2017-07-13 14:06:39 +00:00
Anders Carlsson
a5f1de1e65 Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
Reason for revert:
New CL for fixing the issues

Original issue's description:
> Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
>
> Reason for revert:
> Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
>
> Original issue's description:
> > Injectable Obj-C video codecs
> >
> > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > (wrapping the VideoToolbox codec).
> >
> > Some notes / things left to do:
> >   - There are some hard-coded references to codec types that are supported by
> >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> >     These types would need to be more codec agnostic to avoid this.
> >   - Most interfaces are borrowed from the design document for injectable
> >     codecs in Android. Some data in the corresponding C++ classes is discarded
> >     when converting to the Obj-C version, since it has fewer fields. I have not
> >     verified whether all data that we do keep is needed, or whether we might be
> >     losing anything useful in these conversions.
> >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> >     Decoder wrapper classes.
> >   - List the injected codec factory's supported codecs in the list of codecs in
> >     AppRTCMobile.
> >
> > BUG=webrtc:7924
> > R=magjed@webrtc.org
> >
> > Review-Url: https://codereview.webrtc.org/2966023002 .
> > Cr-Commit-Position: refs/heads/master@{#18928}
> > Committed: a0349c138d
>
> TBR=magjed@webrtc.org,andersc@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7924
> NOTRY=true
>
> Review-Url: https://codereview.webrtc.org/2975963002
> Cr-Commit-Position: refs/heads/master@{#18979}
> Committed: 1095ada7ad

R=magjed@webrtc.org
TBR=tkchin@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2981583002 .
Cr-Commit-Position: refs/heads/master@{#19002}
2017-07-13 14:03:58 +00:00
tommi
a8a3515997 Make the default ctor of rtc::Thread, protected.
The goal is to force use of Thread::Create or Thread::CreateWithSocketServer.

The default constructor constructs a 'default' socket server, which is usually a 'physical' socket server, but not always. Not every instance of Thread actually needs to have network support, so it's better to have this be explicit instead of unknowingly instantiate one.

BUG=none

Review-Url: https://codereview.webrtc.org/2981623002
Cr-Commit-Position: refs/heads/master@{#19001}
2017-07-13 12:47:25 +00:00
tkchin
5e0ed36d74 iOS - Add iceRegatherIntervalRange.
BUG=webrtc:7969

Review-Url: https://codereview.webrtc.org/2976953002
Cr-Commit-Position: refs/heads/master@{#18997}
2017-07-13 09:17:43 +00:00
tkchin
1095ada7ad Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
Reason for revert:
Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.

Original issue's description:
> Injectable Obj-C video codecs
>
> Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> (wrapping the VideoToolbox codec).
>
> Some notes / things left to do:
>   - There are some hard-coded references to codec types that are supported by
>     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
>     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
>     These types would need to be more codec agnostic to avoid this.
>   - Most interfaces are borrowed from the design document for injectable
>     codecs in Android. Some data in the corresponding C++ classes is discarded
>     when converting to the Obj-C version, since it has fewer fields. I have not
>     verified whether all data that we do keep is needed, or whether we might be
>     losing anything useful in these conversions.
>   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
>     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
>     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
>     Decoder wrapper classes.
>   - List the injected codec factory's supported codecs in the list of codecs in
>     AppRTCMobile.
>
> BUG=webrtc:7924
> R=magjed@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2966023002 .
> Cr-Commit-Position: refs/heads/master@{#18928}
> Committed: a0349c138d

TBR=magjed@webrtc.org,andersc@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7924
NOTRY=true

Review-Url: https://codereview.webrtc.org/2975963002
Cr-Commit-Position: refs/heads/master@{#18979}
2017-07-11 22:46:31 +00:00
Ingemar Ådahl
87b6ddb561 Suppress MissingPrefix using tools attribute
Suppressing lint errors using comments is an undocumented feature of the
linter, and suppressing using the tools:ignore attribute should be
preferred.

Suppressing using comments becomes a problem when using the manifest
merger introduced in
6ada47bc79
as it reformats the comments slightly:
  <!--suppress MissingPrefix -->
becomes
  <!-- supress MissingPrefix -->
which causes the linter to disregard the suppression.

Bug: 740657
Change-Id: I8e365744d089271c390254e7c958b24b81043766
Reviewed-on: https://chromium-review.googlesource.com/566860
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Ingemar Ådahl <ingemara@opera.com>
Cr-Commit-Position: refs/heads/master@{#18971}
2017-07-11 13:41:35 +00:00
jianjun.zhu
c024740b5e Use relative paths in GN files.
BUG=webrtc:7952
TBR=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2974863003
Cr-Commit-Position: refs/heads/master@{#18970}
2017-07-11 13:20:45 +00:00
ehmaldonado
370dd47973 Revert of Remove remains of webrtc/base (patchset #7 id:120001 of https://codereview.webrtc.org/2973183002/ )
Reason for revert:
Breaks lots of downstream projects.

Original issue's description:
> Remove remains of webrtc/base
>
> All downstream code have been updated to the new location.
>
> In PRESUBMIT.py:
> * Remove webrtc/rtc_base from CPP_BLACKLIST
> * Add webrtc/rtc_base to LEGACY_API_DIRS
>
> Fix some duplicated paths in
> webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn
>
> BUG=webrtc:7634
> TBR=kwiberg@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2973183002
> Cr-Commit-Position: refs/heads/master@{#18948}
> Committed:
9483b49baf

TBR=kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7634

Review-Url: https://codereview.webrtc.org/2976633002
Cr-Commit-Position: refs/heads/master@{#18949}
2017-07-10 12:58:42 +00:00
ehmaldonado
9483b49baf Remove remains of webrtc/base
All downstream code have been updated to the new location.

In PRESUBMIT.py:
* Remove webrtc/rtc_base from CPP_BLACKLIST
* Add webrtc/rtc_base to LEGACY_API_DIRS

Fix some duplicated paths in
webrtc/modules/audio_processing/test/conversational_speech/BUILD.gn

BUG=webrtc:7634
TBR=kwiberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2973183002
Cr-Commit-Position: refs/heads/master@{#18948}
2017-07-10 11:50:54 +00:00
jtteh
7480da4118 Trace loggging: Check for g_event_logger is not null before calling it.
BUG=webrtc:7868

Review-Url: https://codereview.webrtc.org/2961663002
Cr-Commit-Position: refs/heads/master@{#18933}
2017-07-07 18:02:15 +00:00
Anders Carlsson
a0349c138d Injectable Obj-C video codecs
Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
(wrapping the VideoToolbox codec).

Some notes / things left to do:
  - There are some hard-coded references to codec types that are supported by
    webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
    since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
    These types would need to be more codec agnostic to avoid this.
  - Most interfaces are borrowed from the design document for injectable
    codecs in Android. Some data in the corresponding C++ classes is discarded
    when converting to the Obj-C version, since it has fewer fields. I have not
    verified whether all data that we do keep is needed, or whether we might be
    losing anything useful in these conversions.
  - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
    classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
    Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
    Decoder wrapper classes.
  - List the injected codec factory's supported codecs in the list of codecs in
    AppRTCMobile.

BUG=webrtc:7924
R=magjed@webrtc.org

Review-Url: https://codereview.webrtc.org/2966023002 .
Cr-Commit-Position: refs/heads/master@{#18928}
2017-07-07 11:19:14 +00:00
ehmaldonado
eaaae9e91b base->rtc_base: Update .c, .mm and .java files.
TBR=kwiberg@webrtc.org
BUG=webrtc:7634

Review-Url: https://codereview.webrtc.org/2974613003
Cr-Commit-Position: refs/heads/master@{#18926}
2017-07-07 10:09:51 +00:00
Edward Lemur
c20978e581 Rename webrtc/base -> webrtc/rtc_base
NOPRESUBMIT=True # cpplint errors that aren't caused by this CL.
NOTRY=True
NOTREECHECKS=True
TBR=kwiberg@webrtc.org, kjellander@webrtc.org

Bug: webrtc:7634
Change-Id: I3cca0fbaa807b563c95979cccd6d1bec32055f36
Reviewed-on: https://chromium-review.googlesource.com/562156
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18919}
2017-07-06 19:11:40 +00:00
bdodson
6aa95117d8 Fix null ref in NetworkMonitorAutoDetect if Connectivity Manager service is unavailable
BUG=webrtc:7917
TBR=magjed@webrtc.org

Review-Url: https://codereview.webrtc.org/2963363002
Cr-Commit-Position: refs/heads/master@{#18906}
2017-07-05 16:55:09 +00:00
Henrik Kjellander
a80c16a67c Revert "Update includes for webrtc/{base => rtc_base} rename (2/3)"
This reverts commit c3771cc4d37f5573fe53b7c7cff295a4f0f9560f.
(breaks downstream internal project)

BUG=webrtc:7634
NOTRY=True
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2972463002 .
Cr-Commit-Position: refs/heads/master@{#18873}
2017-07-01 14:48:18 +00:00
kjellander
c3771cc4d3 Update includes for webrtc/{base => rtc_base} rename (2/3)
I used a command like this to update the paths:
perl -pi -e "s/webrtc\/base/webrtc\/rtc_base/g" `find webrtc/rtc_base -name "*.cc" -o -name "*.h"`

BUG=webrtc:7634
NOPRESUBMIT=True # cpplint errors that aren't caused by this CL.

Review-Url: https://codereview.webrtc.org/2969623003
Cr-Commit-Position: refs/heads/master@{#18870}
2017-06-30 20:42:44 +00:00
VladimirTechMan
26afe214ad Properly export the symbols of video frame-buffer classes for link-time
Linking external ObjC / Swift apps fails when the app code is using any
of the new frame-buffer classes RTCI420Buffer, RTCMutableI420Buffer, or
RTCCVPixelBuffer. To fix, we need to add the appropriate attribute to
the classes (e.g. using the RTC_EXPORT macro).

BUG=None

Review-Url: https://codereview.webrtc.org/2961293002
Cr-Commit-Position: refs/heads/master@{#18840}
2017-06-29 16:11:10 +00:00
bdodson
06b47c520d Listen for Wifi-Direct networks and include them in the network list
BUG=webrtc:7708
TBR=magjed@webrtc.org

Review-Url: https://codereview.webrtc.org/2951803003
Cr-Commit-Position: refs/heads/master@{#18839}
2017-06-29 15:57:01 +00:00
peah
a9cc40b7d2 Allow an external audio processing module to be used in WebRTC
[This CL is a rebase of an original CL by solenberg@:
https://codereview.webrtc.org/2948763002/ which in turn was a
rebase of an original CL by peah@:
https://chromium-review.googlesource.com/c/527032/]

Allow an external audio processing module to be used in WebRTC

This CL adds support for optionally using an externally created audio
processing module in a peerconnection. The ownership is shared
between the peerconnection and the external creator of the module.

As part of this the internal ownership of the audio processing module
is moved from VoiceEngine to WebRtcVoiceEngine.

BUG=webrtc:7775

Review-Url: https://codereview.webrtc.org/2961723004
Cr-Commit-Position: refs/heads/master@{#18837}
2017-06-29 15:32:09 +00:00
Sami Kalliomäki
8d08a92c05 Do not copy I420 frames in the decoder when not necessary.
In most cases we can just return a frame referencing the buffer
returned by the decoder.

Bug: webrtc:7760
Change-Id: I0b42ab9662b39149e42a3c83adfd38a9d80e0e30
Reviewed-on: https://chromium-review.googlesource.com/544299
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18824}
2017-06-29 08:10:16 +00:00
Henrik Kjellander
c03627683f Reland "Move webrtc/{base => rtc_base}" (https://codereview.webrtc.org/2877023002)
Reland the base->rtc_base without adding stub headers (will be
done in follow-up CL). This preserves git blame history of all files.

BUG=webrtc:7634
NOTRY=True
TBR=kwiberg@webrtc.org

Change-Id: Iea3bb6f3f67b8374c96337b63e8f5aa3e6181012
Reviewed-on: https://chromium-review.googlesource.com/554611
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18821}
2017-06-29 06:04:25 +00:00
Henrik Kjellander
ec78f1cebc Revert "Move webrtc/{base => rtc_base}" (https://codereview.webrtc.org/2877023002)
Will reland in two different commits to preserve git blame history.

BUG=webrtc:7634
NOTRY=True
TBR=kwiberg@webrtc.org

Change-Id: I550da8525aeb9c5b8f96338fcf1c9714f3dcdab1
Reviewed-on: https://chromium-review.googlesource.com/554610
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18820}
2017-06-29 05:54:22 +00:00
zhihuang
a4c113afe1 Support building WebRTC without audio and video for IOS.
Reorganized the targets in webrtc/sdk/BUILD.gn so that the applications which use
WebRTC DataChannel only can depend on the "peerconnection_factory_no_media"
instead of "rtc_sdk_objc" to reduce the binary size.

Provided a no-media implementation of RTCPeerConnectionFactory using the macro
"HAVE_NO_MEDIA".

BUG=webrtc:7613

Review-Url: https://codereview.webrtc.org/2944643002
Cr-Commit-Position: refs/heads/master@{#18819}
2017-06-28 21:05:44 +00:00
Henrik Kjellander
6776518bea Move webrtc/{base => rtc_base}
This refactoring takes a careful approach to avoid rushing the change:
* stub headers are left in all the old locations of webrtc/base
* existing GN targets are kept and now just forward to the moved ones
  using public_deps.
The only exception to the above is the base_java target and its .java files,
which were moved to webrtc/rtc_base right away since it's not possible
to use public_deps for android_library.
To avoid breaking builds, a temporary Dummy.java file was added to
the new intermediate target in webrtc/rtc_base:base_java as well to avoid
hitting a GN assert in the android_library template.

The above approach should make the transition smooth without breaking
downstream.

A helper script was created (https://codereview.webrtc.org/2879203002/)
and was run like this:
stub-headers.py -s webrtc/base -d webrtc/rtc_base -i 7634
stub-headers.py -s webrtc/base/numerics -d webrtc/rtc_base/numerics -i 7634

Fixed invalid header guards in the following files:
webrtc/base/base64.h
webrtc/base/cryptstring.h
webrtc/base/event.h
webrtc/base/flags.h
webrtc/base/httpbase.h
webrtc/base/httpcommon-inl.h
webrtc/base/httpcommon.h
webrtc/base/httpserver.h
webrtc/base/logsinks.h
webrtc/base/macutils.h
webrtc/base/nattypes.h
webrtc/base/openssladapter.h
webrtc/base/opensslstreamadapter.h
webrtc/base/pathutils.h
webrtc/base/physicalsocketserver.h
webrtc/base/proxyinfo.h
webrtc/base/sigslot.h
webrtc/base/sigslotrepeater.h
webrtc/base/socket.h
webrtc/base/socketaddresspair.h
webrtc/base/socketfactory.h
webrtc/base/stringutils.h
webrtc/base/testbase64.h
webrtc/base/testutils.h
webrtc/base/transformadapter.h
webrtc/base/win32filesystem.h

Added new header guards to:
sslroots.h
testbase64.h

BUG=webrtc:7634
NOTRY=True
NOPRESUBMIT=True
R=kwiberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2877023002 .
Cr-Commit-Position: refs/heads/master@{#18816}
2017-06-28 18:58:10 +00:00