11686 Commits

Author SHA1 Message Date
lliuu
ff2824b917 Fix compiler warnings due to type mismatch.
BUG=webrtc:8169

Change-Id: Ie98dcaa09e1e5b7c9f48410cd3049740ccac67b9
Reviewed-on: https://chromium-review.googlesource.com/639314
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19567}
2017-08-28 20:31:58 +00:00
magjed
3f89758398 Clean up ownership of webrtc::VideoEncoder
Currently, webrtc::VideoEncoders are supposed to be deleted through the
factory that created them with the
WebRtcVideoEncoderFactory::DestroyVideoEncoder method. In practice,
we sometimes use this method and sometimes we just call delete on the
webrtc::VideoEncoder pointer. We want to be able to consistently use the
normal destructor of webrtc::VideoEncoder instead of having to call
DestroyVideoEncoder so that we can put webrtc::VideoEncoder inside
an std::unique_ptr and make ownership more clear. As part of webrtc:7925
we also want to make a new encoder factory class that does not have the
DestroyVideoEncoder() method, and this CL is a step in that direction.

This CL introduces a helper function CreateScopedVideoEncoder that takes
a webrtc::VideoEncoder and a WebRtcVideoEncoderFactory pointer, and
returns a new webrtc::VideoEncoder instance that can be deleted through
the regular destructor.

This CL also removes WebRtcSimulcastEncoderFactory that almost only
contains logic for handling the DestroyVideoEncoder calls that we no
longer need, and inlines the rest of the logic inside the
WebRtcVideoChannel::WebRtcVideoSendStream::CreateVideoEncoder method.

BUG=webrtc:7925

Review-Url: https://codereview.webrtc.org/3007643002
Cr-Commit-Position: refs/heads/master@{#19564}
2017-08-28 15:05:42 +00:00
mbonadei
673caedc39 Revert of Remove deprecated CodecType methods. (patchset #1 id:1 of https://codereview.webrtc.org/3009583002/ )
Reason for revert:
It breaks chromium FYI bots.

E.g.: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/11615

Original issue's description:
> Remove deprecated CodecType methods.
>
> These are no longer needed as all clients have been updated to use the
> new methods that always return a value.
>
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/3009583002
> Cr-Commit-Position: refs/heads/master@{#19559}
> Committed: 1a92d0de49

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

Review-Url: https://codereview.webrtc.org/3010553002
Cr-Commit-Position: refs/heads/master@{#19563}
2017-08-28 14:16:43 +00:00
mbonadei
5212700c79 Removing dependencies on stub headers within WebRTC.
Headers webrtc/video_receive_stream.h and webrtc/video_send_stream.h
have been moved to webrtc/call in https://codereview.webrtc.org/3000253002,
this CL is just switching WebRTC internal dependencies to actual headers
instead of depending on the backward compatibility ones.

BUG=webrtc:8107

Review-Url: https://codereview.webrtc.org/3007553002
Cr-Commit-Position: refs/heads/master@{#19561}
2017-08-28 13:46:48 +00:00
minyue-webrtc
0e320ec5ba Wiring discard rate of audio FEC/RED packets up to StatsReport.
BUG=webrtc:7903

Change-Id: I0325725be354ab89cfce1d3564936fe5ff93d303
Reviewed-on: https://chromium-review.googlesource.com/559339
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19560}
2017-08-28 13:17:55 +00:00
kthelgason
1a92d0de49 Remove deprecated CodecType methods.
These are no longer needed as all clients have been updated to use the
new methods that always return a value.

BUG=None

Review-Url: https://codereview.webrtc.org/3009583002
Cr-Commit-Position: refs/heads/master@{#19559}
2017-08-28 13:16:02 +00:00
ilnik
d986d76806 Update jpeg writer to compile on iOS and document it better
Original implementation of jpeg writer didn't compile on iOS at all.
This required clients to exclude some code using defines, which leads to
more complicated code.

Now, instead, jpeg writer will compile but will do nothing on iOS. Clients'
code don't need any additional checks now.

BUG=none

Review-Url: https://codereview.webrtc.org/3004603002
Cr-Commit-Position: refs/heads/master@{#19558}
2017-08-28 13:08:33 +00:00
sprang
b32aaf97bd Reland of Verify sender ssrc when receiving rtcp target bitrate (patchset #1 id:1 of https://codereview.webrtc.org/3005633002/ )
Reason for revert:
Landed fix in upstream project.

Original issue's description:
> Revert of Verify sender ssrc when receiving rtcp target bitrate (patchset #3 id:40001 of https://codereview.webrtc.org/3000373002/ )
>
> Reason for revert:
> Might be the root cause of an internal test failure.
>
> Original issue's description:
> > Verify sender ssrc when receiving rtcp target bitrate
> >
> > BUG=webrtc:8137
> >
> > Review-Url: https://codereview.webrtc.org/3000373002
> > Cr-Commit-Position: refs/heads/master@{#19524}
> > Committed: a7a4beb419
>
> TBR=danilchap@webrtc.org,sprang@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:8137
>
> Review-Url: https://codereview.webrtc.org/3005633002
> Cr-Commit-Position: refs/heads/master@{#19529}
> Committed: 95a64ca8aa

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

Review-Url: https://codereview.webrtc.org/3006683002
Cr-Commit-Position: refs/heads/master@{#19557}
2017-08-28 12:49:12 +00:00
sakal
34960de3fb Implement move constructor for RTPFragmentationHeader.
This allows returning RTPFragmentationHeader from a method and assigning
the results to a variable.

BUG=webrtc:7760

Review-Url: https://codereview.webrtc.org/3002283002
Cr-Commit-Position: refs/heads/master@{#19556}
2017-08-28 10:22:39 +00:00
sakal
160e32c34f Add support for RGB frames in MediaCodecVideoEncoder.
BUG=webrtc:7749

Review-Url: https://codereview.webrtc.org/3002263002
Cr-Commit-Position: refs/heads/master@{#19554}
2017-08-28 09:41:38 +00:00
kthelgason
6644c8b733 Fix a bug in the SDP parser in AppRTCMobile.
It would leave a trailing carriage return character in the payload
list, causing the preferred codec to appear twice if it was at the
back of the list originally. This causes problems down the line and
results in that codec not being negotiated successfully.

BUG=webrtc:8129

Review-Url: https://codereview.webrtc.org/3001363002
Cr-Commit-Position: refs/heads/master@{#19552}
2017-08-28 07:48:18 +00:00
mbonadei
95c8f65382 Now that https://codereview.webrtc.org/3003643002 is landed we can
remove rtc_base_approved from the public_deps list of rtc_task_queue.

BUG=webrtc:8160
NOTRY=True

Review-Url: https://codereview.webrtc.org/3008553002
Cr-Commit-Position: refs/heads/master@{#19551}
2017-08-28 06:40:10 +00:00
magjed
b1c7453bfa Android: Add common function for adding/releasing native reference
This CL introduces common functions for adding and releasing
native references to reduce the number of JNI functions.

BUG=webrtc:8043

Review-Url: https://codereview.webrtc.org/3003213002
Cr-Commit-Position: refs/heads/master@{#19547}
2017-08-27 20:47:20 +00:00
stefan
a86f57e624 Move GetOutstandingBytes() call inside field trial check to avoid taking an unneccessary lock.
BUG=webrtc:7926

Review-Url: https://codereview.webrtc.org/3009673002
Cr-Commit-Position: refs/heads/master@{#19540}
2017-08-26 13:33:43 +00:00
magjed
7eb4082a66 Android: Don't check ref count when releasing PeerConnectionInterface
BUG=webrtc:8043

Review-Url: https://codereview.webrtc.org/3010433002
Cr-Commit-Position: refs/heads/master@{#19539}
2017-08-26 12:57:20 +00:00
magjed
09f3f6eb26 Android: Update convenience macro defining JNI-accessible methods
Update the name of the macro to something more descriptive and use
variable length arguments to make it work better with autoformatting
tools.

BUG=None

Review-Url: https://codereview.webrtc.org/2998403002
Cr-Commit-Position: refs/heads/master@{#19538}
2017-08-26 10:25:43 +00:00
kwiberg
d1d79f6866 Remove dead code
This code became dead when the builtin audio codec factories were
rewritten in https://codereview.webrtc.org/2997713002/.

BUG=webrtc:7821, webrtc:7822

Review-Url: https://codereview.webrtc.org/3003603002
Cr-Commit-Position: refs/heads/master@{#19535}
2017-08-26 05:22:42 +00:00
Zijie He
2a47e5dfc8 Use windows' content rectangles rather than their borders to determine overlapping
If the content area of a window is not covered by the content area of another
window, we do not treat them as overlapping. This can fix the issue that two
fullscreen windows cover each other, or a fullscreen window is covered by the
shadow effect of task bar.

Bug: chromium:741770
Change-Id: I92dc636bc8445d50b00390cf3332695f69daf9c6
Reviewed-on: https://chromium-review.googlesource.com/628244
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19532}
2017-08-26 01:10:16 +00:00
Zijie He
af5686a229 Implement scaling detection in WindowCapturerWin
WindowCapturerWin wrongly calculate the image size if the application it target
does not support high DPI. It causes part of the output frame black. See bug for
details.

Bug: webrtc:8112
Change-Id: I33c66dfa977ec08a29c56ff86ae37320b1459c87
Reviewed-on: https://chromium-review.googlesource.com/634383
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19531}
2017-08-26 00:48:06 +00:00
zhihuang
95a64ca8aa Revert of Verify sender ssrc when receiving rtcp target bitrate (patchset #3 id:40001 of https://codereview.webrtc.org/3000373002/ )
Reason for revert:
Might be the root cause of an internal test failure.

Original issue's description:
> Verify sender ssrc when receiving rtcp target bitrate
>
> BUG=webrtc:8137
>
> Review-Url: https://codereview.webrtc.org/3000373002
> Cr-Commit-Position: refs/heads/master@{#19524}
> Committed: a7a4beb419

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

Review-Url: https://codereview.webrtc.org/3005633002
Cr-Commit-Position: refs/heads/master@{#19529}
2017-08-25 19:59:42 +00:00
Zijie He
c1f691dff2 Check whether on_screen is null before performing CFBooleanGetValue()
A crash may randomly happen in IsWindowMinimized(), the potential reason is that
|on_screen| is not retrieved from |window| with kCGWindowIsOnScreen property. So
add a == NULL check before executing CFBooleanGetValue().

Bug: chromium:758554
Change-Id: I25ad1ddbb21ec049ef237e55a8d25156bcd982c7
Reviewed-on: https://chromium-review.googlesource.com/634043
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19527}
2017-08-25 18:14:14 +00:00
nisse
41476e014c When Ulpfec recovers a packet, set |returned| flag earlier.
This avoids infinite recursion in case the recovered packet carries a
RED header.

BUG=chromium:754748

Review-Url: https://codereview.webrtc.org/3004553002
Cr-Commit-Position: refs/heads/master@{#19525}
2017-08-25 16:08:44 +00:00
sprang
a7a4beb419 Verify sender ssrc when receiving rtcp target bitrate
BUG=webrtc:8137

Review-Url: https://codereview.webrtc.org/3000373002
Cr-Commit-Position: refs/heads/master@{#19524}
2017-08-25 16:06:16 +00:00
mbonadei
cb2bbce4e1 Removing EXPAT_RELATIVE_PATH and rtc_relative_path.
I think this was previously used in libjingle but it is not
used in WebRTC.

BUG=webrtc:8082

Review-Url: https://codereview.webrtc.org/2999703002
Cr-Commit-Position: refs/heads/master@{#19523}
2017-08-25 15:14:04 +00:00
henrika
5a0c4ed219 Removes usage audio_device_test_api.
These tests are very old and come from a time when we tested each method in the
ADM as if the ADM should function as a standalone component.
Several tests are already disabled and we test combinations of APIs that are no
longer valid (since the ADM is now used in a more fixed way in VoE).
The tests does not verify media (we have other tests under
voice_engine/test/auto_test) which starts media and verifies that it works OK.
There are also a a more extensive set of ADM tests for Android and iOS.
You could also say that these tests tests the most "hardware related parts of
the ADM", but not those that we expose via the VoEHardware API.
Hence, not much value to maintain them imo.

NOTRY=TRUE
BUG=webrtc:7250

Review-Url: https://codereview.webrtc.org/2726433003
Cr-Commit-Position: refs/heads/master@{#19522}
2017-08-25 14:47:31 +00:00
philipel
99b63455b7 Update video_replay tool to be able to dump .jpg files.
BUG=None

Review-Url: https://codereview.webrtc.org/2998353002
Cr-Commit-Position: refs/heads/master@{#19521}
2017-08-25 14:24:21 +00:00
brandtr
9dbd084761 Delete batch mode from VideoProcessorIntegrationTest.
After landing https://codereview.webrtc.org/2997283002/,
batch mode will no longer be needed.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3005593002
Cr-Commit-Position: refs/heads/master@{#19520}
2017-08-25 14:11:19 +00:00
peah
a387eb48b1 Decrease the default reverberation in AEC3
BUG=webrtc:8161

Review-Url: https://codereview.webrtc.org/3003423002
Cr-Commit-Position: refs/heads/master@{#19519}
2017-08-25 14:07:30 +00:00
magjed
4781552f60 Android: Expose EglBase.swapBuffers with presentation time
This function is currently only available in EglBase14, which is not in
the api. This CL adds the swapBuffer method to the public EglBase
interface. For EglBase10, the presentation time is just ignored.

BUG=webrtc:8155

Review-Url: https://codereview.webrtc.org/3003843002
Cr-Commit-Position: refs/heads/master@{#19518}
2017-08-25 13:28:00 +00:00
charujain
474accebdb Roll chromium_revision d323a482ee..7114a66134 (494468:497367) manually
* Enable workaround for building Android with C++14.
* Disable build hooks for WebRTC on Android.

Change log: d323a482ee..7114a66134
Full diff: d323a482ee..7114a66134

Changed dependencies:
* src/base: 66d3c08e82..0b41aca75a
* src/build: 2a5e6515a5..a2a451d3c0
* src/buildtools: ceb050498e..5af0a3a8b8
* src/ios: 2085f316c1..0a0ac63bd3
* src/testing: 3127a16731..8a25f55d8b
* src/third_party: b4122f732f..8c0e65fa05
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/f4ecc84644..ae9f0616c5
* src/third_party/catapult: d27175a044..f8acf3b642
* src/third_party/depot_tools: 6d0d04458d..e081cbe5aa
* src/third_party/icu: 98218d1e92..08cb956852
* src/third_party/libvpx/source/libvpx: cbb83ba4aa..6b9c691daf
* src/tools: 5730fb2d3f..3e167a7bd3
DEPS diff: d323a482ee..7114a66134/DEPS

No update to Clang.

TBR=marpan@webrtc.org,
BUG=webrtc:8148
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3003393002
Cr-Commit-Position: refs/heads/master@{#19517}
2017-08-25 13:21:52 +00:00
perkj
650fdae91c This cl refactor TaskQueues to use a PIMPL implementation on linux/Android.
In later steps the Win/Mac implementation will also be refactored.

The rtc_task_queue target is split up in three separate targets:

rtc_task_queue_api:
Contains the header file task_queue.h but no implementation.
Only external TaskQueue implementations should directly depend on this target.

rtc_task_queue_impl:
Contains the default implementation of task_queue.h.
Only external application targets should directly depend on this target.

rtc_task_queue:
WebRTC targets should depend on this target. It unconditionally depend on rtc_task_queue_api and depending on the new build flag,|rtc_link_task_queue_impl|,  depend on rtc_task_queue_impl.

BUG=webrtc:8160

Review-Url: https://codereview.webrtc.org/3003643002
Cr-Commit-Position: refs/heads/master@{#19516}
2017-08-25 12:00:11 +00:00
brandtr
ee95f87488 Change frame bookkeeping in VideoProcessorIntegrationTest.
Now we always process |rate_profile.num_frames| number of frames.
This means that the output of the tests in
videoprocessor_integrationtest.cc will be slightly different,
as we will no process 300 frames, instead of 299. No rate control
or quality thresholds need to be updated, however.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3004583002
Cr-Commit-Position: refs/heads/master@{#19515}
2017-08-25 11:51:54 +00:00
nisse
26e3abbb40 Reverse |rtx_payload_types| map, and rename.
New name is |rtx_associated_payload_types|.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/3000273002
Cr-Commit-Position: refs/heads/master@{#19514}
2017-08-25 11:44:25 +00:00
brandtr
87f5c5a4d3 Make rate control and quality thresholds optional in VideoProcessorIntegrationTest.
This CL is split out from https://codereview.webrtc.org/2997283002/.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3008543002
Cr-Commit-Position: refs/heads/master@{#19513}
2017-08-25 11:33:49 +00:00
kwiberg
e5eb7247ff Reimplement the builtin audio codec factories using the new stuff in api/
The whole point of all the audio codec stuff we've recently published
in api/ is to function as lego bricks so that building stuff like our
builtin audio codec factories will be easy.

(This has landed once before, but got reverted because of Chromium test
failures---apparently, someone isn't ignoring the case of the codec names
like they're supposed to. The quick fix was to preserve the same case
used by the old implementation.)

BUG=webrtc:7821, webrtc:7822

Review-Url: https://codereview.webrtc.org/2998263002
Cr-Commit-Position: refs/heads/master@{#19512}
2017-08-25 10:10:50 +00:00
eladalon
d1dd2f79e5 Uncomment commented-out sequence-checks in call.cc
Two of the three commented-out checks should have been fixed by https://codereview.webrtc.org/2998923002/. The last will be fixed in a separate CL.

BUG=webrtc:8116

Review-Url: https://codereview.webrtc.org/2999253002
Cr-Commit-Position: refs/heads/master@{#19511}
2017-08-25 09:55:57 +00:00
eladalon
27e812e369 Uncomment thread-checkers in ChannelProxy
The thread-check should be pass unit-tests, following https://codereview.webrtc.org/2998923002/.

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

Review-Url: https://codereview.webrtc.org/2995243002
Cr-Commit-Position: refs/heads/master@{#19510}
2017-08-25 08:50:58 +00:00
andersc
151aa6b3f7 Adjust for initial cropping when adapting frame.
When adapting a frame, any initial cropping coordinate was replaced
by the coordinate calculated for adapting. Offset initial coordinate
instead.

BUG=webrtc:7880

Review-Url: https://codereview.webrtc.org/2975613002
Cr-Commit-Position: refs/heads/master@{#19509}
2017-08-25 08:33:18 +00:00
eladalon
8b07305b04 Eliminate RtpVideoStreamReceiver::receive_cs_ in favor of using a SequencedTaskChecker
RtpVideoStreamReceiver::receive_cs_ is not really necessary, since all of the functions where that lock is acquired, are arrived at from functions of BaseChannel which DCHECK being called from BaseChannel::worker_thread_.

BUG=webrtc:8037

Review-Url: https://codereview.webrtc.org/2987933003
Cr-Commit-Position: refs/heads/master@{#19508}
2017-08-25 07:49:08 +00:00
peah
8cee56f254 Utilizing the AEC3 config struct for constants.
This CL replaces inline constants with config struct
constants.

BUG=webrtc:5298

Review-Url: https://codereview.webrtc.org/3003733002
Cr-Commit-Position: refs/heads/master@{#19507}
2017-08-25 05:36:53 +00:00
Steve Anton
2dbc69fa64 Add stats totalSamplesReceived and concealedSamples
Adds two new stats to RTCMediaStreamTrackStats:
* totalSamplesReceived is the total number of samples received on
      the audio channel and includes real and synthetic samples.
* concealedSamples is the total number of synthetic samples
      received on the audio channel used to conceal packet loss.

Bug: webrtc:8076
Change-Id: I36e9828525ec341490cf3310a972b56a8b443667
Reviewed-on: https://chromium-review.googlesource.com/615902
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19506}
2017-08-25 00:50:42 +00:00
Steve Anton
d6a5cbdf4c Turn off clang-format for WEBRTC_RTCSTATS_IMPL macros.
Clang format wants to put all parameters to WEBRTC_RTCSTATS_IMPL on
their own line, but we prefer to keep the header on the first line and
put the variable arguments (the stats) on their own lines.

Bug: None
Change-Id: Ic53104b46fb3c91c134d524027a150ba10055ad5
Reviewed-on: https://chromium-review.googlesource.com/621409
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19505}
2017-08-24 23:52:52 +00:00
Zijie He
5acd9d0393 Add DesktopFrame::MoveFrameInfoFrom() and DesktopFrame::CopyFrameInfoFrom()
The original change https://chromium-review.googlesource.com/c/575315 and
https://chromium-review.googlesource.com/c/590508 have not been well-considered.
So this change reverts part of two changes and adds a
DesktopFrame::set_top_left() function

A DesktopFrame usually contains a very large chunk of memory, which should be
reused as much as possible to reduce the memory allocations. The size of the
memory usually controls by the DesktopFrame::size(). So it's reasonable to const
DesktopFrame::size_: changing it is wrong if the underly buffer is not large
enough.

But DesktopFrame::top_left() is a different story, same as capturer_id,
capture_time_ms and other information in the DesktopFrame, it can be changed to
any value without needing to reconstruct a DesktopFrame instance. So instead of
adding it to the constructor, a DesktopFrame::set_top_left() is added to adjust
the top-left of the DesktopFrame in the entire display coordinate.

After adding DesktopFrame::set_top_left(), we have five variables in a
DesktopFrame which is not initialized in the constructor. For any kind of
wrapper DesktopFrame, say, SharedDesktopFrame and CroppedDesktopFrame, they
needs to copy these five variables after constructing themselves. This is not
convenient and easily to be broken if an implementation forgot to copy them.

So DesktopFrame::MoveFrameInfoFrom() and DesktopFrame::CopyFrameInfoFrom() are
added to the DesktopFrame to help derived classes to copy or move these
variables in one function call.
The difference between MoveFrameInfoFrom() and CopyFrameInfoFrom() is that the
former one uses DesktopRegion::Swap() to move the DesktopRegion from the source
DesktopFrame to this instance, while the later one uses copy-operator to copy
the DesktopRegion from the source DesktopFrame.
So CopyFrameInfoFrom() is usually used when sharing a source DesktopFrame with
several clients. I.e. the source DesktopFrame should be kept unchanged. For
example, BasicDesktopFrame::CopyOf() and SharedDesktopFrame::Share().
On the other side, MoveFrameInfoFrom() is usually used when wrapping a
DesktopFrame. E.g. CroppedDesktopFrame and DesktopFrameWithCursor.

Bug: webrtc:7950
Change-Id: I8b23418960fb681d2ea1f012d1b453f514da2272
Reviewed-on: https://chromium-review.googlesource.com/622453
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19504}
2017-08-24 23:44:22 +00:00
zstein
2b706343de Add audio_level member to RtpSource and set it from RtpReceiverImpl::IncomingRtpPacket.
BUG=webrtc:7987

Review-Url: https://codereview.webrtc.org/3000713002
Cr-Commit-Position: refs/heads/master@{#19503}
2017-08-24 21:52:17 +00:00
Zijie He
0cab085157 Disable screen capturer tests on Windows
Windows cannot capture contents on VMs hosted in GCE, disable them to unblock
GCE hosting.

Bug: webrtc:8153
Change-Id: Iacdce15008cc092dce36d08b1d5565bbaa5def1f
Reviewed-on: https://chromium-review.googlesource.com/634083
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19502}
2017-08-24 20:10:42 +00:00
mbonadei
c0af5ac3d0 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).

BUG=webrtc:7743

Review-Url: https://codereview.webrtc.org/2995753002
Cr-Commit-Position: refs/heads/master@{#19501}
2017-08-24 19:26:05 +00:00
eladalon
05b07bb833 Fix places that trigger no-unused-lambda-capture - change to using static-constexpr.
Follow up on https://codereview.webrtc.org/3005433002/.

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

Review-Url: https://codereview.webrtc.org/3003723002
Cr-Commit-Position: refs/heads/master@{#19499}
2017-08-24 14:40:16 +00:00
eladalon
3651fdd137 Uncomment thread-check in AudioSendStream::OnPacketFeedbackVector()
The thread-check should be pass unit-tests, following https://codereview.webrtc.org/2998923002/.

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

Review-Url: https://codereview.webrtc.org/3001313002
Cr-Commit-Position: refs/heads/master@{#19498}
2017-08-24 14:26:25 +00:00
jtteh
837adc0871 Fix video slow to appear on first launch.
BUG=webrtc:7777

Review-Url: https://codereview.webrtc.org/3006453002
Cr-Commit-Position: refs/heads/master@{#19497}
2017-08-24 14:14:35 +00:00
eladalon
0860bee402 Remove deprecated DirectTransport constructors
Remove deprecated DirectTransport constructors, now that they're no longer used in internal projects.

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

Review-Url: https://codereview.webrtc.org/3006513002
Cr-Commit-Position: refs/heads/master@{#19496}
2017-08-24 13:56:15 +00:00