Commit Graph

459 Commits

Author SHA1 Message Date
e0897c043b Remove webrtc/sound/ subdir.
Now that DeviceManager and DeviceInfo are gone, this code is unused.

BUG=webrtc:5579

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

Cr-Commit-Position: refs/heads/master@{#12040}
2016-03-17 18:23:05 +00:00
292d658b20 Fix for intermittent tsan2 errors from SendRtpToRtpOnThread and SendSrtpToSrtpOnThread.
Changed the channel unittest to use locking when reading/writing the
result variable. To do this, I had to move the result into the thread
object, which in turn required me to properly handle the lifetime of the
thread object, since it cannot disappear while we want to read the
result.

It is still possible to have the result being written to a local
variable, but it will only be updated as the thread object is
destroyed. It is used to for the implementation of
CallOnThreadAndWaitForDone. The old CallOnThread is gone and replaced by
ScopedCallThread instead.

BUG=webrtc:5524

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

Cr-Commit-Position: refs/heads/master@{#12027}
2016-03-17 09:31:16 +00:00
2db1dbb2ca Remove references to build_with_libjingle and libjingle_java GYP variables.
These were removed a while back in https://codereview.webrtc.org/1457053003

TBR=tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11967}
2016-03-12 05:34:35 +00:00
5ed5ed953d Fix VideoToolbox backgrounding issues.
When the iOS application is not in the foreground, the hardware encoder and
decoder become invalidated. There doesn't seem to be a way to query their state
so we don't know they're invalid until we get an error code after an
encode/decode request. To solve the issue, we just don't encode/decode when the
app is not active, and reinitialize the encoder/decoder when the app is active
again.

Also fixes a leak in the decoder.

BUG=webrtc:4081

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

Cr-Commit-Position: refs/heads/master@{#11916}
2016-03-08 18:51:58 +00:00
e26e78784b Roll chromium_revision ee31124..508edd3 (378158:379249)
This includes renaming back libvpx_new to libvpx in
https://codereview.chromium.org/1765703002

Add symlink to src/mojo as workaround while figuring out how to fix
this upstream in Chromium. See webrtc:5629.

Change log: ee31124..508edd3
Full diff: ee31124..508edd3

Changed dependencies:
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/6d49157..708db16
* src/third_party/libvpx_new/source/libvpx: https://chromium.googlesource.com/webm/libvpx.git/+log/89cc682..None
* src/tools/swarming_client: https://chromium.googlesource.com/external/swarming.client.git/+log/a72f46e..df6e95e
DEPS diff: https://chromium.googlesource.com/chromium/src/+/ee31124..508edd3/DEPS

No update to Clang.

BUG=webrtc:5629
TBR=marpan@webrtc.org, stefan@webrtc.org,
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11879}
2016-03-04 22:39:32 +00:00
c8da45f329 Set prefer_fixed_point=1 for the MIPS architecture.
BUG=chromium:449603

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

Cr-Commit-Position: refs/heads/master@{#11853}
2016-03-03 09:28:56 +00:00
7d9112cbc4 Make it possible to exclude device management code from rtc_media target.
Chromium doesn't use the device managment code in webrtc/media
so we need a way to turn it off in order to eliminate Chromium's
src/third_party/libjingle/libjingle.gyp

BUG=webrtc:4256
NOTRY=True
TESTED=Trybots + successfully compiled with
GYP_DEFINES=include_internal_device_management=0 webrtc/build/gyp_webrtc
ninja -C out/Debug rtc_media

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

Cr-Commit-Position: refs/heads/master@{#11816}
2016-02-29 14:14:51 +00:00
0c74ae1e4d MB: Fix typo in device mixin.
In https://codereview.webrtc.org/1735593002/ there was a typo
(that the presubmit doesn't catch) that caused the signing arg
to be missing for GN.

BUG=589510
TBR=dpranke@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#11757}
2016-02-25 07:41:17 +00:00
861dcb7edd MB: Add initial mb_config.pyl configuration file.
This is only needed and used by the iOS GN bots so far, but
more bots will start using this in the future as we'll be migrating
from GYP to GN at some point.

Buildbot configuration is done in
https://codereview.chromium.org/1730353002

BUG=589510
R=dpranke@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#11752}
2016-02-24 20:36:53 +00:00
71d9721bdc iOS: Fix JSON for tryserver configurations.
Use boolean values instead of strings. With this landed
https://codereview.chromium.org/1723033003/ can be reverted.

BUG=498746
R=smut@google.com

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

Cr-Commit-Position: refs/heads/master@{#11724}
2016-02-23 20:16:04 +00:00
eee7d9e8e8 iOS: Promote iOS simulator testing to main waterfall.
* Move JSON files from client.webrtc.fyi -> client.webrtc to match
  to-be-switched builders (requires buildbot-side changes + master restart).
* Remove Goma configs from trybots (previously done for the commitbots).

BUG=chromium:588590
TBR=smut@google.com

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

Cr-Commit-Position: refs/heads/master@{#11707}
2016-02-22 11:49:08 +00:00
ada8fe5c00 iOS: Don't run modules_unittests on iOS simulator
This is the only failing test of the currently deployed
at the iOS Simulator bots. Let's disable it so we can promote
the passing tests to the main waterfall and the trybots.

BUG=4755
TBR=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11703}
2016-02-22 06:34:38 +00:00
0013dcc0c1 Simplify SSRC usage inside ViEEncoder.
Since SSRCs can no longer change on the fly, SSRC code can be made a lot
simpler (and faster). Resulting code has less and shorter locking.

BUG=webrtc:5494
R=danilchap@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11691}
2016-02-19 19:42:30 +00:00
ee75c7a78f Compile rtc_base_objc for Mac.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11661}
2016-02-17 22:45:00 +00:00
0206000a66 iOS: Add resource files for tests and implement OutputPath
With this change the following tests have been successfully
passing in the iOS Simulator for iPhone 5 and iOS 9:
* audio_decoder_unittests
* common_video_unittests
* modules_tests
* rtc_api_objc_tests
* rtc_pc_unittests
* system_wrappers_unittests
* voice_engine_unittests

The modules_unittests and common_audio_unittests are
handled in https://codereview.webrtc.org/1698033002/

BUG=webrtc:4755
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11646}
2016-02-17 06:06:17 +00:00
25d6a0fb69 Adding TSan suppressions temporarily to fix some flaky unit tests.
BUG=webrtc:5524
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11643}
2016-02-17 00:54:59 +00:00
e829f58928 Rename libjingle_p2p_unittest -> rtc_pc_unittests
BUG=webrtc:5419
R=pthatcher@webrtc.org
TBR=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11619}
2016-02-15 08:36:44 +00:00
9b8df25c73 Move talk/session/media -> webrtc/pc
The libjingle_p2p target is renamed to rtc_pc.
The libjingle_p2p_unittest test will be renamed in a
separate follow-up CL, to make it possible to run all
trybots successfully for this CL.

BUG=webrtc:5419
R=deadbeef@webrtc.org, pthatcher@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11592}
2016-02-12 05:48:10 +00:00
d3d8b6720a iOS: Remove MB and Goma for GYP builders.
This reverts "iOS: Add mb_type config for GYP builders."
and also removes Goma from these builders, as it will not work for WebRTC
since MB's GYP mode is hardcoded to use gyp_chromium.
MB should be working for GN since it's a stand-alone tool.

Goma doesn't work since $(goma_dir) in the JSON throws an error during
compile. So let's turn off Goma for these bots for now.

BUG=chromium:498746
NOTRY=True
TBR=smut@google.com

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

Cr-Commit-Position: refs/heads/master@{#11578}
2016-02-11 14:48:08 +00:00
a7584c9f75 iOS: Add mb_type config for GYP builders.
Our first build that passed the configuration reading step
failed because of the $(goma_dir) variable. I compared the JSON and
the recipes between ours and the builders in chromium.mac and this was
the only thing I could easily identify, so I'm going to try it out.

Example failing build: https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug/builds/97

BUG=chromium:498746
NOTRY=True
TBR=smut@google.com

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

Cr-Commit-Position: refs/heads/master@{#11573}
2016-02-11 13:36:05 +00:00
569cf942c0 PRESUBMIT: Add check for JSON parse errors + fix JSON
The PRESUBMIT code is basically a stripped-down copy of the code in
Chromium's src/PRESUBMIT.py.

BUG=chromium:498746
TESTED=I verified with 'git cl presubmit' that the existing
error was found. Then I ran it again after fixing it, with
presubmit passing.
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11572}
2016-02-11 13:03:05 +00:00
a75339c40d Set rtc_prefer_fixed_point to true on arm64 to match GYP
BUG=None
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11555}
2016-02-10 18:21:11 +00:00
c6344aac47 Remove java_home GYP variable from webrtc/build/common.gypi
The java_home variable is no longer used since
https://codereview.webrtc.org/1652123002 so it can be removed.
This is also needed to make it possible to roll
https://codereview.webrtc.org/1610243002/ into Chromium.

TBR=perkj@webrtc.org
BUG=webrtc:5418
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11548}
2016-02-10 12:27:33 +00:00
15583c19d7 Move talk/app/webrtc to webrtc/api
The previously disabled warnings that were inherited from
talk/build/common.gypi are now replaced by target-specific disabling
of only the failing warnings. Additional disabling was needed since the stricter
compilation warnings that applies to code in webrtc/.

License headers will be updated in a follow-up CL.

Other modifications:
* Updated the header guards.
* Sorted the includes using chromium/src/tools/sort-headers.py
  except for these files:
  talk/app/webrtc/peerconnectionendtoend_unittest.cc
  talk/app/webrtc/java/jni/androidmediadecoder_jni.cc
  talk/app/webrtc/java/jni/androidmediaencoder_jni.cc
  webrtc/media/devices/win32devicemanager.cc

The HAVE_SCTP define was added for the peerconnection_unittests target
in api_tests.gyp.

I also checked that none of
SRTP_RELATIVE_PATH
HAVE_SRTP
HAVE_WEBRTC_VIDEO
HAVE_WEBRTC_VOICE
were used by the talk/app/webrtc code.

For Chromium, the following changes will need to be applied to the roll CL that updates the
DEPS for WebRTC and libjingle:
https://codereview.chromium.org/1615433002

BUG=webrtc:5418
NOPRESUBMIT=True
R=deadbeef@webrtc.org, pthatcher@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11545}
2016-02-10 09:53:26 +00:00
7ae5e52d0a Revert of Analyze support in gyp_webrtc (patchset #1 id:1 of https://codereview.webrtc.org/1369683004/ )
Reason for revert:
I've decided to not aim for implementing analyze and focus on getting Swarming done instead, so I'm cleaning this up.

Original issue's description:
> Analyze support in gyp_webrtc
>
> BUG=chromium:482463
> TESTED=Manually tested using the JSON files attached to https://code.google.com/p/chromium/issues/detail?id=482463#c2 and:
> webrtc/build/gyp_webrtc --analyzer nothing-files.json nothing-files-RESULT.json
> webrtc/build/gyp_webrtc --analyzer everything-files.json everything-files-RESULT.json
> webrtc/build/gyp_webrtc --analyzer test_support_unittests-files.json test_support_unittests-files-RESULT.json
> Then I verified the result-json contained the expected output.
>
> R=phoglund@webrtc.org
>
> Committed: https://crrev.com/8108764552e20d657c0a6f75a6200b93de486659
> Cr-Commit-Position: refs/heads/master@{#10097}

TBR=phoglund@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=chromium:482463

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

Cr-Commit-Position: refs/heads/master@{#11532}
2016-02-09 07:46:39 +00:00
cd0e4751b2 Create QuicSession
This CL depends on the unofficial libquic (https://github.com/devsisters/libquic), with subtle modifications.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11530}
2016-02-09 01:35:55 +00:00
62756ee411 Default build flag |rtc_use_h264| to |proprietary_codecs|
if not on Android/iOS.

This is a re-land of https://codereview.webrtc.org/1674103002/.
The reason Chromium FYI turned red was due to deps not
being relative. See kjellander's CL:
https://codereview.webrtc.org/1681493002/.

This means proprietary_codecs=1 && ffmpeg_branding=Chrome
can be used to enable this H.264 enc/dec implementation
instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
This is used by both Chromium trybots (but not default
Chromium build) and offical Chrome build, meaning we will
be able to test and enable H.264 in chromium.

This change would otherwise be enough to launch this
feature in Chrome, but because we do not want to do that
before we have chromium browser tests and are ready to flip
the switch, this CL prevents chromium from using H.264 just
yet: https://codereview.chromium.org/1641163002/ (landing
this after that CL).

Third time's the charm?

TBR=kjellander@webrtc.org
BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11523}
2016-02-08 10:57:06 +00:00
a81f6a3fc0 Revert of Default build flag |rtc_use_h264| to |proprietary_codecs| if not on Android/iOS. (patchset #1 id:1 of https://codereview.webrtc.org/1674103002/ )
Reason for revert:
Chromium FYI turns red.

Original issue's description:
> Default build flag |rtc_use_h264| to |proprietary_codecs|
> if not on Android/iOS.
>
> This means proprietary_codecs=1 && ffmpeg_branding=Chrome
> can be used to enable this H.264 enc/dec implementation
> instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
> This is used by both Chromium trybots (but not default
> Chromium build) and offical Chrome build, meaning we will
> be able to test and enable H.264 in chromium.
>
> This change would otherwise be enough to launch this
> feature in Chrome, but because we do not want to do that
> before we have chromium browser tests and are ready to flip
> the switch, this CL prevents chromium from using H.264 just
> yet: https://codereview.chromium.org/1641163002/ (landing
> this after that CL).
>
> Note: This is a re-land of
> https://codereview.webrtc.org/1660403004/. Reverting it
> was not necessary.
>
> TBR=kjellander@webrtc.org
> BUG=chromium:500605, chromium:468365
>
> Committed: https://crrev.com/10b9dd7ab1a8c3f80b2d2924be658e43131a4fbe
> Cr-Commit-Position: refs/heads/master@{#11517}

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11518}
2016-02-07 23:05:26 +00:00
10b9dd7ab1 Default build flag |rtc_use_h264| to |proprietary_codecs|
if not on Android/iOS.

This means proprietary_codecs=1 && ffmpeg_branding=Chrome
can be used to enable this H.264 enc/dec implementation
instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
This is used by both Chromium trybots (but not default
Chromium build) and offical Chrome build, meaning we will
be able to test and enable H.264 in chromium.

This change would otherwise be enough to launch this
feature in Chrome, but because we do not want to do that
before we have chromium browser tests and are ready to flip
the switch, this CL prevents chromium from using H.264 just
yet: https://codereview.chromium.org/1641163002/ (landing
this after that CL).

Note: This is a re-land of
https://codereview.webrtc.org/1660403004/. Reverting it
was not necessary.

TBR=kjellander@webrtc.org
BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11517}
2016-02-07 22:40:46 +00:00
1c24a6d5ca Set use_gtk=0 as default for Chromium builds.
The files that are built when use_gtk==1 are not included in the Chromium build
(webrtc/media/devices/gtkvideorenderer.cc and webrtc/media/devices/gtkvideorenderer.h)
so to preserve previous behavior in Chromium before/after
https://codereview.webrtc.org/1587193006, this is the right thing to do.

The reason this was discovered was that a Chrome OS build started failing, since
it was lacking the gtk+2.0 package.

NOTRY=True
BUG=chromium:584722
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11510}
2016-02-05 21:10:46 +00:00
c09525a547 Revert of Default build flag |rtc_use_h264| to |proprietary_codecs| if not on Android/iOS. (patchset #1 id:1 of https://codereview.webrtc.org/1660403004/ )
Reason for revert:
Trybots red? Don't have time to intvestigate

Original issue's description:
> Default build flag |rtc_use_h264| to |proprietary_codecs|
> if not on Android/iOS.
>
> This means proprietary_codecs=1 && ffmpeg_branding=Chrome
> can be used to enable this H.264 enc/dec implementation
> instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
> This is used by both Chromium trybots (but not default
> Chromium build) and offical Chrome build, meaning we will
> be able to test and enable H.264 in chromium.
>
> This change would otherwise be enough to launch this
> feature in Chrome, but because we do not want to do that
> before we have chromium browser tests and are ready to flip
> the switch, this CL prevents chromium from using H.264 just
> yet: https://codereview.chromium.org/1641163002/ (landing
> this after that CL).
>
> BUG=chromium:500605, chromium:468365
>
> Committed: https://crrev.com/7cd94f66ebfe5bf808d7dcb8da069d35f4a2b31a
> Cr-Commit-Position: refs/heads/master@{#11506}

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11508}
2016-02-05 19:02:47 +00:00
50fca62809 Remove fake cricket::VideoCapturer devices.
Changes rtc_media to depend on rtc_base_approved instead of rtc_base.

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11507}
2016-02-05 18:40:44 +00:00
7cd94f66eb Default build flag |rtc_use_h264| to |proprietary_codecs|
if not on Android/iOS.

This means proprietary_codecs=1 && ffmpeg_branding=Chrome
can be used to enable this H.264 enc/dec implementation
instead of rtc_use_h264=1 && ffmpeg_branding=Chrome.
This is used by both Chromium trybots (but not default
Chromium build) and offical Chrome build, meaning we will
be able to test and enable H.264 in chromium.

This change would otherwise be enough to launch this
feature in Chrome, but because we do not want to do that
before we have chromium browser tests and are ready to flip
the switch, this CL prevents chromium from using H.264 just
yet: https://codereview.chromium.org/1641163002/ (landing
this after that CL).

BUG=chromium:500605, chromium:468365

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

Cr-Commit-Position: refs/heads/master@{#11506}
2016-02-05 18:31:26 +00:00
a96e2d77cb Move talk/media to webrtc/media
I removed the 'libjingle' target in talk/libjingle.gyp and replaced
all users of it with base/base.gyp:rtc_base. It seems the jsoncpp
and expat dependencies were not used by it's previous references.

The files in talk/media/testdata were uploaded to Google Storage and
added .sha1 files in resources/media instead of simply moving them.

The previously disabled warnings that were inherited from
talk/build/common.gypi are now replaced by target-specific disabling
of only the failing warnings. Additional disabling was needed since the stricter
compilation warnings that applies to code in webrtc/.

License headers will be updated in a follow-up CL in order to not
break Git history.

Other modifications:
* Updated the header guards.
* Sorted the includes using chromium/src/tools/sort-headers.py
  except for these files:
  talk/app/webrtc/peerconnectionendtoend_unittest.cc
  talk/app/webrtc/java/jni/androidmediadecoder_jni.cc
  talk/app/webrtc/java/jni/androidmediaencoder_jni.cc
  webrtc/media/devices/win32devicemanager.cc.
* Unused GYP reference to libjingle_tests_additional_deps was removed.
* Removed duplicated GYP entries of
  webrtc/base/testutils.cc
  webrtc/base/testutils.h

The HAVE_WEBRTC_VIDEO and HAVE_WEBRTC_VOICE defines were used by only talk/media,
so they were moved to the media.gyp.

I also checked that none of
EXPAT_RELATIVE_PATH,
FEATURE_ENABLE_VOICEMAIL,
GTEST_RELATIVE_PATH,
JSONCPP_RELATIVE_PATH,
LOGGING=1,
SRTP_RELATIVE_PATH,
FEATURE_ENABLE_SSL,
FEATURE_ENABLE_VOICEMAIL,
FEATURE_ENABLE_PSTN,
HAVE_SCTP,
HAVE_SRTP,
are used by the talk/media code.

For Chromium, the following changes will need to be applied to the roll CL that updates the
DEPS for WebRTC and libjingle: https://codereview.chromium.org/1604303002/

BUG=webrtc:5420
NOPRESUBMIT=True
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11495}
2016-02-05 07:52:35 +00:00
15ba6242ad Revert of Rename iOS test specs to match buildbot names. (patchset #1 id:1 of https://codereview.webrtc.org/1665783002/ )
Reason for revert:
*sigh* that didn't work, the reading of the JSON file fails (which I was suspecting it would).
Example: https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug/builds/17/steps/steps/logs/stdio

I'll rename all the iOS bots instead since I think it's reasonably rare we link to their logs, so there won't be that many broken URLs.

Original issue's description:
> Rename iOS test specs to match buildbot names.
>
> I really prefer not using spaces in any filenames but
> if we were to rename all the bots all existing URLs to builds
> would stop working (or we'd loose the build history), so I'd
> like to see if this works first.
> The bots that hits the errors are the new ones I'm experimenting
> with in client.webrtc.fyi. Example failing build:
> https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug
>
> BUG=chromium:498746
> NOTRY=True
> TBR=phoglund@webrtc.org
>
> Committed: https://crrev.com/86512b401ecee4b5e18ee6fbec28ec9c1d0ead9b
> Cr-Commit-Position: refs/heads/master@{#11473}

TBR=phoglund@webrtc.org
NOTRY=True
NOPRESUBMIT=True
BUG=chromium:498746

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

Cr-Commit-Position: refs/heads/master@{#11489}
2016-02-04 14:13:51 +00:00
86512b401e Rename iOS test specs to match buildbot names.
I really prefer not using spaces in any filenames but
if we were to rename all the bots all existing URLs to builds
would stop working (or we'd loose the build history), so I'd
like to see if this works first.
The bots that hits the errors are the new ones I'm experimenting
with in client.webrtc.fyi. Example failing build:
https://build.chromium.org/p/client.webrtc.fyi/builders/iOS64%20Simulator%20Debug

BUG=chromium:498746
NOTRY=True
TBR=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11473}
2016-02-03 12:41:10 +00:00
8e85a3f39a iOS buildbot configurations.
This will make it possible for WebRTC to use the same buildbot
scripts as Chrome's iOS bots.
Buildbot changes are done in https://codereview.chromium.org/1659163003/

BUG=chromium:498746
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11468}
2016-02-03 08:06:06 +00:00
c5a39c2591 H264: Thread-safe InitializeFFmpeg. Flag to control if InitializeFFmpeg should be called.
New flag: rtc_initialize_ffmpeg, default value = !build_with_chromium.

In WebRTC standalone we initialize FFmpeg by default, in Chromium we don't by default.
Chromium is an external project that also use FFmpeg. If both projects do FFmpeg initialization code things will break. The flag makes it possible for other external projects than chromium to decide whether or not WebRTC should initialize FFmpeg.

BUG=chromium:500605, chromium:468365, webrtc:5427

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

Cr-Commit-Position: refs/heads/master@{#11456}
2016-02-02 10:30:57 +00:00
bab934bffe H.264 video codec support using OpenH264 (http://www.openh264.org/) for encoding and FFmpeg (https://www.ffmpeg.org/) for decoding.
It works on all platforms except Android and iOS (FFmpeg limitation).

Implemented behind compile time flags, off by default.
The plan is to have it enabled in Chrome (see bug), but not in Chromium/webrtc by default.

Flags to turn it on:
- rtc_use_h264 = true
- ffmpeg_branding = "Chrome" (or other brand that includes H.264 decoder)

Tests using H264:
- video_loopback --codec=H264
- screenshare_loopback --codec=H264
- video_engine_tests (EndToEndTest.SendsAndReceivesH264)

NOTRY=True
BUG=500605, 468365
BUG=https://bugs.chromium.org/p/webrtc/issues/detail?id=5424

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

Cr-Commit-Position: refs/heads/master@{#11390}
2016-01-27 09:36:07 +00:00
902c03e724 rtc_use_h264 flag (replacing use_third_party_h264 flag) for building OpenH264/FFmpeg, false by default but can be overridden in supplement.gypi and build_overrides/webrtc.gni.
BUG=468365
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11333}
2016-01-21 11:34:47 +00:00
8a2c31d208 Make it possible to run peerconnection_unittests on Android.
- renamed libjingle_peerconnection_unittest to peerconnection_unittest to circumvent cr issue http://crbug.com/543820

TEST=On an android build webrtc/build/android/test_runner.py gtest -s peerconnection_unittests --verbose -t 900
BUG=webrtc:2365,543820
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11304}
2016-01-19 14:20:07 +00:00
0edb05b344 Declare that rent_a_codec depends on the audio codecs
That these declarations were missing was a bug, which apparently
didn't actually cause build problems in either Chromium or WebRTC
standalone. (Presumably, because rent_a_codec was always linked
together with other build targets that did declare such dependencies.)

BUG=webrtc:5435

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

Cr-Commit-Position: refs/heads/master@{#11303}
2016-01-19 13:54:31 +00:00
f8c2baca4e Add a gyp/gn variable for whether to use iLBC or not
BUG=webrtc:5415

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

Cr-Commit-Position: refs/heads/master@{#11291}
2016-01-18 14:38:40 +00:00
292e192f17 Add build_protobuf variable.
This makes it possible to use protobuffers with
an external protobuf library instead of the one that
comes with the WebRTC code.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11236}
2016-01-13 13:47:07 +00:00
a9a1d2acaf H.264: Default flags and pulling in openh264 and ffmpeg.
Defining use_third_party_h264 directly, and indirectly defining use_openh264 (from third_party/openh264) and ffmpeg_branding (from third_party/ffmpeg).
These will be used in a follow-up CL that adds an encoder and decoder implementation.
The flags are added in this CL so that they can be used by trybots/waterfall bots in GN without "Build argument had no effect" errors. Equivalent GYP changes are also added.

BUG=468365

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

Cr-Commit-Position: refs/heads/master@{#11204}
2016-01-11 18:19:06 +00:00
37ebcf0ce5 Reland "Add APK targets to build libjingle tests for Android."
patchset #10 id:180001 of https://codereview.webrtc.org/1511633002/

This reverts commit bc14164aad254e72ce4d1e381b912b7d3acf5391.

We have made more preparations downstream, so this should work now. Original CL by perkj@.

BUG=webrtc:2365
The work started from the work by kjellander@ in https://codereview.webrtc.org/1413663003/

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

Cr-Commit-Position: refs/heads/master@{#11186}
2016-01-08 13:05:01 +00:00
bc14164aad Revert of Add APK targets to build libjingle tests for Android. (patchset #10 id:180001 of https://codereview.webrtc.org/1511633002/ )
Reason for revert:
Breaks bots.

Original issue's description:
> Add APK targets to build libjingle_peerconnection_unittests for Android.
>
> BUG=webrtc:2365
>
> The work started from the work by kjellander@ in https://codereview.webrtc.org/1413663003/
>
> Committed: https://crrev.com/a78c0211fd50369a75a962385db6163bd8ded239
> Cr-Commit-Position: refs/heads/master@{#11007}

TBR=kjellander@webrtc.org,tommi@webrtc.org,perkj@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:2365

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

Cr-Commit-Position: refs/heads/master@{#11009}
2015-12-14 12:31:22 +00:00
a78c0211fd Add APK targets to build libjingle_peerconnection_unittests for Android.
BUG=webrtc:2365

The work started from the work by kjellander@ in https://codereview.webrtc.org/1413663003/

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

Cr-Commit-Position: refs/heads/master@{#11007}
2015-12-14 10:41:37 +00:00
bc32ab458b Remove 'video_engine_core_unittests' binary.
Merges tests into 'video_engine_tests' to reduce the number of test
targets.

BUG=webrtc:1695
R=kjellander@webrtc.org, phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10891}
2015-12-04 09:59:02 +00:00
5663b4fa9a iOS: Set enable_protobuf=1 by default.
BUG=webrtc:5235
R=tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10724}
2015-11-20 08:37:50 +00:00