11853 Commits

Author SHA1 Message Date
Alex Loiko
357429dd1e Rudimentary optimization with APM/QA.
Added script 'apm_quality_assessment_optimize' for finding parameters
that minimize a custom function of the scores generated by APM-QA. The
script reuses the existing functionality for filtering the data on
configs/scores/outputs.

To archieve that, some modularization has been done: the part from
apm_quality_assessment_export that reads in data into a
pandas.DataFrame has been moved into quality_assessment.collect_data.

TESTED = though extensive manual tests. Unit tests for the user
scripts and 'collect_data' are missing, because we don't have a test
framework for loading/exporting fake data.

BUG=webrtc:7218

Change-Id: I5521b952970243da05fc4db1b9feef87a2e5ccad
Reviewed-on: https://chromium-review.googlesource.com/643292
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19780}
2017-09-11 17:00:37 +00:00
philipel
3b3c9c4eb0 Don't treat picture ids as wrapping in the FrameBuffer2 class.
Picture ids are now unwrapped in the RtpFrameReferenceFinder class, so the
FrameBuffer2 no longer need to treat them as wrapping.

BUG=webrtc:7874

Review-Url: https://codereview.webrtc.org/3012883002
Cr-Commit-Position: refs/heads/master@{#19779}
2017-09-11 16:38:36 +00:00
erikvarga
4232273061 Use RaceChecker instead of ThreadChecker in remote_bitrate_estimator.
BUG=webrtc:7826

Review-Url: https://codereview.webrtc.org/3006173002
Cr-Commit-Position: refs/heads/master@{#19778}
2017-09-11 16:23:37 +00:00
eladalon
98b1b7d59e Add explicit copy constructors to RTPHeader and RTPHeaderExtension
Explicit copy-constructors are required by chromium. (No copy constructors were used until now, but a different CL requires them.)

BUG=None
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/3006343002
Cr-Commit-Position: refs/heads/master@{#19777}
2017-09-11 15:48:26 +00:00
eladalon
4bb3b9c6cb Move StreamConfig into its own file
Move StreamConfig into its own file, to allow it to be seen from different RtcEvent subclasses (introduces in upcoming CL).

BUG=webrtc:8111

Review-Url: https://codereview.webrtc.org/3013523002
Cr-Commit-Position: refs/heads/master@{#19776}
2017-09-11 14:25:26 +00:00
sakal
c36daecd77 Add support for H264 high-profile in injectable video encoder.
BUG=webrtc:7760

Review-Url: https://codereview.webrtc.org/3007133002
Cr-Commit-Position: refs/heads/master@{#19774}
2017-09-11 13:53:27 +00:00
peah
c6b1041d67 Removed the timeout for the delay estimate quality.
BUG=webrtc:8223, chromium:763761

Review-Url: https://codereview.webrtc.org/3011193002
Cr-Commit-Position: refs/heads/master@{#19773}
2017-09-11 13:46:07 +00:00
peah
ea154106a8 Lowered the allowed jitter in the api calls to a reasonable level
This CL reduces the allowed jitter in the api calls to a reasonable
level in order to ensure a quicker revery from audio path glitches.

BUG=webrtc:8224, chromium:763775

Review-Url: https://codereview.webrtc.org/3009273002
Cr-Commit-Position: refs/heads/master@{#19772}
2017-09-11 13:44:37 +00:00
denicija
d207a39d09 Add |RTCUIApplicationStatusObserver sharedInstance| call in ios test AppDelegate.
We want to perform the observation setup as soon as possible to avoid deadlocking,
especially for test scenario where most of the work is done on main thread.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3012913002
Cr-Commit-Position: refs/heads/master@{#19771}
2017-09-11 13:43:28 +00:00
korniltsev.anatoly
0ea0310b89 android: add IceServer.urls field
This makes api more consistent with ios and native library

BUG=None

Review-Url: https://codereview.webrtc.org/3012843002
Cr-Commit-Position: refs/heads/master@{#19770}
2017-09-11 13:41:38 +00:00
henrika
e0406fd955 Removes unused ADM APIs (final stage)
BUG=webrtc:7306

Review-Url: https://codereview.webrtc.org/3006333003
Cr-Commit-Position: refs/heads/master@{#19769}
2017-09-11 13:17:38 +00:00
magjed
7cede379c7 Android: Add helper class VideoFrameDrawer that can render VideoFrames
This CL adds a helper class VideoFrameDrawer that provides an
abstraction for rendering arbitrary video frames using OpenGL. The class
takes care of dispatching on the video buffer type and uploading
I420 data to textures.

BUG=None

Review-Url: https://codereview.webrtc.org/3008423002
Cr-Commit-Position: refs/heads/master@{#19768}
2017-09-11 13:12:07 +00:00
mbonadei
bc37847978 Decoupling rtc_base_approved from Obj-C code
The goal of this CL is to separate Obj-C/Obj-C++ code from targets which have
also C++ code (see https://bugs.chromium.org/p/webrtc/issues/detail?id=7743
for more information).

To achieve this we have created 2 targets (rtc_base_approved_objc and
rtc_base_approved_generic) and rtc_base_approved will act as a proxy between
these targets (this way we can avoid a circular dependency between
rtc_base_approved_generic and rtc_base_approved_objc).

BUG=webrtc:7743
NOTRY=True

Review-Url: https://codereview.webrtc.org/2988433002
Cr-Commit-Position: refs/heads/master@{#19767}
2017-09-11 10:43:34 +00:00
nisse
0677904e1b Delete Filesystem::CreateFolder.
BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2891923002
Cr-Commit-Position: refs/heads/master@{#19766}
2017-09-11 09:36:28 +00:00
nisse
ca5706d8b5 Reland of Use RtxReceiveStream. (patchset #1 id:1 of https://codereview.webrtc.org/3007303002/ )
Reason for revert:
Identified a configuration problem in the video quality tests. Intend to fix and reland.

Original issue's description:
> Revert of Use RtxReceiveStream. (patchset #5 id:320001 of https://codereview.webrtc.org/3006063002/ )
>
> Reason for revert:
> This change appears to break ulpfec, with severe regressions, e.g., for webrtc_perf_test FullStackTest.ForemanCifPlr5Ulpfec
>
> Original issue's description:
> > Reland of Use RtxReceiveStream. (patchset #1 id:1 of https://codereview.webrtc.org/3010983002/ )
> >
> > Reason for revert:
> > Intend to fix perf failures and reland.
> >
> > Original issue's description:
> > > Revert of Use RtxReceiveStream. (patchset #5 id:80001 of https://codereview.webrtc.org/3008773002/ )
> > >
> > > Reason for revert:
> > > A few perf tests broken, including
> > >
> > > RampUpTest.UpDownUpAbsSendTimeSimulcastRedRtx
> > > RampUpTest.UpDownUpTransportSequenceNumberRtx
> > > RampUpTest.UpDownUpTransportSequenceNumberPacketLoss
> > >
> > >
> > > Original issue's description:
> > > > Use RtxReceiveStream.
> > > >
> > > > This also has the beneficial side-effect that when a media stream
> > > > which is protected by FlexFEC receives an RTX retransmission, the
> > > > retransmitted media packet is passed into the FlexFEC machinery,
> > > > which should improve its ability to recover packets via FEC.
> > > >
> > > > BUG=webrtc:7135
> > > >
> > > > Review-Url: https://codereview.webrtc.org/3008773002
> > > > Cr-Commit-Position: refs/heads/master@{#19649}
> > > > Committed: 5c0f6c62ea
> > >
> > > TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:7135
> > >
> > > Review-Url: https://codereview.webrtc.org/3010983002
> > > Cr-Commit-Position: refs/heads/master@{#19653}
> > > Committed: 3c39c0137a
> >
> > TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > BUG=webrtc:7135
> >
> > Review-Url: https://codereview.webrtc.org/3006063002
> > Cr-Commit-Position: refs/heads/master@{#19715}
> > Committed: 35713eaf56
>
> TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/3007303002
> Cr-Commit-Position: refs/heads/master@{#19744}
> Committed: 8e7eee0351

TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3012963002
Cr-Commit-Position: refs/heads/master@{#19765}
2017-09-11 09:32:16 +00:00
ilnik
8412fd333d Fix code formating in api/video/video_content_type.*
Generated by "git cl format".

BUG=none

Review-Url: https://codereview.webrtc.org/3006333002
Cr-Commit-Position: refs/heads/master@{#19764}
2017-09-11 09:20:45 +00:00
henrika
76535de14f Improves stereo/mono audio support on Android.
Fixes some issues related to calling WebRtcAudioManager.setStereoOutput(true)
and WebRtcAudioManager.setStereoInput(true) and ensures that the ADM reports
correct values related to stereo support given these settings.

Also makes it more clear that the OpenSLES audio implementation does not support
stereo (we now fail in Init()).

To summarize: this change ensures that the user can ask for stereo input
and/or stereo output audio on Android in combination with the Java based
audio layer. By default (if no WebRtcAudioManager.setStereoXXX() APIs are called), mono will be used.

BUG=webrtc:7962

Review-Url: https://codereview.webrtc.org/3009193002
Cr-Commit-Position: refs/heads/master@{#19763}
2017-09-11 08:25:55 +00:00
ivoc
17289097f0 Implement ANA statistics.
This CL also makes it possible to enable/prevent ANA controllers from making adaptations using field trials.

BUG=webrtc:8127

Review-Url: https://codereview.webrtc.org/3007983002
Cr-Commit-Position: refs/heads/master@{#19761}
2017-09-09 15:45:40 +00:00
danilchap
a37de39216 Update thread annotiation macros to use RTC_ prefix
BUG=webrtc:8198

Review-Url: https://codereview.webrtc.org/3012853002
Cr-Commit-Position: refs/heads/master@{#19760}
2017-09-09 11:17:22 +00:00
ivoc
0d0b912128 Add and modify a few ANA stats.
This CL adds seperate counters for ANA frame length increases and decreases, which gives more insight into what actions are taken. In addition, a new stat is added to track the sum of the uplink packet loss fraction that is set by the ANA FEC controller.

BUG=webrtc:8127

Review-Url: https://codereview.webrtc.org/3007243002
Cr-Commit-Position: refs/heads/master@{#19756}
2017-09-08 20:24:21 +00:00
Diogo Real
7bd1f1bb5b Add support for changing the TLS elliptic curve set.
This CL is almost identical to http://chromium-review.googlesource.com/c/611150

Bug: webrtc:8213
Change-Id: I21a8a0041a73b3171ed66b687dc47a579d45fe19
Reviewed-on: https://chromium-review.googlesource.com/653205
Commit-Queue: Diogo Real <diogor@google.com>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Reviewed-by: Emad Omara <emadomara@webrtc.org>
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19755}
2017-09-08 20:02:03 +00:00
kjellander
bdf3072f1a Revert of Remove typedefs.h from webrtc/ root (part 1) (patchset #3 id:40001 of https://codereview.webrtc.org/3007253002/ )
Reason for revert:
Breaks the Chromium WebRTC FYI bots:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/ios-simulator/builds/2834
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/11775

Example:
FAILED: obj/third_party/libjingle_xmpp/libjingle_xmpp_unittests/xmpplogintask_unittest.obj
ninja -t msvc -e environment.x86 -- E:\b\c\goma_client/gomacc.exe "e:\b\c\win_toolchain\vs_files\f53e4598951162bad6330f7a167486c7ae5db1e5\vc\bin\amd64_x86/cl.exe" /nologo /showIncludes  @obj/third_party/libjingle_xmpp/libjingle_xmpp_unittests/xmpplogintask_unittest.obj.rsp /c ../../third_party/libjingle_xmpp/xmpp/xmpplogintask_unittest.cc /Foobj/third_party/libjingle_xmpp/libjingle_xmpp_unittests/xmpplogintask_unittest.obj /Fd"obj/third_party/libjingle_xmpp/libjingle_xmpp_unittests_cc.pdb"
../../third_party/libjingle_xmpp/xmpp/xmpplogintask_unittest.cc(95): error C3861: 'FALLTHROUGH': identifier not found

Original issue's description:
> Remove typedefs.h from webrtc/ root (part 1)
>
> Split out webrtc-specific #defines from typedefs.h, into rtc_base/annotations.h and rtc_base/arch.h.
> Also removes the curiously named WEBRTC_CPU_DETECTION #define.
>
> BUG=webrtc:6854
>
> Review-Url: https://codereview.webrtc.org/3007253002
> Cr-Commit-Position: refs/heads/master@{#19752}
> Committed: a895836321

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

Review-Url: https://codereview.webrtc.org/3013543002
Cr-Commit-Position: refs/heads/master@{#19754}
2017-09-08 18:00:21 +00:00
solenberg
a895836321 Remove typedefs.h from webrtc/ root (part 1)
Split out webrtc-specific #defines from typedefs.h, into rtc_base/annotations.h and rtc_base/arch.h.
Also removes the curiously named WEBRTC_CPU_DETECTION #define.

BUG=webrtc:6854

Review-Url: https://codereview.webrtc.org/3007253002
Cr-Commit-Position: refs/heads/master@{#19752}
2017-09-08 15:50:54 +00:00
ivoc
e1198e068b Add new ANA stats to the old GetStats() to count the number of actions taken by each controller.
This CL only wires up the new stats but does not set the values yet. This will be added in a follow-up CL.

BUG=webrtc:8127

Review-Url: https://codereview.webrtc.org/3011623002
Cr-Commit-Position: refs/heads/master@{#19751}
2017-09-08 15:13:19 +00:00
mbonadei
63f968e0ce Removing WEBRTC_BUILD_LIBEVENT macro definition
This seems to be unused in WebRTC and a search in cs.chromium.orm shows
that it is never used in chromium too.

Interesting CL about this macro: https://codereview.webrtc.org/2153563003

BUG=None

Review-Url: https://codereview.webrtc.org/3006243002
Cr-Commit-Position: refs/heads/master@{#19747}
2017-09-08 13:20:53 +00:00
eladalon
8ec568a9ff Make CreateRtcLogStreamConfig() return a std::unique_ptr
This is done for two reasons:
1. This will be useful in an upcoming CL, when all logging will be done with one function that accepts a std::unique_ptr<RtcEvent>.
2. Ensure no unnecessary copies when the compiler fails to optimize.

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

Review-Url: https://codereview.webrtc.org/3010273002
Cr-Commit-Position: refs/heads/master@{#19746}
2017-09-08 13:15:52 +00:00
nisse
8e7eee0351 Revert of Use RtxReceiveStream. (patchset #5 id:320001 of https://codereview.webrtc.org/3006063002/ )
Reason for revert:
This change appears to break ulpfec, with severe regressions, e.g., for webrtc_perf_test FullStackTest.ForemanCifPlr5Ulpfec

Original issue's description:
> Reland of Use RtxReceiveStream. (patchset #1 id:1 of https://codereview.webrtc.org/3010983002/ )
>
> Reason for revert:
> Intend to fix perf failures and reland.
>
> Original issue's description:
> > Revert of Use RtxReceiveStream. (patchset #5 id:80001 of https://codereview.webrtc.org/3008773002/ )
> >
> > Reason for revert:
> > A few perf tests broken, including
> >
> > RampUpTest.UpDownUpAbsSendTimeSimulcastRedRtx
> > RampUpTest.UpDownUpTransportSequenceNumberRtx
> > RampUpTest.UpDownUpTransportSequenceNumberPacketLoss
> >
> >
> > Original issue's description:
> > > Use RtxReceiveStream.
> > >
> > > This also has the beneficial side-effect that when a media stream
> > > which is protected by FlexFEC receives an RTX retransmission, the
> > > retransmitted media packet is passed into the FlexFEC machinery,
> > > which should improve its ability to recover packets via FEC.
> > >
> > > BUG=webrtc:7135
> > >
> > > Review-Url: https://codereview.webrtc.org/3008773002
> > > Cr-Commit-Position: refs/heads/master@{#19649}
> > > Committed: 5c0f6c62ea
> >
> > TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7135
> >
> > Review-Url: https://codereview.webrtc.org/3010983002
> > Cr-Commit-Position: refs/heads/master@{#19653}
> > Committed: 3c39c0137a
>
> TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/3006063002
> Cr-Commit-Position: refs/heads/master@{#19715}
> Committed: 35713eaf56

TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3007303002
Cr-Commit-Position: refs/heads/master@{#19744}
2017-09-08 12:51:54 +00:00
nisse
66d07c54fe Convert mac/ios TaskQueue implementation to pimpl convention.
BUG=webrtc:8160, webrtc:8166

Review-Url: https://codereview.webrtc.org/3013433002
Cr-Commit-Position: refs/heads/master@{#19743}
2017-09-08 12:12:51 +00:00
nisse
a64685325c Revert of Delete Rtx-related methods from RTPPayloadRegistry. (patchset #3 id:40001 of https://codereview.webrtc.org/3006993002/ )
Reason for revert:
This has to be reverted to enable reverting cl https://codereview.webrtc.org/3006063002/, which seems to have broken ulpfec.

Original issue's description:
> Delete Rtx-related methods from RTPPayloadRegistry.
>
> Delete methods IsRtx, IsEncapsulated and RestoreOriginalPacket.
>
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/3006993002
> Cr-Commit-Position: refs/heads/master@{#19739}
> Committed: 5b4b522641

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

Review-Url: https://codereview.webrtc.org/3011093002
Cr-Commit-Position: refs/heads/master@{#19742}
2017-09-08 12:00:54 +00:00
sakal
9bc599f6da Remove static/default interface method usage.
BUG=webrtc:8217

Review-Url: https://codereview.webrtc.org/3010233002
Cr-Commit-Position: refs/heads/master@{#19741}
2017-09-08 11:46:33 +00:00
nisse
5b4b522641 Delete Rtx-related methods from RTPPayloadRegistry.
Delete methods IsRtx, IsEncapsulated and RestoreOriginalPacket.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3006993002
Cr-Commit-Position: refs/heads/master@{#19739}
2017-09-08 09:11:54 +00:00
ehmaldonado
25586cefdd Make it possible to isolate isac_fix_test.
Successful swarming run:
https://chromium-swarm.appspot.com/task?id=38769e8dd5d3e110&refresh=10&show_raw=1

BUG=chromium:755660
NOTRY=True

Review-Url: https://codereview.webrtc.org/3009203002
Cr-Commit-Position: refs/heads/master@{#19738}
2017-09-08 06:18:35 +00:00
deadbeef
b1a15d7711 In PC integration tests, create tracks/streams with random IDs.
Previously the helper methods (like "CreateLocalAudioTrack") were using
hard-coded IDs. This means if you try to add two tracks to the same
PeerConnection you'll get an ID conflict. Tests were getting around
this by using APIs to explicitly add tracks with different IDs. But
this leaks an implementation detail of the helper methods, and is a
hassle.

So instead, just use random UUIDs from the helper methods. This is how
IDs are created in the real world, so it's pretty reasonable and allows
the tests to be made more readable.

BUG=None

Review-Url: https://codereview.webrtc.org/3011713002
Cr-Commit-Position: refs/heads/master@{#19736}
2017-09-07 21:12:05 +00:00
Zijie He
9ec5da67f0 Wrong coordinate is used in ScreenCapturerWinGdi
Wrong coordinate is used in ScreenCapturerWinGdi in change
https://chromium-review.googlesource.com/c/external/webrtc/+/644787

Bug: webrtc:7950
Change-Id: I8a11a4cedc594ce9c5462578e59b4e31b8c79253
Reviewed-on: https://chromium-review.googlesource.com/655257
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19734}
2017-09-07 17:42:34 +00:00
Steve Anton
8ffb9c388f Change RtpSender to have multiple stream_ids
This is part of the work towards implementing Unified Plan.

In Unified Plan, an RtpSender/MediaStreamTrack can be a part of
multiple streams. This changes RtpSender to internally store
stream ids as a vector so that later CL's can update downstream
consumers to support multiple streams. For now, the vector can
only have exactly one element in it, but once the supporting code
has been updated the singular getter/setter will be removed and
any number of streams can be associated with an RtpSender.

Bug: webrtc:8183
Change-Id: I499a77ce79198861d35c91328b40ced2eb913cc0
Reviewed-on: https://chromium-review.googlesource.com/646712
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19733}
2017-09-07 17:03:24 +00:00
philipel
19f51434e8 Keep track of the capacity delay error in the FakeNetworkPipe.
The FakeNetworkPipe use millisecond precision to calculate the delay induced by
the size of the packet being sent. The problem is that it rounds the delay down
to the closest millisecond which can cause a significant error in the actual
throughput. We keep track of that error to compensate the delay cause by
subsequent packets.

BUG=None

Review-Url: https://codereview.webrtc.org/3010653002
Cr-Commit-Position: refs/heads/master@{#19732}
2017-09-07 16:08:50 +00:00
deadbeef
4389b4d96b Add a PeerConnection integration test for adding an audio track mid-call
BUG=None

Review-Url: https://codereview.webrtc.org/3007923002
Cr-Commit-Position: refs/heads/master@{#19731}
2017-09-07 16:07:36 +00:00
brandtr
8180fa66de Fix VideoProcessorIntegrationTest on iOS.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3013463002
Cr-Commit-Position: refs/heads/master@{#19730}
2017-09-07 15:57:46 +00:00
eladalon
5a7dad8453 Remove RtcEventLogImpl forward declaration from rtc_event_log.h
The forward delcaration is not necessary.

BUG=None

Review-Url: https://codereview.webrtc.org/3006213002
Cr-Commit-Position: refs/heads/master@{#19729}
2017-09-07 15:02:35 +00:00
danilchap
56359be7fe Update thread annotiation macros in modules to use RTC_ prefix
BUG=webrtc:8198

Review-Url: https://codereview.webrtc.org/3010223002
Cr-Commit-Position: refs/heads/master@{#19728}
2017-09-07 14:53:45 +00:00
brandtr
df23299259 Add VideoProcessorIntegrationTest for MediaCodec implementations.
* Add VideoProcessorIntegrationTestMediaCodec tests, including
  a standard foreman test and a forced SW fallback test.
* Morph PlotVideoProcessorIntegrationTest into
  VideoProcessorIntegrationTestParameterized. This test is intended
  to be patched locally, depending on what metric is of interest.
  It is run on the bots to ensure that it doesn't break.
* Remove the plot_videoprocessor_integrationtest binary. The test
  above is instead moved to the modules_tests binary.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3011043002
Cr-Commit-Position: refs/heads/master@{#19727}
2017-09-07 14:50:06 +00:00
mbonadei
310e32b92a Reland of "Decoupling rtc_base from Obj-C code"
Reason for revert:
Trying to fix the link error on the chromium FYI trybots.

Original issue's description:
> Revert of Decoupling rtc_base from Obj-C code (patchset #1 id:1 of https://codereview.webrtc.org/3004373002/ )
>
> Reason for revert:
> It breaks a chromium FYI trybot (the switch from rtc_static_library to rtc_source_set seems to be the problem).
>
> Original issue's description:
> > Reland of Decoupling rtc_base from Obj-C code (patchset #1 id:1 of https://codereview.webrtc.org/3008103002/ )
> >
> > Reason for revert:
> > Trying to reland after fixing downstream project.
> >
> > Original issue's description:
> > > Revert of Decoupling rtc_base from Obj-C code (patchset #8 id:140001 of https://codereview.webrtc.org/3001623003/ )
> > >
> > > Reason for revert:
> > > It breaks a downstream project.
> > >
> > > Original issue's description:
> > > > Decoupling rtc_base from Obj-C code
> > > >
> > > > The goal of this CL is to separate Obj-C/Obj-C++ code from targets which have
> > > > also C++ code (see https://bugs.chromium.org/p/webrtc/issues/detail?id=7743
> > > > for more information).
> > > >
> > > > To achieve this we have created 2 targets (rtc_base_objc and rtc_base_generic)
> > > > and rtc_base will act as a proxy between these targets (this way we can avoid a
> > > > circular dependency between rtc_base_generic and rtc_base_objc).
> > > >
> > > > BUG=webrtc:7743
> > > >
> > > > Review-Url: https://codereview.webrtc.org/3001623003
> > > > Cr-Commit-Position: refs/heads/master@{#19661}
> > > > Committed: a0a5b98937
> > >
> > > TBR=kjellander@webrtc.org,kwiberg@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:7743
> > >
> > > Review-Url: https://codereview.webrtc.org/3008103002
> > > Cr-Commit-Position: refs/heads/master@{#19664}
> > > Committed: 791a8f611d
> >
> > TBR=kjellander@webrtc.org,kwiberg@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7743
> >
> > Review-Url: https://codereview.webrtc.org/3004373002
> > Cr-Commit-Position: refs/heads/master@{#19681}
> > Committed: a0c893f324
>
> TBR=kjellander@webrtc.org,kwiberg@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7743
>
> Review-Url: https://codereview.webrtc.org/3007183002
> Cr-Commit-Position: refs/heads/master@{#19688}
> Committed: 9c5e511806

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

BUG=webrtc:7743

Review-Url: https://codereview.webrtc.org/3012823002
Cr-Commit-Position: refs/heads/master@{#19726}
2017-09-07 14:36:28 +00:00
Zijie He
05ec178808 Add CroppedDesktopFrameTest
CroppedDesktopFrame was broken by recent changes unexpectedly, it should be
covered by test cases to avoid this kind of accident.

Bug: chromium:761703
Change-Id: Ib95e4fe19a8bb9799db24fefd3ad154ddd15e53e
Reviewed-on: https://chromium-review.googlesource.com/651448
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19725}
2017-09-07 14:24:54 +00:00
eladalon
591753bf1a Thread-checkers for PeerConnectionFactory::worker_thread_
Add RTC_DCHECKs that would ensure that PeerConnectionFactory::X_w() functions, intended to run on the worker_thread_, do so.

BUG=None

Review-Url: https://codereview.webrtc.org/3007153006
Cr-Commit-Position: refs/heads/master@{#19720}
2017-09-06 19:33:43 +00:00
ilnik
50864a8f4b Add reporting of googContentType via GetStats on send side
BUG=webrtc:8174

Review-Url: https://codereview.webrtc.org/3005193002
Cr-Commit-Position: refs/heads/master@{#19719}
2017-09-06 19:32:35 +00:00
ehmaldonado
1f5bda035c Revert of Add //build/android/pylib/results/ to Android isolate packaging (patchset #2 id:40001 of https://codereview.webrtc.org/3011023002/ )
Reason for revert:
This is not needed, since the script is run on the bot, not on a swarming task.

Original issue's description:
> Reland of Add //build/android/pylib/results/ to Android isolate packaging (patchset #1 id:1 of https://codereview.webrtc.org/3008083004/ )
>
> Reason for revert:
> Now making sure the data attribute contents is not wiped for non-Android targets,
> which caused every test relying on resources to break.
>
> Original issue's description:
> > Revert of Add //build/android/pylib/results/ to Android isolate packaging (patchset #1 id:1 of https://codereview.webrtc.org/3006103002/ )
> >
> > Reason for revert:
> > Breaks memcheck bot: https://build.chromium.org/p/client.webrtc/builders/Linux%20Memcheck/builds/11554
> >
> > Edward: do you understand why? I'll run a full CQ set before relanding for sure.
> >
> > Original issue's description:
> > > Add //build/android/pylib/results/ to Android isolate packaging
> > >
> > > This is needed before relanding
> > > https://chromium-review.googlesource.com/c/chromium/tools/build/+/619228
> > >
> > > TESTED=
> > > I built tools_unittests and verified build/android/pylib/results/presentation/test_results_presentation.py
> > > is listed in the .isolated file:
> > > OUT=out/android-Release
> > > TEST=tools_unittests
> > > tools_webrtc/mb/mb.py isolate //$OUT $TEST
> > > tools/swarming_client/isolate.py archive -I https://isolateserver.appspot.com -i $OUT/$TEST.isolate -s $OUT/$TEST.isolated
> > >
> > > BUG=chromium:717417
> > > NOTRY=True
> > >
> > > Review-Url: https://codereview.webrtc.org/3006103002
> > > Cr-Commit-Position: refs/heads/master@{#19695}
> > > Committed: f8ff0282c6
> >
> > TBR=ehmaldonado@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=chromium:717417
> >
> > Review-Url: https://codereview.webrtc.org/3008083004
> > Cr-Commit-Position: refs/heads/master@{#19696}
> > Committed: e5abac443a
>
> BUG=chromium:717417
>
> Review-Url: https://codereview.webrtc.org/3011023002
> Cr-Commit-Position: refs/heads/master@{#19707}
> Committed: 2e75bd4ed8

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

Review-Url: https://codereview.webrtc.org/3011063002
Cr-Commit-Position: refs/heads/master@{#19717}
2017-09-06 19:11:27 +00:00
sprang
ff19d35bae Fix FrameConfigs used for VP8 with four temporal layers.
sync flag should only be true if:

* temporal layer > 0
* frame predics _only_ from tl0 (last)

Furthermore, flags should not predict from a buffer unless it has been
previously updated in the current iteration for the pattern.

I also added an experiment with an alternative pattern for a three
layer setup, where loose some efficieny by halving the pattern but
gain a little bit by updating arf for the top layer. The theory is that
this will cause fewer frame drops since we don't have as much
dependency on previous frames in the upper layer (which might not be
retransmitted).

BUG=webrtc:8162

Review-Url: https://codereview.webrtc.org/3003823003
Cr-Commit-Position: refs/heads/master@{#19716}
2017-09-06 14:14:02 +00:00
nisse
35713eaf56 Reland of Use RtxReceiveStream. (patchset #1 id:1 of https://codereview.webrtc.org/3010983002/ )
Reason for revert:
Intend to fix perf failures and reland.

Original issue's description:
> Revert of Use RtxReceiveStream. (patchset #5 id:80001 of https://codereview.webrtc.org/3008773002/ )
>
> Reason for revert:
> A few perf tests broken, including
>
> RampUpTest.UpDownUpAbsSendTimeSimulcastRedRtx
> RampUpTest.UpDownUpTransportSequenceNumberRtx
> RampUpTest.UpDownUpTransportSequenceNumberPacketLoss
>
>
> Original issue's description:
> > Use RtxReceiveStream.
> >
> > This also has the beneficial side-effect that when a media stream
> > which is protected by FlexFEC receives an RTX retransmission, the
> > retransmitted media packet is passed into the FlexFEC machinery,
> > which should improve its ability to recover packets via FEC.
> >
> > BUG=webrtc:7135
> >
> > Review-Url: https://codereview.webrtc.org/3008773002
> > Cr-Commit-Position: refs/heads/master@{#19649}
> > Committed: 5c0f6c62ea
>
> TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/3010983002
> Cr-Commit-Position: refs/heads/master@{#19653}
> Committed: 3c39c0137a

TBR=brandtr@webrtc.org,danilchap@webrtc.org,stefan@webrtc.org,magjed@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3006063002
Cr-Commit-Position: refs/heads/master@{#19715}
2017-09-06 14:03:16 +00:00
danilchap
3c6abd200c Update thread annotiation macros in rtc_base to use RTC_ prefix
BUG=webrtc:8198

Review-Url: https://codereview.webrtc.org/3006133002
Cr-Commit-Position: refs/heads/master@{#19714}
2017-09-06 12:46:29 +00:00
asapersson
a505fb021f vp8_impl.cc: Rename postproc field trial string for arm.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3006143002
Cr-Commit-Position: refs/heads/master@{#19713}
2017-09-06 12:34:11 +00:00