Commit Graph

18854 Commits

Author SHA1 Message Date
e172d89f73 Change capture time format to nanoseconds in EncodedImage.
The millisecond field is deprecated and will be removed once the
dependencies have been updated.

BUG=webrtc:7760

Review-Url: https://codereview.webrtc.org/3010623002
Cr-Commit-Position: refs/heads/master@{#19622}
2017-08-31 09:37:28 +00:00
05ea2b39e0 Deprecate IceServer constructors and update dependencies
Bug: webrtc:8176
Change-Id: I2ebc0edf1776c49c202a181d7597099e9242c0e7
Reviewed-on: https://chromium-review.googlesource.com/642710
Commit-Queue: Diogo Real <diogor@google.com>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19621}
2017-08-31 07:40:55 +00:00
125e95eaf6 Delete unused method FilesystemInterface::IsAbsent.
BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/3012583002
Cr-Commit-Position: refs/heads/master@{#19620}
2017-08-31 07:22:06 +00:00
46f9b6cbb8 Roll chromium_revision b29a3085c7..aec6acbb0b (498747:498770)
Change log: b29a3085c7..aec6acbb0b
Full diff: b29a3085c7..aec6acbb0b

Changed dependencies:
* src/build: 902cc6d16d..32a4a504b8
* src/testing: a968c9cf1b..8680a9cd0e
* src/third_party: 0d67c6233c..7c7f5b698c
* src/tools: 7558c6917c..5c3f3eaccf
DEPS diff: b29a3085c7..aec6acbb0b/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3007883002
Cr-Commit-Position: refs/heads/master@{#19619}
2017-08-31 07:15:16 +00:00
8f82e63c75 Roll chromium_revision d96af20ab5..b29a3085c7 (498697:498747)
Change log: d96af20ab5..b29a3085c7
Full diff: d96af20ab5..b29a3085c7

Changed dependencies:
* src/base: 87130a8deb..ff5f95aa5a
* src/build: 79e6eb4ea4..902cc6d16d
* src/ios: 5b1f1341d4..306120e94a
* src/testing: bc3a93604e..a968c9cf1b
* src/third_party: c86e0bc867..0d67c6233c
* src/third_party/catapult: 1831170b35..b18300c0d1
* src/third_party/googletest/src: 42bc671f47..7f8fefabed
* src/tools: 9215ac4334..7558c6917c
DEPS diff: d96af20ab5..b29a3085c7/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3006903002
Cr-Commit-Position: refs/heads/master@{#19618}
2017-08-31 04:18:15 +00:00
3aa4afd630 Flip IsWindowOnScreen behavior when native APIs fail
Per discussion in
https://chromium-review.googlesource.com/c/external/webrtc/+/641814, the
behavior of IsWindowOnScreen() functions when native APIs fail should be
flipped. I.e. window is *not* on screen if OS cannot find it.

Bug: chromium:758554
Change-Id: Ife449a5261fcd89c37595e29a0b1802fcf3c42a5
Reviewed-on: https://chromium-review.googlesource.com/644290
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19617}
2017-08-31 02:43:14 +00:00
6d648927ac Roll chromium_revision e3b81fc1af..d96af20ab5 (498625:498697)
Change log: e3b81fc1af..d96af20ab5
Full diff: e3b81fc1af..d96af20ab5

Changed dependencies:
* src/build: 2267fe9e91..79e6eb4ea4
* src/ios: 1b4b90bfb0..5b1f1341d4
* src/testing: 889040ba67..bc3a93604e
* src/third_party: c917e53a50..c86e0bc867
* src/third_party/catapult: 8e06404d69..1831170b35
* src/tools: a65b03f4a6..9215ac4334
DEPS diff: e3b81fc1af..d96af20ab5/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3012613002
Cr-Commit-Position: refs/heads/master@{#19616}
2017-08-31 02:00:26 +00:00
169629aca3 Change WebRtcSession to have a vector of channels
This is the first step towards supporting multiple audio/video
channels in PeerConnection/WebRtcSession. For now, there can only
be 0 or 1 channels in the vector. This adds the framework so that
all the other code that assumes a single audio/video channel can
be transitioned one-by-one to multiple channels.

Bug: webrtc:8183
Change-Id: I6456af32d6e3adf7eb83e281e43253ea973c4eb9
Reviewed-on: https://chromium-review.googlesource.com/644222
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19615}
2017-08-31 01:15:23 +00:00
4fe660785b Use GetWindowDrawableRect() instead of GetCroppedWindowRect() in WindowCapturerWin
GetCroppingWindowRect() is too generic and easy to be misused. For example, in
WindowCapturerWin, it's used to calculate the DesktopRect of the target window,
which is inaccurate. See the screenshot in the bug, it wrongly crops borders on
Windows 8+.

So GetCroppingWindowRect() should be removed eventually, the logic should be
placed in CroppingWindowCapturerWin. But since it's still used in the deprecated
logic in MouseCursorMonitorWin, I would prefer to remove this function after
MouseCursorMonitor improvement has been finished.

But before that, WindowCapturerWin should use GetWindowDrawableRect() instead of
GetCroppedWindowRect() to avoid the wrongly cropping behavior on Windows 8+.

Bug: webrtc:8157
Change-Id: I012b663dced8105623c563dbe55ffcb8d7f17f75
Reviewed-on: https://chromium-review.googlesource.com/642092
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19614}
2017-08-31 00:24:54 +00:00
f7f685c9de Rename IsWindowMinimized to IsWindowOnScreen
As discussed in change
https://chromium-review.googlesource.com/c/external/webrtc/+/634043, the name of
IsWindowMinimized() functions is too confusing. IsWindowOnScreen() is preferred,
since it describes the behavior of the functions more accurately.

This change does not flip the default behavior of these functions to avoid a
behavior change. TODO has been added; and the flipping will happen in a
following change.

Bug: chromium:758554
Change-Id: I009c0fa57142756e5c83f76b2a3561253db1b67f
Reviewed-on: https://chromium-review.googlesource.com/641814
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19613}
2017-08-31 00:20:54 +00:00
774115c8c6 Change ChannelManager to use unique_ptr
Also clarify the ownership of created channels.

Bug: None
Change-Id: I9cbaec177069d27da2b3b48b93af48f705243b4b
Reviewed-on: https://chromium-review.googlesource.com/643950
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19612}
2017-08-30 22:52:33 +00:00
24efa72e54 Fix RTCP transport not destroyed when channel creation fails
Bug: None
Change-Id: Ic2f1b7899307eff9b2c98805a5a0eb22ca2e062d
Reviewed-on: https://chromium-review.googlesource.com/642458
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19611}
2017-08-30 22:35:18 +00:00
c30e61d766 Roll chromium_revision 568b1c4cbe..e3b81fc1af (498551:498625)
Change log: 568b1c4cbe..e3b81fc1af
Full diff: 568b1c4cbe..e3b81fc1af

Changed dependencies:
* src/base: db9490a1bc..87130a8deb
* src/build: 8b27273109..2267fe9e91
* src/ios: 21c90fa060..1b4b90bfb0
* src/testing: 3ee68a77cf..889040ba67
* src/third_party: 60aff9b446..c917e53a50
* src/third_party/catapult: db0acc015b..8e06404d69
* src/tools: d6ad039ca3..a65b03f4a6
DEPS diff: 568b1c4cbe..e3b81fc1af/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3010793002
Cr-Commit-Position: refs/heads/master@{#19610}
2017-08-30 22:16:15 +00:00
8bab5c60cd Roll chromium_revision 0f448170cb..568b1c4cbe (498475:498551)
Change log: 0f448170cb..568b1c4cbe
Full diff: 0f448170cb..568b1c4cbe

Changed dependencies:
* src/base: b55b56c514..db9490a1bc
* src/build: 815636f502..8b27273109
* src/ios: 7879f4ba18..21c90fa060
* src/testing: 61972623dc..3ee68a77cf
* src/third_party: 536d63f06f..60aff9b446
* src/third_party/catapult: 021853793c..db0acc015b
* src/tools: bf7858c2d4..d6ad039ca3
DEPS diff: 0f448170cb..568b1c4cbe/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3008953002
Cr-Commit-Position: refs/heads/master@{#19609}
2017-08-30 19:17:05 +00:00
845de2febd Roll chromium_revision 19397b2658..0f448170cb (498435:498475)
Change log: 19397b2658..0f448170cb
Full diff: 19397b2658..0f448170cb

Changed dependencies:
* src/base: 8adaa1419e..b55b56c514
* src/build: f84dcfe8c8..815636f502
* src/ios: ced25f6eb6..7879f4ba18
* src/testing: f991fe6a88..61972623dc
* src/third_party: ad4d3fc9cb..536d63f06f
* src/tools: 5fe7f475ee..bf7858c2d4
DEPS diff: 19397b2658..0f448170cb/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3005863002
Cr-Commit-Position: refs/heads/master@{#19608}
2017-08-30 17:22:55 +00:00
13b9882fd3 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 (desktop_capture_objc and
desktop_capture_generic) and desktop_capture will act as a proxy between these
targets (this way we can avoid a circular dependency between
desktop_capture_generic and desktop_capture_objc).

BUG=webrtc:7743

Review-Url: https://codereview.webrtc.org/2989053002
Cr-Commit-Position: refs/heads/master@{#19607}
2017-08-30 14:24:43 +00:00
5d655cd898 Roll chromium_revision ed2864a8ee..19397b2658 (498409:498435)
Change log: ed2864a8ee..19397b2658
Full diff: ed2864a8ee..19397b2658

Changed dependencies:
* src/ios: bc993826e5..ced25f6eb6
* src/third_party: 30913a42ac..ad4d3fc9cb
* src/tools: b21d356cb5..5fe7f475ee
DEPS diff: ed2864a8ee..19397b2658/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3006833002
Cr-Commit-Position: refs/heads/master@{#19606}
2017-08-30 14:16:31 +00:00
4fed3c0b6f Further utilizing the AEC3 config struct for constants
BUG=webrtc:5298

Review-Url: https://codereview.webrtc.org/3007833002
Cr-Commit-Position: refs/heads/master@{#19605}
2017-08-30 13:58:44 +00:00
b57f42676e VideoProcessorIntegrationTest: make it runnable on a task queue.
* First do all frame processing, then do all rate control
  statistics calculations. This means that we only need to
  synchronize once.
* Run the VideoProcessor on a task queue, thus supporting Android
  HW codecs.
* Add some unit tests for the VideoProcessor.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2997283002
Cr-Commit-Position: refs/heads/master@{#19604}
2017-08-30 13:29:51 +00:00
cd8b079afb Increased the allowed API call jitter in AEC3
This CL increases the amount of API call jitter that is allowed in AEC3
without causing resets of AEC3. This increase is now possible, as non-
causal alignments will be detected by the newly imposed delay bound.

BUG=8175

Review-Url: https://codereview.webrtc.org/3012553002
Cr-Commit-Position: refs/heads/master@{#19603}
2017-08-30 13:19:11 +00:00
f8084d485b Fix memory leak in VideoToolbox encoder.
We were leaking a fragmentation header object on each frame.

BUG=webrtc:8132

Review-Url: https://codereview.webrtc.org/3004013002
Cr-Commit-Position: refs/heads/master@{#19602}
2017-08-30 11:47:10 +00:00
16adf03d25 Recently we moved webrtc/base to webrtc/rtc_base, so these
directives in our DEPS files are not needed anymore.

Includes from webrtc/rtc_base are also whitelisted in webrtc/DEPS
so we don't have to whitelist it in all the others DEPS files.

BUG=webrtc:7634
NOTRY=True

Review-Url: https://codereview.webrtc.org/3006583002
Cr-Commit-Position: refs/heads/master@{#19601}
2017-08-30 11:45:58 +00:00
a35df4260f WebRtcVideoEngine: Encapsulate logic for unifying internal and external video codecs
This CL encapsulates the logic for unifying the internal and external
video encoders into a helper class. The purpose is to prepare for
introducing a new video encoder factory interface that inherently
represents all encoders (i.e. both internal and external). A helper
interface EncoderFactoryAdapter is introduced that both the old
WebRtcVideoEncoderFactory and the new factory interface can implement
and serves as common point to leave the rest of the code unchanged.

BUG=webrtc:7925

Review-Url: https://codereview.webrtc.org/3006713002
Cr-Commit-Position: refs/heads/master@{#19600}
2017-08-30 11:21:30 +00:00
386449971a Fix setting of recovered flag in RtxReceiveStream.
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3005793002
Cr-Commit-Position: refs/heads/master@{#19599}
2017-08-30 11:16:40 +00:00
6d5b4d6fe1 Piggybacking simulcast id and ALR experiment id into video content type extension.
Use it to slice UMA video receive statis.

BUG=8032

Review-Url: https://codereview.webrtc.org/2986893002
Cr-Commit-Position: refs/heads/master@{#19598}
2017-08-30 10:32:14 +00:00
057e63a0ac Roll chromium_revision 9e8703286a..ed2864a8ee (498393:498409)
Change log: 9e8703286a..ed2864a8ee
Full diff: 9e8703286a..ed2864a8ee

Changed dependencies:
* src/ios: c9803eabb5..bc993826e5
* src/third_party: 18e54ad36a..30913a42ac
* src/tools: 3acb340838..b21d356cb5
DEPS diff: 9e8703286a..ed2864a8ee/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3011553004
Cr-Commit-Position: refs/heads/master@{#19597}
2017-08-30 10:23:59 +00:00
f4ded682e9 Add SentToInputFpsRatioPercent UMA metric on send side
New metric is a ratio between SentFramesPerSecond and
InputFramesPerSecond. It's needed to measure how much of input frames
are actually sent.

BUG=webrtc:8178

Review-Url: https://codereview.webrtc.org/3010723002
Cr-Commit-Position: refs/heads/master@{#19596}
2017-08-30 09:30:20 +00:00
51c54c5d2c Roll chromium_revision 84d100a1fb..9e8703286a (498182:498393)
Change log: 84d100a1fb..9e8703286a
Full diff: 84d100a1fb..9e8703286a

Changed dependencies:
* src/base: 0563e6ee79..8adaa1419e
* src/build: ba6bd88e27..f84dcfe8c8
* src/ios: c59f325bf1..c9803eabb5
* src/testing: 316d4522a8..f991fe6a88
* src/third_party: d4584cc32c..18e54ad36a
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/ae9f0616c5..e3bb51cb23
* src/third_party/catapult: eebaedf9bc..021853793c
* src/tools: e0d76b6223..3acb340838
* src/tools/swarming_client: 42721e128d..72b6a2dc60
DEPS diff: 84d100a1fb..9e8703286a/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3004863003
Cr-Commit-Position: refs/heads/master@{#19595}
2017-08-30 08:43:11 +00:00
4ccd9c1493 Change DEPS URL for src/tools/swarming_client to match Chromium
BUG=webrtc:8177
TESTED=tools_webrtc/autoroller/roll_deps.py works after this change
NOTRY=True

Review-Url: https://codereview.webrtc.org/3004863002
Cr-Commit-Position: refs/heads/master@{#19594}
2017-08-30 07:42:43 +00:00
9657172a81 neteq_rtpplay: Add one more RTP header extension and fix some stats
The extension ID for transport sequence number is added to the list of
known RTP header extensions. Also, the minimum and maximum waiting
time for packets is now aggregated as minimum and maximum,
respectively, not as averages.

BUG=none

Review-Url: https://codereview.webrtc.org/3004783003
Cr-Commit-Position: refs/heads/master@{#19593}
2017-08-30 07:41:30 +00:00
85e6a4ba13 Use desktop relative mouse cursor position in DesktopAndCursorComposer
This change adds one temporary use_desktop_relative_cursor_position_ flag in
DesktopAndCursorComposer. It's automatically set according to the consturctor
used.
When the flag is true, DesktopAndCursorComposer uses the newly added
MouseCursorMonitor::Callback::OnCursorPosition(), which is the absolute position
of the cursor in the full desktop coordinate, and DesktopCapturer::IsOccluded()
to decide whether the mouse cursor should be drawn on the DesktopFrame.
When the flag is false, the behavior of DesktopAndCursorComposer is unchanged.

This flag will be removed together with the deprecated constructor of
DesktopAndCursorComposer.

Currently the new DesktopAndCursorComposer constructor is not used, so no
behavior change is expected.

Bug: webrtc:7950
Change-Id: I7235e32fa325a21c4a2594613764a9f81d76dfbc
Reviewed-on: https://chromium-review.googlesource.com/641075
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19592}
2017-08-30 01:38:17 +00:00
a787702417 GetWindowRect() on X11 does not correctly translate the coordinate
XWindowAttributes.x and y are in the coordinate of the parent window, so
XTranslateCoordinates() should be used to do the translation.
Meanwhile this change reduces the scope of the XErrorTrap in GetWindowList()
function to ensure the callback can use other XErrorTrap to cover other X
function calls.

Bug: webrtc:7950
Change-Id: I520227b11704c5a0cb665d9de86925ed4e86540d
Reviewed-on: https://chromium-review.googlesource.com/639590
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19591}
2017-08-29 20:50:37 +00:00
12827113a1 Use WindowFinder in WindowCapturer to detect IsOccluded()
In this change,
bool DesktopCapturer::IsOccluded(const DesktopVector& pos);
is added to DesktopCapturer interface. This function returns true if the |pos|
is hidden by other elements on the display.

The function expects to return false for ScreenCapturer implementations:
everything is visible on the screen.

In WindowCapturer implementations, WindowFinder is expected to be used to help
detect the WindowId under |pos|. If the window_id_ equals to the window id
returned by WindowFinder, this function returns false.

To ensure the correct coordinate is used, a comment is also added to
WindowFinder::GetWindowUnderPoint() function. Considering it's used only in
desktop_capture module, using system coordinate is simpler.

Bug: webrtc:7950
Change-Id: I8ac4fbd5f4a612388f1593907805cfb2c359f70f
Reviewed-on: https://chromium-review.googlesource.com/636784
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19590}
2017-08-29 20:43:56 +00:00
141aacbf0b Fix the Chromium crash when creating an answer without a remote description.
Replacing the RTC_DCHECK with an if condition so that the method GetOptionsForAnswer
won't crash when there is no remote description. WebRtcSessionDescriptionFactory
will handle the null remote description.

TBR=deadbeef@webrtc.org
BUG=chromium:757830

Review-Url: https://codereview.webrtc.org/3006723002
Cr-Commit-Position: refs/heads/master@{#19589}
2017-08-29 20:23:53 +00:00
1dca9d513a Support a user-provided string for the TLS ALPN extension.
Fix source formatting
Add TLS ALPN extension.

Bug: webrtc:8086
Change-Id: I1f28ccd78760d3415e465f734744d2c2f93845e2
Reviewed-on: https://chromium-review.googlesource.com/611150
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Justin Uberti <juberti@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Diogo Real <diogor@google.com>
Cr-Commit-Position: refs/heads/master@{#19588}
2017-08-29 20:11:16 +00:00
6ee66b6399 Roll chromium_revision cbe78d23e7..84d100a1fb (498083:498182)
Change log: cbe78d23e7..84d100a1fb
Full diff: cbe78d23e7..84d100a1fb

Changed dependencies:
* src/base: 2241aaea0d..0563e6ee79
* src/build: 48a2b7b39d..ba6bd88e27
* src/ios: 1f624609bb..c59f325bf1
* src/testing: 3f75c4b63c..316d4522a8
* src/third_party: e8b1399125..d4584cc32c
* src/third_party/catapult: 49e6028206..eebaedf9bc
* src/tools: 66dd44fe64..e0d76b6223
DEPS diff: cbe78d23e7..84d100a1fb/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3010653003
Cr-Commit-Position: refs/heads/master@{#19587}
2017-08-29 19:32:19 +00:00
f09c904dd1 neteq_rtpplay: Fix a bug in the matlab plotting function
This CL fixes a small bug, causing the matlab plot script to contain
empty vectors. Also, the script file name is fixed, to avoid two
periods (.) in the file name; matlab did not like that.

BUG=none

Review-Url: https://codereview.webrtc.org/3004813002
Cr-Commit-Position: refs/heads/master@{#19586}
2017-08-29 16:14:08 +00:00
579de6faef Add a new frame generator that cycles through randomly generated slides.
Like YuvFileGenerator, this also updates the display with a new slide on every Nth frame, but it generates the slides itself instead of reading them from files.

BUG=webrtc:8138

Review-Url: https://codereview.webrtc.org/3003193002
Cr-Commit-Position: refs/heads/master@{#19585}
2017-08-29 16:12:57 +00:00
c63f9345e7 Roll chromium_revision 4337a96424..cbe78d23e7 (498063:498083)
Change log: 4337a96424..cbe78d23e7
Full diff: 4337a96424..cbe78d23e7

Changed dependencies:
* src/base: ac72edb662..2241aaea0d
* src/ios: d11581d3d9..1f624609bb
* src/third_party: bdca06ac31..e8b1399125
* src/tools: 441a84eb61..66dd44fe64
DEPS diff: 4337a96424..cbe78d23e7/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3010643002
Cr-Commit-Position: refs/heads/master@{#19584}
2017-08-29 14:20:23 +00:00
8a6241e351 Make DirectTransport::task_queue_ const
DirectTransport::task_queue_ previously could not be const, because of a hack for the deprecated version of DirectTransport. That is no longer the case.

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

Review-Url: https://codereview.webrtc.org/3012483002
Cr-Commit-Position: refs/heads/master@{#19583}
2017-08-29 13:53:21 +00:00
cfab6c7c04 Increase timeout in RTCUIApplicationStatusObserver
Increase timeout since the wait function timed out in certain debugging
circumstances. Also change the check to a DCHECK since it is not really
a critical error if it would time out.

BUG=None

Review-Url: https://codereview.webrtc.org/3007773002
Cr-Commit-Position: refs/heads/master@{#19582}
2017-08-29 13:52:04 +00:00
ecf312e603 Removes unused WaveOut APIs from ADM.
Will remove default implementations as well once landed and removed
in Chrome as well.

These two AudioDeviceModule APIs are removed:

int32_t SetWaveOutVolume(uint16_t volumeLeft, uint16_t volumeRight)
int32_t WaveOutVolume(uint16_t* volumeLeft, uint16_t* volumeRight) const

BUG=webrtc:7306

Review-Url: https://codereview.webrtc.org/3006793002
Cr-Commit-Position: refs/heads/master@{#19581}
2017-08-29 13:02:10 +00:00
9b2f20c618 Replace gflags usages with rtc_base/flags in all targets based on test_main
BUG=webrtc:7644

Review-Url: https://codereview.webrtc.org/2995363002
Cr-Commit-Position: refs/heads/master@{#19580}
2017-08-29 12:51:57 +00:00
a16c70b8ba Verify parsed QP value when frame is encoded instead of storing parsed value and verifying later.
Removes:
- VideoProcessor: GetQpFromEncoder, GetQpFromBitstream
- FrameInfo: qp_encoder, qp_bitstream

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3007753002
Cr-Commit-Position: refs/heads/master@{#19579}
2017-08-29 12:39:36 +00:00
e9ef907991 Revert of Add logging of host lookups made by TurnPort to the RtcEventLog. (patchset #11 id:200001 of https://codereview.webrtc.org/2996933003/ )
Reason for revert:
Breaks Chromium build due to the changed constructor in webrtc/p2p/client/basicportallocator.h.

Build (example): https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/19739.

Log:
FAILED: obj/remoting/protocol/protocol/port_allocator.o
/b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/remoting/protocol/protocol/port_allocator.o.d -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"310694-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCOMPONENT_BUILD -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -D_GLIBCXX_DEBUG=1 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DEXPAT_RELATIVE_PATH -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0 -DFEATURE_ENABLE_VOICEMAIL -DGTEST_RELATIVE_PATH -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DBORINGSSL_SHARED_LIBRARY -I../.. -Igen -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/glib-2.0 -I../../build/linux/debian_jessie_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -I../../third_party/webrtc_overrides -I../../testing/gtest/include -I../../third_party -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -I../../third_party/libyuv/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -fdebug-prefix-map=/b/c/b/Linux_Builder__dbg_/src=. -m64 -march=x86-64 -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -Wno-enum-compare-switch -O0 -fno-omit-frame-pointer -g2 -gsplit-dwarf -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Wno-header-guard -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++14 -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fno-exceptions -fvisibility-inlines-hidden -c ../../remoting/protocol/port_allocator.cc -o obj/remoting/protocol/protocol/port_allocator.o
../../remoting/protocol/port_allocator.cc:48:7: error: no matching constructor for initialization of 'cricket::BasicPortAllocator'
    : BasicPortAllocator(network_manager.get(), socket_factory.get()),
      ^                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../third_party/webrtc/p2p/client/basicportallocator.h:35:12: note: candidate constructor not viable: requires single argument 'network_manager', but 2 arguments were provided
  explicit BasicPortAllocator(rtc::NetworkManager* network_manager);
           ^
../../third_party/webrtc/p2p/client/basicportallocator.h:30:7: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class BasicPortAllocator : public PortAllocator {
      ^
../../third_party/webrtc/p2p/client/basicportallocator.h:32:3: note: candidate constructor not viable: requires 3 arguments, but 2 were provided
  BasicPortAllocator(rtc::NetworkManager* network_manager,
  ^
../../third_party/webrtc/p2p/client/basicportallocator.h:36:3: note: candidate constructor not viable: requires 3 arguments, but 2 were provided
  BasicPortAllocator(rtc::NetworkManager* network_manager,
  ^
../../third_party/webrtc/p2p/client/basicportallocator.h:39:3: note: candidate constructor not viable: requires 5 arguments, but 2 were provided
  BasicPortAllocator(rtc::NetworkManager* network_manager,
  ^
1 error generated.

Original issue's description:
> Add logging host lookups made by TurnPort to the RtcEventLog.
>
> The following fields are logged:
> - error, if there was an error.
> - elapsed time in milliseconds
>
> BUG=webrtc:8100
>
> Review-Url: https://codereview.webrtc.org/2996933003
> Cr-Commit-Position: refs/heads/master@{#19574}
> Committed: c251cb13c0

TBR=terelius@webrtc.org,pthatcher@webrtc.org,jonaso@google.com,pthatcher@google.com,solenberg@webrtc.org,deadbeef@webrtc.org,jonaso@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:8100

Review-Url: https://codereview.webrtc.org/3012473002
Cr-Commit-Position: refs/heads/master@{#19578}
2017-08-29 11:49:00 +00:00
3cc68b071d Roll chromium_revision 2cbfe89d4f..4337a96424 (498011:498063)
Change log: 2cbfe89d4f..4337a96424
Full diff: 2cbfe89d4f..4337a96424

Changed dependencies:
* src/base: 5ad241c42e..ac72edb662
* src/ios: afc625d85d..d11581d3d9
* src/testing: 74da2b6afc..3f75c4b63c
* src/third_party: 7a3b22ef68..bdca06ac31
* src/third_party/catapult: 7149cbfdfd..49e6028206
* src/tools: a97b06208a..441a84eb61
DEPS diff: 2cbfe89d4f..4337a96424/DEPS

No update to Clang.

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3006783002
Cr-Commit-Position: refs/heads/master@{#19577}
2017-08-29 11:00:23 +00:00
b8853ca8d3 ObjC: Add support for injectable native audio and video codecs
The native interface is added in the private file
webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnectionFactory+Native.h.

BUG=webrtc:8093

Review-Url: https://codereview.webrtc.org/3012443002
Cr-Commit-Position: refs/heads/master@{#19576}
2017-08-29 10:57:22 +00:00
dad6198eee Removing video_{receive,send}_stream.h stub headers.
These headers have been moved to the right place in
https://codereview.webrtc.org/3000253002 and in
https://codereview.webrtc.org/3007553002/ we stopped to
depend on them internally.

This CL tries to remove the stubs from the root directory
so we can unblock crbug.com/611808.

BUG=webrtc:8107

Review-Url: https://codereview.webrtc.org/3011513002
Cr-Commit-Position: refs/heads/master@{#19575}
2017-08-29 10:35:02 +00:00
c251cb13c0 Add logging host lookups made by TurnPort to the RtcEventLog.
The following fields are logged:
- error, if there was an error.
- elapsed time in milliseconds

BUG=webrtc:8100

Review-Url: https://codereview.webrtc.org/2996933003
Cr-Commit-Position: refs/heads/master@{#19574}
2017-08-29 10:20:58 +00:00
f83dc8bbe5 Revert "Adding injectable audio decoder and encoder factory support to the RTCPeerConnection obj-c layer."
This reverts commit 96de428fd1f301c3ad1355183b45e44db5ef3f7f.

Reason for revert: Gives compile errors because the new ObjC++ headers are included in some targets that use ObjC.

Original change's description:
> Adding injectable audio decoder and encoder factory support to the RTCPeerConnection obj-c layer.
> 
> Bug: webrtc:8093
> Change-Id: I868ce5f75a72c6deb065dec60784289d045ae22a
> Reviewed-on: https://chromium-review.googlesource.com/608981
> Commit-Queue: Jeremy Newton-Smith <jeremyns@webrtc.org>
> Reviewed-by: Zeke Chin <tkchin@webrtc.org>
> Reviewed-by: Kári Tristan Helgason <kthelgason@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#19477}

TBR=kjellander@webrtc.org,tkchin@webrtc.org,kthelgason@webrtc.org,jeremyns@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8093
Change-Id: I3ade9dd979c9f13990a2972b15b786b8e78e1cd4
Reviewed-on: https://chromium-review.googlesource.com/640810
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19573}
2017-08-29 10:16:31 +00:00