Commit Graph

8673 Commits

Author SHA1 Message Date
0e6e4d2ff2 Reland "Converting five tests to use new AudioCoding interface" (r7258)
This CL reverts r7264. The problem was that iSAC-SWB and iSAC-FB are
not supported on android. These are now disabled.

BUG=3520
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7273 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 12:05:34 +00:00
4f6f22f0c6 Reland (rev 7259) "Convert AcmReceiverTest to new AudioCoding interface"
Was reverted by mistake in 7260. Actual culprit was 7258.

BUG=3520
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7272 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 11:37:57 +00:00
ea29787df0 audio_processing/agc: Solved building with AGC_DEBUG + few style changes
webrtc did not build if AGC_DEBUG was turned on. This CL fixes that. Has no impact on performance since it is development/debug code.

* Name change to WEBRT_AGC_DEBUG_DUMP
* Added build flag agc_debug_dump to .gypi
* Added missing "%d" in printf at two places
* Some line length related style changes

Tested audioproc and modules_unittests with GYP_DEFINES=agc_debug_dump=1 webrtc/build/gyp_webrtc

BUG=N/A
TESTED=locally and trybots
R=aluebs@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7271 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 11:21:39 +00:00
c569a49a3d Unit tests for SSLAdapter
R=juberti@webrtc.org

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

Patch from Manish Jethani <manish.jethani@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7269 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 05:56:44 +00:00
dc0b37dcb1 modules_unittests: Turned on ApmTest.Process test for Android
The reason why ApmTest.Process breaks on Android is that two metrics over counts. I decided to add an offset and a different slack to the EXPECT_NEAR() calls that are affected. I think this is a reasonable approach since we have no more than two failing metrics. If any feature change that will make another metric fail, we should go back to the desk and find another way of solving this.

BUG=114
TESTED=locally on Nexus 7 and trybots
R=aluebs@webrtc.org, andrew@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7268 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 05:03:44 +00:00
a3c4d4dd2c Revert 7266 "WebRtcIsac_Encode and WebRtcIsacfix_Encode: Type en..."
This was causing apparently legitimate failures on the following bots:
http://chromegw/i/client.webrtc/builders/Linux64%20Release%20%5Blarge%20tests%5D/builds/2599
http://chromegw/i/client.webrtc/builders/Android%20Tests%20%28KK%20Nexus5%29%28dbg%29/builds/2023
http://chromegw/i/client.webrtc/builders/Android%20Tests%20%28JB%20Nexus7.2%29%28dbg%29/builds/1825
http://chromegw/i/client.webrtc/builders/Android%20Tests%20%28KK%20Nexus5%29/builds/2013
http://chromegw/i/client.webrtc/builders/Android%20Tests%20%28JB%20Nexus7.2%29/builds/1795

> WebRtcIsac_Encode and WebRtcIsacfix_Encode: Type encoded stream as uint8_t
> 
> We have to fix both at once, since there's a macro that calls one of
> them or the other.
> 
> BUG=909
> R=andrew@webrtc.org, bjornv@webrtc.org, henrik.lundin@webrtc.org, minyue@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/19229004

TBR=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7267 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-23 01:32:57 +00:00
8c5740b485 WebRtcIsac_Encode and WebRtcIsacfix_Encode: Type encoded stream as uint8_t
We have to fix both at once, since there's a macro that calls one of
them or the other.

BUG=909
R=andrew@webrtc.org, bjornv@webrtc.org, henrik.lundin@webrtc.org, minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7266 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 23:04:14 +00:00
99e404c84a Revert "Converting five tests to use new AudioCoding interface" (rev 7258).
This time reverts the Cl that actually broke the tests. Got the wrong rev before. :/

BUG=3520
TESTED=Locally with CHECKOUT_SOURCE_ROOT=`pwd` build/android/test_runner.py gtest -s modules_unittests --gtest_filter=AcmReceiverBitExactness.8kHzOutput --verbose --isolate-file-path=webrtc/modules/modules_unittests.isolate
TBR=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7264 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 15:49:56 +00:00
35850ff71f Adding test file path as argument of the rtcBot run command's arguments.
The new command to run rtcBot is:-
node test.js <bot_type> <test_file_path>

R=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7263 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 15:24:56 +00:00
64a2f10f4b Remove Get/SetNetEQPlayoutMode APIs
These are not used anymore.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7262 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 14:30:10 +00:00
07ca949346 Adding webrtc_video_streaming test
This test is streaming video and audio between two bots using webrtc js api.

R=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7261 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 13:52:39 +00:00
c570761288 Revert "Convert AcmReceiverTest to new AudioCoding interface" (rev 7258).
Breaks android modules_unittests tests by crashing on AcmReceiverBitExactness.8kHzOutput
Was already visible on "git cl try" before submitting on https://webrtc-codereview.appspot.com/23719004/#

BUG=3520
R=kwiberg@webrtc.org, henrik.lundin@webrtc.org
TBR=kwiberg@webrtc.org, henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7260 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 13:18:34 +00:00
cfe073539c Convert AcmReceiverTest to new AudioCoding interface
In order to maintain test coverage for the old API (AudioCodingModule)
during the transition period, the old test was copied to
AcmReceiverTestOldApi.

Modified and extended AudioCoding and the implementation to make the
test compile and run.

Created a converter method from new to old config struct

BUG=3520
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7259 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 12:10:44 +00:00
eb1de5cb72 Converting five tests to use new AudioCoding interface
The converted tests are:
AcmIsacMtTest
AcmReceiverBitExactness
AcmSenderBitExactness
AudioCodingModuleMtTest
AudioCodingModuleTest

In order to maintain test coverage for the old API (AudioCodingModule)
during the transition period, the old tests were copied and given the
suffix OldApi:
AcmIsacMtTestOldApi
AcmReceiverBitExactnessOldApi
AcmSenderBitExactnessOldApi
AudioCodingModuleMtTestOldApi
AudioCodingModuleTestOldApi

BUG=3520
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7258 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 12:07:12 +00:00
bdfdc96b22 Clang-format ns_core
BUG=webrtc:3811
R=bjornv@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7257 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 10:59:46 +00:00
759982d357 Set number of temporal layers for VideoSendStream.
Introduces a mapping between EncoderConfig and VideoCodec. More
specifically it also removes an assert that there should be no set
temporal layers in the new API, which is wrong and was temporary.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7256 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 09:32:46 +00:00
612171527e Ensure that NetEq recovers after a large timestamp jump
Before this change it could happen that a large jump in timestamp (a
jump not correlated to wall-clock change) caused the audio to go silent
without recovering. The reason was that all incoming packets after the
jump were considered too old compared to the last decoded packet, and
were deleted. With CL changes two things:

1. If the only available packet in the buffer is an old packet, NetEq
will do Expand instead of immediate reset. This is to avoid that one
late packet triggers a reset.

2. Old packets are discarded only when the decision to decode a packet
has been taken. This is to allow the buffer to grow and eventually
flush if no decodable packet has been found for some time.

This CL also includes a new unit test for this situation.

BUG=3785
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7255 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 08:30:07 +00:00
88772874da Disabled several rtc_unittests so the tests can be turned on in the waterfall
BUG=3836
R=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7254 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-22 07:30:48 +00:00
fbf3bfe172 Separate between Analyze and Process in NS
Filled the empty analyze API, separating the noise estimation from the process API.
No formatting fixes or extra refactoring has been done, to make the review process easier.
This patch has been tested for bit-exactness over the whole QA set in every aggressiveness.

BUG=webrtc:3811
R=bjornv@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7243 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 15:18:59 +00:00
95705602bd Additional disabled tests in rtc_unittests.
It appears https://review.webrtc.org/27559004/
not enough to get rtc_unittests up and running.
It's currently failing on Linux 32, Linux ASan
and Win SyzyASan bots.

BUG=3836
TBR=henrike@webrtc.org
TEST=Locally passing rtc_unittests on Linux Release
build with asan=1 and lsan=1 in GYP_DEFINES.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7242 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 14:49:37 +00:00
34ac7762e0 Additional disabled tests in rtc_unittests.
It appears https://review.webrtc.org/30449004 was
not enough to get rtc_unittests up and running.

BUG=3836
TEST=Locally passing rtc_unittests on Mac Debug.
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7241 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 13:47:47 +00:00
fded02c164 base: disabled several base tests on Mac so that rtc_unittests can be turned back on
BUG=N/A
R=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7240 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 13:10:10 +00:00
bbe0a8517d Config struct for VideoEncoder.
Used for config parameters in common between multiple codecs as well as
the encoder-specific pointer. In particular this contains content mode
(realtime video vs. screenshare).

BUG=1788
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7239 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 12:30:25 +00:00
02686115cc Re-enable missing android tests disabled due to issue 3770.
BUG=3770
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7238 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 08:24:19 +00:00
2036a7bb40 Clean directx_sdk_path as it is already defined in base/common.gypi
R=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7237 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 08:14:12 +00:00
5ca6008236 Creating a test helper class TimestampJumpRtpGenerator
This class provides a way to test with an RTP sequence that make an
arbitrary jump in the timestamp series.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7236 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 07:14:31 +00:00
143ffa4bd5 Update iOS video capture to use non-deprecated APIs.
BUG=3626
R=glaznev@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7229 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 21:44:54 +00:00
c3091a6c26 Remove the 'webrtc_test_video_render_dependencies' target.
This target is no longer needed and is causing linking errors on XCode.

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

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

Patch from Alexandre Gouaillard <agouaillard@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7226 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 17:22:18 +00:00
ba737cba1a Do not require synchronization access on the thread if called from rtc::Thread::WrapCurrent.
The synchronization access is unnecessary for rtc::Thread::WrapCurrent (called from JingleThreadWrapper) since JingleThreadWrapper never calls rtc::Thread::Stop or rtc::Thread::Join. Failing to get the access caused crashes in Chrome since rtc::Thread::Current will be NULL when rtc::Thread::WrapCurrent fails.

rtc::ThreadManager::WrapCurrentThread still requires the synchronization access, since I am not sure if the callers (e.g. the plugin) depends on it.

BUG=crbug/413853
R=juberti@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7224 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 16:45:21 +00:00
611606297e Trying to fix Chrome FYI bots.
BUG=3831
TBR=perkj

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7223 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 15:50:05 +00:00
6cd6ba8ae0 Expose VP8/H264 defaults through video_encoder.h.
Reduces code duplication quite a bit, these identical defaults were set
in quite a few different places.

R=mflodman@webrtc.org, stefan@webrtc.org
BUG=3070

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7220 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 12:42:28 +00:00
c7134f8286 Fix proper deps in BUILD.gn files.
This should make Chrome GN bots happy.

R=kjellander@webrtc.org
TBR=kjellander@webrtc.org
BUG=3768, 3770

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7219 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 10:06:54 +00:00
fda2c2e810 Add Analyze API to NS
This adds an empty API.
In a next CL I will separate the noise estimation from the Process API and fill this function.

BUG=webrtc:3811
R=bjornv@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7218 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 09:54:06 +00:00
ab071daab8 Split video_render_module implementation into default and internal implementation.
Targets must now link with implementation of their choice instead of at "gyp"-time.

Targets linking with libjingle_media:
- internal implementation when build_with_chromium=0, default otherwise.

Targets linking with default render implementation:
- video_engine_tests
- video_loopback
- video_replay
- anything dependent on webrtc_test_common

Targets linking with internal render implementation:
- vie_auto_test
- video_render_tests
- libwebrtcdemo-jni
- video_engine_core_unittests

GN changes:
- Not many since there is almost no test definitions.

Work-around for chromium:
- Until chromium has updated libpeerconnection to link with video_capture_impl and video_render_impl, webrtc target automatically depends on it. This should fix the FYI bots and not require a webrtc roll to fix.

Re-enable android tests by reverting 7026 (some tests left disabled).

TESTED: passes all the bots. If this inadvertently breaks a target please fix the linking rules so the target has the desired implementation linked in.
BUG=3770
R=kjellander@webrtc.org, pbos@webrtc.org
TBR=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7217 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 08:58:15 +00:00
369a637ac8 Implemented Network::GetBestIP() selection logic as following.
1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7200

Committed: https://code.google.com/p/webrtc/source/detail?r=7201

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7216 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 22:37:29 +00:00
d91608dd2d The 2x2 black frame on windows when the shared window is minimized caused an assert from vp8 and may lead to memroy corruption.
It's changed to 1x1 to match the behavior on Mac. The Chromium code will detect the size and convert it to a black frame in the original size.

TBR=sergeyu@chromium.org
BUG=crbug/414908

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7214 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 16:12:49 +00:00
5422e724d3 Modifying NetEqExternalDecoderTest
This change is in preparation for extending the test with another
fixture that inherits from NetEqExternalDecoderTest.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7213 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 15:09:08 +00:00
5a098c51ea Refactor VP8 de-packetizer.
It's duplicated to parse VP8 RTP packet at the moment. We firstly call
RTPPayloadParser functions to save parsed information in RTPPayload
structure, then copy them to RTP header.

This CL removes RTPPayloadParser class and directly saves parsed data in
RTP header.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7211 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 11:58:20 +00:00
3bd5603b18 Revert "Disable video_capture_tests for Android." (revision 7023).
BUG=3768
R=glaznev@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7210 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 11:56:25 +00:00
a74eda1b6f Split video_capture_module specific implementation (external vs internal capture)
into its own targets. Dependencies must link directly with the desired one.

Targets linking with libjingle_media:
 - internal implementation when build_with_chromium=0, default otherwise.

Targets linking with default/external capture implementation:
 - anything dependent on webrtc_test_common
 - anything dependent on video_engine_core

Targets linking with internal capture implementation:
 - vie_auto_test
 - anything dependent on webrtc_test_renderer

GN changes:
 - Not many since there is almost no test definitions.

TESTED: passes all the bots. If this inadvertently breaks a target please fix the linking rules so the target has the desired implementation linked in.

BUG=3768
R=glaznev@webrtc.org
TBR=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7209 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 11:50:19 +00:00
85ef770d92 Split video engine android initialization into each internal module initialization.
This is to later on allow targets to pick at link time if to include the external or internal implementation. In order to do that the video_engine cannot compile different based on which option is picked later on.

BUG=3768,3770
R=glaznev@webrtc.org, stefan@webrtc.org
TBR=henrike@webrtc.org, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7208 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 11:44:51 +00:00
ab990ae43a Revert 7151 "Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h.""
Re-lands r7114 after landing r7204 to adress the compile error causing
the rollback in r7151.

BUG=3070
TBR=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7207 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 09:02:25 +00:00
e387cc0d37 webrtc/overrides: add OWNERS-file.
BUG=N/A
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7205 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 08:04:28 +00:00
dc8dcb4b8c Narrower include for constructormagic.h in Chromium.
Replacing #include of "base/basictypes.h" in
overrides/webrtc/base/constructormagic.h with "base/macros.h". Our
version of constructormagic.h is not meant to include the base types,
only DISALLOW_COPY_AND_ASSIGN etc.

This fix is also a workaround for our overrides in Chromium seemingly
including the wrong things for certain webrtc targets like
audio_processing, so it looks like this #include "base/basictypes.h"
didn't include Chromium's base/basictypes.h but webrtc/base/basictypes.h
somehow, hence DISALLOW_COPY_AND_ASSIGN wasn't defined, causing the
revert in r7151.

R=henrike@webrtc.org, tommi@webrtc.org
BUG=3070
TEST=Chromium still builds locally with this change.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7204 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 07:44:33 +00:00
40c2aa36f2 Implemented Network::GetBestIP() selection logic as following.
1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7200

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7201 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 20:29:41 +00:00
f8bff762d1 Implemented Network::GetBestIP() selection logic as following.
1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7200 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 20:17:22 +00:00
7351d4d698 Add a gyp target for producing a voice engine merged library.
This is based on webrtc/build/merge_libs.gyp, with a dependency on
voice_engine.gyp instead and suitable name changes.

Executing:
$ rm -rf out/
$ ./webrtc/build/gyp_webrtc -Denable_video=0 -Denable_protobuf=0
-Drelease_optimize=s webrtc/build/merge_libs_voice.gyp
$ ninja -C out/Release merged_lib_voice

results in a minimially sized voice engine lib at:
out/Release/librtc_voice_merged.a

Linux: 6.4 MB
Mac: 3.7 MB

R=braveyao@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7199 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 18:48:53 +00:00
a6cefcaceb gn: Fix cflags usage
R=brettw@chromium.org
TBR=kjellander@webrtc.org

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

Patch from Cem Kocagil <ckocagil@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7198 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 17:57:02 +00:00
dae612ebf8 Mark all virtual overrides in the hierarchies of UdpTransportData and
UdpSocketWrapper as such.

This will make further changes to these classes safer by ensuring that the
compile breaks if the base class changes and not all overrides are fixed.

This also removes an unused function.

BUG=none
TEST=none
R=henrik.lundin@webrtc.org, henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7195 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 15:29:02 +00:00
44360200e3 Fix GN for rtc_base_approved target.
In https://webrtc-codereview.appspot.com/22649004
a new target was introduced that duplicated some
source files, breaking the bots in
http://build.chromium.org/p/chromium.webrtc.fyi/waterfall

This updates the GN config to also remove them from
the target where they were moved from in base.gyp.

BUG=3806
TESTED=Trybots + Running GN in a Chromium checkout with
src/third_party/webrtc symlinked to the WebRTC checkout
with this CL applied + passing compile step.

R=perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7192 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-16 11:16:12 +00:00