9703 Commits

Author SHA1 Message Date
ossu
11bfc53cd9 Fixed a couple of build-flag dependent tests of webrtcvoiceengine.
The codecs expected by HasCorrectCodecs now depends which codecs were
enabled by build flags.

SendSideBweWithOverheadTest.MinAndMaxBitrate now expects different
values for min bitrate depending on if we support 120 ms frames for
Opus.

BUG=b/35415435

Review-Url: https://codereview.webrtc.org/2691343008
Cr-Commit-Position: refs/heads/master@{#16643}
2017-02-16 13:37:06 +00:00
hbos
a51d4f34d9 Re-land of RTCInboundRTPStreamStats.qpSum collected.
This was previously only collected for local tracks
(RTCOutboundRTPStreamStats.qpSum).

Spec: https://w3c.github.io/webrtc-stats/#dom-rtcrtpstreamstats-qpsum

This CL also improves some testing in rtcstatscollector_unittest.cc.
Default and non-default values are tested in the same unittests,
removing the test that was specific to default-values, which was
otherwise code duplication.

This is a re-land of https://codereview.webrtc.org/2675943002 after
dependent CL that was re-landed.

BUG=webrtc:7065
TBR=hta@webrtc.org, sakal@webrtc.org

Review-Url: https://codereview.webrtc.org/2703503003
Cr-Commit-Position: refs/heads/master@{#16642}
2017-02-16 13:34:48 +00:00
ehmaldonado
454c1d6a23 Fix neteq_speed_test.cc
After https://codereview.webrtc.org/2340773002,
the path from webrtc::test::ResourcePath in
webrtc/modules/audio_coding/neteq/tools/neteq_performance_test.cc is wrong.

It is
/path/to/repos/resources/audio_coding/testfile32kHz.pcm

It should be
/path/to/repos/webrtc-temp/src/resources/audio_coding/testfile32kHz.pcm.

The middle part is missing.

The reason this target is affected is because
webrtc::test::SetExecutablePath(argv[0]);
was not called.

That call is necessary for us to know that the test is being run from src/
and not from out/Default (as is assumed, when that function is not called.)

BUG=chromium:497757
R=kjellander@webrtc.org, henrik.lundin@webrtc.org

Review-Url: https://codereview.webrtc.org/2698743002
Cr-Commit-Position: refs/heads/master@{#16641}
2017-02-16 11:54:49 +00:00
mandermo
7cebe78332 Better comparison of videos with barcode errors
The frame_analyzer which is used by compare_videos.py needs to handle
barcode errors. As before the reference and the test video can contain
repeated frames. When there are barcode decode errors in the test video,
then we should not let that contribute to the skipped frames score. When
there are barcode decode errors in the reference video, then we need to
take proper care to still calculate skipped barcodes when the
corresponding frames are not present in the test video and the test
video does not have a frame with a barcode decode error that could have
been the same frame as the one in the reference.

A new metric total number of skipped frames and for number of decode
errors is introduced. Barcodes that appears in the test video, but not
in the reference video are also listed.

BUG=webrtc:6967

Review-Url: https://codereview.webrtc.org/2666333003
Cr-Commit-Position: refs/heads/master@{#16638}
2017-02-16 09:36:43 +00:00
kjellander
12b3e03bde Roll chromium_revision 69e724195b..3dd2a5021d (450712:450867)
Includes a fix for https://codereview.chromium.org/2699473002 for
hiding non-JNI symbols for //webrtc/sdk/android:libjingle_peerconnection_so.

Change log: 69e724195b..3dd2a5021d
Full diff: 69e724195b..3dd2a5021d

Changed dependencies:
* src/base: 080b352c99..8b1a6dbaa6
* src/build: f90e950a28..c8fd116a14
* src/ios: 9de535e7f6..ef5e6a32d2
* src/testing: ab09b53e19..fc5180135b
* src/third_party: 8c47a50ee4..458ec12ef4
* src/third_party/catapult: fc25e6f948..574285df8d
* src/tools: edae3a4aa9..776d0b616f
DEPS diff: 69e724195b..3dd2a5021d/DEPS

No update to Clang.

BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2702513002
Cr-Commit-Position: refs/heads/master@{#16637}
2017-02-16 09:06:04 +00:00
deadbeef
43be94725f Return "not implemented" error from BindSocketToNetwork properly.
Previously, was only checking the Android SDK version. But it also needs
to check for the presence of the connectivity manager service.

BUG=webrtc:7026

Review-Url: https://codereview.webrtc.org/2697943002
Cr-Commit-Position: refs/heads/master@{#16631}
2017-02-15 19:49:31 +00:00
brandtr
32e0d26096 Tighten up encode time measurement in VideoProcessor.
No point in measuring the time needed to write dropped frames to disk.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2696503003
Cr-Commit-Position: refs/heads/master@{#16629}
2017-02-15 13:29:38 +00:00
brandtr
8bc9385fcb Style fixes: VideoProcessor and corresponding integration test.
This CL has no intended functional changes.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2697583002
Cr-Commit-Position: refs/heads/master@{#16628}
2017-02-15 13:19:51 +00:00
henrik.lundin
280eb224e2 Make AudioVector::operator[] inline and modify the index calculation to avoid the modulo operation.
BUG=webrtc:7159

Review-Url: https://codereview.webrtc.org/2670643007
Cr-Commit-Position: refs/heads/master@{#16627}
2017-02-15 10:53:05 +00:00
ilnik
2a8c2f589a Added Vp9 simulcast tests.
For them implemeted upscaling in libyuv metrics calculation.
Updated maximum number of SL in vp9 encoder to 3.
Refactored names of some fields in Video_quality_check analyzer.

BUG=webrtc:7095

Review-Url: https://codereview.webrtc.org/2681683003
Cr-Commit-Position: refs/heads/master@{#16625}
2017-02-15 10:23:28 +00:00
danilchap
27260ced9f Change NtpTime representation to single uint64_t
Add explicit conversions to/from uint64_t

uint64_t is natural type for NtpTime, including wrap on overflow.

BUG=None

Review-Url: https://codereview.webrtc.org/2695683002
Cr-Commit-Position: refs/heads/master@{#16624}
2017-02-15 09:18:15 +00:00
nisse
6486ef50ac Delete unused files macconversion.h and .cc.
Unused since cl https://codereview.webrtc.org/2541453002.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2693973003
Cr-Commit-Position: refs/heads/master@{#16623}
2017-02-15 09:07:57 +00:00
ilnik
9ae0d76b92 Added WebRTC-QuickPerfTest field trial. If enabled only 1 frame will be sent.
BUG=webrtc:7101

Review-Url: https://codereview.webrtc.org/2690903004
Cr-Commit-Position: refs/heads/master@{#16622}
2017-02-15 08:53:12 +00:00
solenberg
08b19dfc67 Remove VoEVideoSync interface.
The removed tests are covered by cases in call_perf_tests.

BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2672583002
Cr-Commit-Position: refs/heads/master@{#16621}
2017-02-15 08:42:31 +00:00
deadbeef
f0a539b0c8 Revert of Add the url attribute to the IceCandidate (Java Wrapper) (patchset #4 id:120001 of https://codereview.webrtc.org/2690593002/ )
Reason for revert:
Breaks AppRTCMobile interoperability. The ICE candidate URL shouldn't be signaled between endpoints, it's only there for informational purposes.

Original issue's description:
> Add the url attribute to the IceCandidate (Java Wrapper)
>
> The url of the ICE server is added to the IceCandiate class.
> This can be used to tell which server this candidate was gathered from.
>
> BUG=webrtc:7128
>
> Review-Url: https://codereview.webrtc.org/2690593002
> Cr-Original-Commit-Position: refs/heads/master@{#16593}
> Committed: 8586c8ee88
> Review-Url: https://codereview.webrtc.org/2690593002
> Cr-Commit-Position: refs/heads/master@{#16615}
> Committed: 45efce01c7

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

Review-Url: https://codereview.webrtc.org/2699533002
Cr-Commit-Position: refs/heads/master@{#16616}
2017-02-14 22:13:56 +00:00
zhihuang
45efce01c7 Add the url attribute to the IceCandidate (Java Wrapper)
The url of the ICE server is added to the IceCandiate class.
This can be used to tell which server this candidate was gathered from.

BUG=webrtc:7128

Review-Url: https://codereview.webrtc.org/2690593002
Cr-Original-Commit-Position: refs/heads/master@{#16593}
Committed: 8586c8ee88
Review-Url: https://codereview.webrtc.org/2690593002
Cr-Commit-Position: refs/heads/master@{#16615}
2017-02-14 20:23:34 +00:00
kthelgason
b83797bd7a Fix flaky ViEEncoder unit test.
The flaky test was introduced in ad9010c9836, and is essentially a race
where the ViE Encoder has already configured the quality scaler on the
encoder thread before we've updated the ScalingSettings. This CL adds
a forced reconfiguration of the quality scaler to avoid this issue.

BUG=None
TBR=sprang@webrtc.org

Review-Url: https://codereview.webrtc.org/2695873004
Cr-Commit-Position: refs/heads/master@{#16612}
2017-02-14 19:57:25 +00:00
Magnus Jedvert
5465ef5699 Remove VideoRendererGui
This file is deprecated and use of it should be replaced with
SurfaceViewRenderer instead.

BUG=webrtc:7158
R=sakal@webrtc.org

Review-Url: https://codereview.webrtc.org/2692843003 .
Cr-Commit-Position: refs/heads/master@{#16611}
2017-02-14 13:27:51 +00:00
kthelgason
4065a5762b Move iOS tests to XCTest from gtest.
This enables tighter integration with XCode tooling and is a prereq
for adding UI tests.

BUG=webrtc:7150

Review-Url: https://codereview.webrtc.org/2697603002
Cr-Commit-Position: refs/heads/master@{#16609}
2017-02-14 12:58:56 +00:00
solenberg
e374e0139b Remove VoEExternalMedia interface.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2645033002
Cr-Commit-Position: refs/heads/master@{#16608}
2017-02-14 12:55:00 +00:00
solenberg
81d93f37a5 Remove the unused and untested functions from VoERTP_RTCP.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2667423004
Cr-Commit-Position: refs/heads/master@{#16606}
2017-02-14 11:44:57 +00:00
Magnus Jedvert
0706813280 Android AppRTCMobile: Add setting for selecting H264 Baseline or High profile
BUG=webrtc:6337
R=glaznev@webrtc.org

Review-Url: https://codereview.webrtc.org/2658243002 .
Cr-Commit-Position: refs/heads/master@{#16605}
2017-02-14 11:41:35 +00:00
kthelgason
1f16ee38c1 Compile ios helpers on mac as well.
BUG=webrtc:5582

Review-Url: https://codereview.webrtc.org/2586433002
Cr-Commit-Position: refs/heads/master@{#16604}
2017-02-14 11:07:57 +00:00
aleloi
a3b2add27d Added handling of 'agc_compression_gain' flag in audioproc_f.
The test program modules/audio_processing/test/audioproc_float.cc
defined the flag 'agc_compression_gain' and had checks if the
parameter was valid (audioproc_float). The flag was also copied to
webrtc::test::SimulationSettings of audio_processing_simulator.h. The
setting was however never applied to APM.

This change applies the setting on the GainControl submodule in the
same way as the agc_target_level is applied.

This is needed for e.g. testing the AGC fixed digital limiter with the
same configuration as it is (currently) used with in AudioMixerImpl.

Also added new flag '-experimental_agc'. This flag allows disabling the
experimental AGC, which is how the AGC is used in AudioMixerImpl.
ExperimentalAgc is enabled by default, exactly as it was prior to this change.

The change has been tested locally by listening tests and diff comparisons.

BUG=None
NOTRY=True # win_dbg bot not cooperating

Review-Url: https://codereview.webrtc.org/2684983004
Cr-Commit-Position: refs/heads/master@{#16603}
2017-02-14 10:07:49 +00:00
kthelgason
ad9010c983 Make sure initial framedrop is off where quality scaling is off.
BUG=chromium:689972,chromium:689915

Review-Url: https://codereview.webrtc.org/2684683004
Cr-Commit-Position: refs/heads/master@{#16602}
2017-02-14 08:46:51 +00:00
nisse
1a95e61e37 Delete httpclient.c and related files.
The files socketpool.h and diskcache.h also become unused, and are
deleted together with their sources.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2694753002
Cr-Commit-Position: refs/heads/master@{#16601}
2017-02-14 08:23:10 +00:00
nisse
77282a87a1 Delete fileutils_mock.h.
It became unused in cl https://codereview.webrtc.org/2541453002/.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2690093002
Cr-Commit-Position: refs/heads/master@{#16599}
2017-02-14 07:21:52 +00:00
Peter Boström
2758c664b4 Fix the build break by keeping the old Port::AddAddress method since the
downstream application depends on it.
Mark the old Port::AddAddress deprecated and will be removed after the
applications stop replying on it.

BUG=None.
R=deadbeef@webrtc.org

Review-Url: https://codereview.webrtc.org/2694103003 .
Cr-Commit-Position: refs/heads/master@{#16598}
2017-02-14 01:33:27 +00:00
deadbeef
c874d1296a Fixing logic for using android_setsocknetwork() with bind().
If android_setsocknetwork() is available, and it fails, then bind()
should *not* be called, and an error should be returned.

If it succeeds, then bind should be called, but with an "any" address.

This is to prevent cases where sockets are sent with a source address
that doesn't match the network interface they're sent on. See bug below.

This CL also changes "NetworkBinderResults" to an enum class, and
renames it to "NetworkBinderResult".

BUG=webrtc:7026

Review-Url: https://codereview.webrtc.org/2646863005
Cr-Commit-Position: refs/heads/master@{#16597}
2017-02-13 23:41:59 +00:00
glaznev
06b7e5ce1f Add H.264 high profile to the list of supported codecs before baseline profile.
To ensure compliance with older version high profile should appear in local SDP
before baseline profile.

BUG=b/34816463

Review-Url: https://codereview.webrtc.org/2696733002
Cr-Commit-Position: refs/heads/master@{#16596}
2017-02-13 23:13:24 +00:00
deadbeef
b856794be7 Revert of Add the url attribute to the IceCandidate (Java Wrapper) (patchset #3 id:60001 of https://codereview.webrtc.org/2690593002/ )
Reason for revert:
Breaks downstream application's build

Original issue's description:
> Add the url attribute to the IceCandidate (Java Wrapper)
>
> The url of the ICE server is added to the IceCandiate class.
> This can be used to tell which server this candidate was gathered from.
>
> BUG=webrtc:7128
>
> Review-Url: https://codereview.webrtc.org/2690593002
> Cr-Commit-Position: refs/heads/master@{#16593}
> Committed: 8586c8ee88

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

Review-Url: https://codereview.webrtc.org/2692993002
Cr-Commit-Position: refs/heads/master@{#16595}
2017-02-13 22:31:38 +00:00
Peter Boström
f812e45d8f Handle InitDecode and reset in fallback decoder.
Makes sure video decoder software fallback handles InitDecode()
failures, and properly releases the pointer after ::Release() so that
another decode failure will properly reinitialize the decoder.

Also makes sure to not call Decode() without a previous InitDecode()
succeeding.

BUG=webrtc:7154
R=noahric@chromium.org, sophiechang@chromium.org

Review-Url: https://codereview.webrtc.org/2690183004 .
Cr-Commit-Position: refs/heads/master@{#16594}
2017-02-13 22:11:08 +00:00
zhihuang
8586c8ee88 Add the url attribute to the IceCandidate (Java Wrapper)
The url of the ICE server is added to the IceCandiate class.
This can be used to tell which server this candidate was gathered from.

BUG=webrtc:7128

Review-Url: https://codereview.webrtc.org/2690593002
Cr-Commit-Position: refs/heads/master@{#16593}
2017-02-13 22:04:50 +00:00
zhihuang
26d99c2e28 Add the URL attribute to cricket::Candiate.
The URL of the ICE server will be reconstructed by the Port and the URL
attribute is added to the cricket::Candidate struct so that we can tell
which ICE server the candidate was gathered from.

This CL only changes the native C++ code. The Java and Objc wrapper will
be created in separate CLs.

BUG=webrtc::7128

Review-Url: https://codereview.webrtc.org/2685053004
Cr-Commit-Position: refs/heads/master@{#16591}
2017-02-13 20:47:27 +00:00
deadbeef
39e14da919 Changing some PeerConnection-related comments.
As recommended by nisse@ in comments on this CL:
https://codereview.webrtc.org/2685093002/

BUG=None
NOTRY=True
TBR=nisse@webrtc.org

Review-Url: https://codereview.webrtc.org/2692923002
Cr-Commit-Position: refs/heads/master@{#16589}
2017-02-13 17:49:58 +00:00
stefan
e3a5567230 Reduce the BWE with 50% when feedback is received too late.
Lateness is determined by the length of the send-side history, currently
set to 60 seconds.

BUG=webrtc:5079

Review-Url: https://codereview.webrtc.org/2684353004
Cr-Commit-Position: refs/heads/master@{#16588}
2017-02-13 17:08:22 +00:00
ossu
bcd88dbc01 WebRtcVoiceEngineTest: Changed a static_cast to a checked_cast.
Also two spelling fixes.
This is a follow-up to https://codereview.webrtc.org/2669583002/

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

Review-Url: https://codereview.webrtc.org/2697453004
Cr-Commit-Position: refs/heads/master@{#16586}
2017-02-13 15:04:05 +00:00
sakal
9de49e317e Add clearImage method to SurfaceViewRenderer.
BUG=None

Review-Url: https://codereview.webrtc.org/2691533002
Cr-Commit-Position: refs/heads/master@{#16584}
2017-02-13 14:15:02 +00:00
nisse
38cc1d6b31 Replace RtpStreamReceiver::DeliverRtp with OnRtpPacket.
This avoids redoing RTP header parsing already done in Call, for video.

The next step is to convert other types of receive streams, i.e.,
audio and flexfec, to use a compatible OnRtpPacket method. We can then
introduce a shared base interface, and simplify media-independent
receive processing in Call.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2681673004
Cr-Commit-Position: refs/heads/master@{#16583}
2017-02-13 13:59:46 +00:00
sakal
07a050f995 Add support for swapping feeds in Android AppRTCMobile.
BUG=webrtc:6937

Review-Url: https://codereview.webrtc.org/2682943006
Cr-Commit-Position: refs/heads/master@{#16582}
2017-02-13 13:58:27 +00:00
adam.fedor
806a1a0c28 Add ifdef protection for iOS-only headers
BUG=webrtc:6841

Review-Url: https://codereview.webrtc.org/2553683008
Cr-Commit-Position: refs/heads/master@{#16580}
2017-02-13 13:09:01 +00:00
solenberg
06f240bc4f Clean out platform specific things from voice_engine_defines.h.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2689183002
Cr-Commit-Position: refs/heads/master@{#16578}
2017-02-13 12:42:52 +00:00
sprang
552c7c70b0 Make SendStatisticsProxy paramter mandatory in ViEEncoder ctor.
The only implementation which used a nullptr was a mock used in tests,
so add a dummy instance there instead.
Remove tests for stats_proxy_ in vie_encoder and just dcheck in the
constructor instead.

BUG=None

Review-Url: https://codereview.webrtc.org/2695643002
Cr-Commit-Position: refs/heads/master@{#16577}
2017-02-13 12:41:45 +00:00
nisse
1458462303 Delete unused classes AutoDetectProxy and SslSocketFactory.
SslSocketFactory is unused since https://codereview.webrtc.org/2506983002, and it's the last
user of AutoDetectProxy.

Also move HttpListenServer and SocksProxyServer to the rtc_base_tests_utils gn target, since they're used by tests only.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2541453002
Cr-Commit-Position: refs/heads/master@{#16576}
2017-02-13 12:33:28 +00:00
sprang
be03724ae1 Fix nits in vie_encoder
Updated comment.
Don't call AdaptUp/AdaptDown in tests without first emitting a frame.
Handle frame received precondition in AdaptUp/AdaptDown with DCHECK
instead of return.

BUG=webrtc:4172, webrtc:6850

Review-Url: https://codereview.webrtc.org/2690023002
Cr-Commit-Position: refs/heads/master@{#16572}
2017-02-13 10:38:17 +00:00
asapersson
7041eed59f Add possibility to plot statistics from integration tests per codec type/implementation.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2688863002
Cr-Commit-Position: refs/heads/master@{#16571}
2017-02-13 09:37:57 +00:00
deadbeef
804c1af48b Move trackmediainfomap files from api/ to pc/.
It looks like this was left out of the original api/pc move CL since it
had been added recently.

BUG=webrtc:5883
TBR=ossu@webrtc.org

Review-Url: https://codereview.webrtc.org/2690793003
Cr-Commit-Position: refs/heads/master@{#16560}
2017-02-12 03:07:31 +00:00
brandtr
49ce67c992 Do not encode frames in MultithreadedFakeH264Encoder after Release().
Other minor changes:
- Define locks after stuff it is protecting
- Use explicit default dtors
- Replace unnecessary lock in DelayedEncoder with SequencedTaskChecker

BUG=webrtc:7130

Review-Url: https://codereview.webrtc.org/2686103002
Cr-Commit-Position: refs/heads/master@{#16554}
2017-02-11 08:25:18 +00:00
brandtr
6607d84b44 Move one CircularBuffer to webrtc::test namespace.
There are currently two webrtc::CircularBuffers defined:
- modules/audio_coding/test/utility.{h,cc}
- modules/audio_processing/echo_detector/circular_buffer.{h,cc}

This CL moves the former definition to the webrtc::test namespace,
to avoid link errors in a future build target.

BUG=None

Review-Url: https://codereview.webrtc.org/2667383008
Cr-Commit-Position: refs/heads/master@{#16553}
2017-02-11 08:24:10 +00:00
deadbeef
1a2183d0c3 Removing unnecessary parameters from CreateXChannel methods.
"bundle_transport_name" is no longer relevant here, and
"rtcp_mux_required" is implied by whether or not an RTCP transport is
passed in.

BUG=None

Review-Url: https://codereview.webrtc.org/2689503002
Cr-Commit-Position: refs/heads/master@{#16551}
2017-02-11 07:44:49 +00:00