This CL removes the use of the @JNINamespace annotation and instead
sets the correct JNI namespace in the build file.
Bug: webrtc:8278
Change-Id: Ia4490399e45a97d56b02c260fd80df4edfa092bf
Reviewed-on: https://webrtc-review.googlesource.com/76440
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23299}
See https://chromium-review.googlesource.com/c/chromium/tools/build/+/1058799
After the baremetal machines are moved to swarming, that CL will add the tasks that were previously in *_baremetal bots to *_rel bots. *_rel bots will run all the same tasks as before on a pool of generic machines, but also run a few tests on dedicated baremetal machines (pool:WebRTC-baremetal-try).
No-Try: True
Bug: chromium:755660
Change-Id: I99d62a84aac631b1c127bf661546baecb2a3ae9a
Reviewed-on: https://webrtc-review.googlesource.com/76721
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23290}
This is a reland of 89653d5db46419d2a80898635cb27fed64898db2
Original change's description:
> [desktopCapture] Unify the position info in DIP coordinates on Mac.
>
> On OSX, the logical(DIP) and physical coordinates are used mixingly.
> For example, the captured image has its size in physical pixels(2x) and
> location in logical(DIP) pixels. Same to the cursor position. This
> causes trouble when we check the relative position of image and cursor
> when there are multiple monitors with different DIP setting connected.
>
> This cl proposed a solution to use DIP pixel for any location info,
> i.e. top-left of a frame and cursor position. Also propose a method to
> get the current scale factor of a window across multiple monitors. And
> save the current scale factor in DPI of the capture frame.
> Then we can check relative position of cursor and frame correctly
> in DIP pixel and compose them in physical pixel.
>
> Bug: webrtc:9178
> Change-Id: I3c076aeac2d6f2c1f63d000d7fff03500aa375ac
> Reviewed-on: https://webrtc-review.googlesource.com/71621
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Reviewed-by: Zijie He <zijiehe@chromium.org>
> Commit-Queue: Brave Yao <braveyao@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23263}
Bug: webrtc:9178
Change-Id: I97d9150f7b9a4ed6671733b75613ea9c315d5c1d
Reviewed-on: https://webrtc-review.googlesource.com/77481
Reviewed-by: Zijie He <zijiehe@chromium.org>
Commit-Queue: Brave Yao <braveyao@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23289}
std::mem_fun is deprecated in C++11, and removed in C++17. Using C++17
option for building libwebrtc causes build failure. This is found during
upgrading WebKit tree from C++14 to C++17.
This patch replaces std::for_each and std::mem_fun with range-based-for.
We also merge loops for streams_ into one.
Bug: webrtc:9277
Change-Id: I44a7e44ea21fc33ffa9a586ddfea570f97dfacb6
Reviewed-on: https://webrtc-review.googlesource.com/77280
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23285}
For simplicity, camera with index 0 is used. User also has to manually
give the permission to use the camera for the app.
Bug: webrtc:8769
Change-Id: I371f26f94d629411fd299671b4f3202e84556b80
Reviewed-on: https://webrtc-review.googlesource.com/76982
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23284}
Currently we prefer the last added rtp module that supports rtx, and
assume this is the HD stream.
If we suffer a network degradation and stop sending HD, the current
behavior will trigger RTX padding on an inactive stream, which is not
very useful.
With this change, we will prefer the rtp module that last sent media,
which will spread the load a bit across active media streams, but will
be biased toward the one with highest packet rate.
Bug: webrtc:8975
Change-Id: Id52865ccd5263722c66d327b8c80457f63b90385
Reviewed-on: https://webrtc-review.googlesource.com/77360
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23281}
This reverts commit 89653d5db46419d2a80898635cb27fed64898db2.
Reason for revert:
Tentatively revert since I believe this break remoting unittests on Asan/Tsan
https://chromium-review.googlesource.com/c/chromium/src/+/1063330https://chromium-swarm.appspot.com/task?id=3d8692bedcc85c10&refresh=10&show_raw=1
Original change's description:
> [desktopCapture] Unify the position info in DIP coordinates on Mac.
>
> On OSX, the logical(DIP) and physical coordinates are used mixingly.
> For example, the captured image has its size in physical pixels(2x) and
> location in logical(DIP) pixels. Same to the cursor position. This
> causes trouble when we check the relative position of image and cursor
> when there are multiple monitors with different DIP setting connected.
>
> This cl proposed a solution to use DIP pixel for any location info,
> i.e. top-left of a frame and cursor position. Also propose a method to
> get the current scale factor of a window across multiple monitors. And
> save the current scale factor in DPI of the capture frame.
> Then we can check relative position of cursor and frame correctly
> in DIP pixel and compose them in physical pixel.
>
> Bug: webrtc:9178
> Change-Id: I3c076aeac2d6f2c1f63d000d7fff03500aa375ac
> Reviewed-on: https://webrtc-review.googlesource.com/71621
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Reviewed-by: Zijie He <zijiehe@chromium.org>
> Commit-Queue: Brave Yao <braveyao@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23263}
TBR=zijiehe@chromium.org,jamiewalch@chromium.org,perkj@webrtc.org,braveyao@webrtc.org
Change-Id: Ica02365925623e21b256d20a21b5625e7ed6f49b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9178
Reviewed-on: https://webrtc-review.googlesource.com/77461
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23280}
This is a reland of cd469a4ce5315fee62bb77b5e781a18a99da506d
With vpython specified
Original change's description:
> Add support for launching webcam software for use in recipes
>
> * Copy ensure_webcam_is_running.py from recipes repo
> * Turn it into a wrapper that can launch another script
> (fix_python_path is copied from test_env.py as _ForcePythonInterpreter)
> * Support it in mb.py
> * Add it to video_capture_unittests
>
> No-Try: True
> Bug: chromium:755660
> Change-Id: I376724a77e443620724add7818592e9368d02079
> Reviewed-on: https://webrtc-review.googlesource.com/77320
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23275}
No-Try: True
Bug: chromium:755660
Change-Id: Ibf4fbe3fea4b003a23b12332b3a6078a2db99a8d
Reviewed-on: https://webrtc-review.googlesource.com/77460
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23279}
This reverts commit cd469a4ce5315fee62bb77b5e781a18a99da506d.
Reason for revert: ImportError: No module named psutil
Original change's description:
> Add support for launching webcam software for use in recipes
>
> * Copy ensure_webcam_is_running.py from recipes repo
> * Turn it into a wrapper that can launch another script
> (fix_python_path is copied from test_env.py as _ForcePythonInterpreter)
> * Support it in mb.py
> * Add it to video_capture_unittests
>
> No-Try: True
> Bug: chromium:755660
> Change-Id: I376724a77e443620724add7818592e9368d02079
> Reviewed-on: https://webrtc-review.googlesource.com/77320
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23275}
TBR=phoglund@webrtc.org,oprypin@webrtc.org
Change-Id: I611e49e1c8d8668fe405e462ec4b83e364c3d6e7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:755660
Reviewed-on: https://webrtc-review.googlesource.com/77440
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23278}
This replaces webrtc::VideoSendStream::DegradationPreference with
webrtc::DegradationPreference, and adds "DISABLED".
It's still not wired up from RtpSenderInterface::SetParameters to the
underlying video engine; that would be the next step.
Bug: webrtc:8830
Change-Id: I582ffd04eaef33c73d9892e52e789804c933b864
Reviewed-on: https://webrtc-review.googlesource.com/77024
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23276}
* Copy ensure_webcam_is_running.py from recipes repo
* Turn it into a wrapper that can launch another script
(fix_python_path is copied from test_env.py as _ForcePythonInterpreter)
* Support it in mb.py
* Add it to video_capture_unittests
No-Try: True
Bug: chromium:755660
Change-Id: I376724a77e443620724add7818592e9368d02079
Reviewed-on: https://webrtc-review.googlesource.com/77320
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23275}
Change structure of chromium owned dependencies file to JSON to
simplify work with it in different tools. Also add tool to check in
new chromium owned dep with single command like this:
./tools_webrtc/autoroller/checkin_chromium_dep.py -d <dep name>
Introduce separate file with list of webrtc owned dependencies.
Bug: webrtc:8366
Change-Id: I30a828af34cd105ce7e6bc76d6b5889e6bf7574d
Reviewed-on: https://webrtc-review.googlesource.com/76840
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23270}
Adds Android native API for creating VideoTrackSourceInterface objects
that can be fed frames using VideoCapturer.CapturerObserver.
NativeCapturerObserver is moved out of VideoSource because it will now
be used without a VideoSource. It now takes a pointer to
AndroidVideoTrackSource directly instead of VideoTrackSourceProxy.
VideoSource and NativeCapturerObserver JNI code is moved away from
androidvideotracksource.cc to their own files. This allows using
AndroidVideoTrackSource independently.
Bug: webrtc:8769
Change-Id: Ifb9e1eb27d4c8237597d19d932ca6e863abb4d27
Reviewed-on: https://webrtc-review.googlesource.com/76924
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23269}
The existing asynchronous task execution in P2PTransportChannel is
implemented by posting messages to its network thread (a rtc::Thread)
and consuming these messages as a MessageHandler. The readability of
the implementation can be improved by using AsyncInvoker, which is
exactly designed for this scenario.
Bug: None
Change-Id: Ibee830d0d2bc19fc1ca5b894f194d9b69c40eef4
Reviewed-on: https://webrtc-review.googlesource.com/74642
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23267}
1) Network info is appended with its network ID assigned by the network
manager so that we can cross-reference networks by IDs in the log.
2) The local network info is added to the candidate pair string
representation so that we do not need the cross reference to the
logs of candidate gathering to find out the network where the local
candidate is from.
3) A flag is added to the candidate pair string representation to
indicate if this pair is the selected one.
4) Sorting of candidate pairs is logged with the reason of sorting
request.
5) Network filtering that takes place in the port allocator is
explicitly logged.
Bug: None
Change-Id: Iaa337394cad803515e26e254814aa04ed2213eab
Reviewed-on: https://webrtc-review.googlesource.com/72522
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23266}
This CL turns on the previously implemented AEC3 audibility
improvements, which before has been off by default.
Bug: webrtc:9193,chromium:836790
Change-Id: Ibcd057ba5dd002718d62fd83db33d01d9563b8ea
Reviewed-on: https://webrtc-review.googlesource.com/77123
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23265}
This reverts commit 9632112a16d70a146e917db4de761e6253dfc364.
Reason for revert: It breaks the WebRTC roll into Chromium.
https://chromium-review.googlesource.com/c/chromium/src/+/1061476
Original change's description:
> Reland "Adding absl includes and defines to rtc_* templates."
>
> This reverts commit d161eda477491b2b97fb3f26d229c625a2a0e9b8.
>
> Reason for revert: The problem with iOS trybots should be fixed.
>
> Original change's description:
> > Revert "Adding absl includes and defines to rtc_* templates."
> >
> > This reverts commit 9d8f3850f4c4faad5dc5ab32ab6f2c9c43df7b6c.
> >
> > Reason for revert: Breaks some trybots: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Release/builds/12793.
> >
> > Original change's description:
> > > Adding absl includes and defines to rtc_* templates.
> > >
> > > This CL implicitly adds the -I compiler flag and absl macros to WebRTC
> > > templates. In order to include absl headers using relative paths, WebRTC
> > > needs to ensure that all its build targets are able to see absl headers.
> > >
> > > This can also be done with public_deps, but WebRTC is trying to avoid
> > > it because it creates problems with other build systems. Given this
> > > constraint, using rtc_* templates is the most reliable solution.
> > >
> > > Please note that rtc_* templates are adding absl includes and defines
> > > as public_configs, this means that build targets with WebRTC targets
> > > in their public_deps will propagate these configs following the GN
> > > guideline.
> > >
> > > Bug: webrtc:8821
> > > Change-Id: I4aa594a524f4bd045bcb3e80d76cc27f06fe01d7
> > > Reviewed-on: https://webrtc-review.googlesource.com/70367
> > > Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#22927}
> >
> > TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> >
> > Change-Id: Id8e1f881c57553386566eb1970f6b9f8632cab37
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: webrtc:8821
> > Reviewed-on: https://webrtc-review.googlesource.com/71000
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#22928}
>
> TBR=phoglund@webrtc.org,mbonadei@webrtc.org
>
> Bug: webrtc:8821
> Change-Id: I6ee2eda97bbcd4c9be25c9c4073272192b0373f8
> Reviewed-on: https://webrtc-review.googlesource.com/71700
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23251}
TBR=phoglund@webrtc.org,mbonadei@webrtc.org
Change-Id: I61fb749797314ca514691b341c66f7f39ef45491
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8821
Reviewed-on: https://webrtc-review.googlesource.com/77220
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23264}
On OSX, the logical(DIP) and physical coordinates are used mixingly.
For example, the captured image has its size in physical pixels(2x) and
location in logical(DIP) pixels. Same to the cursor position. This
causes trouble when we check the relative position of image and cursor
when there are multiple monitors with different DIP setting connected.
This cl proposed a solution to use DIP pixel for any location info,
i.e. top-left of a frame and cursor position. Also propose a method to
get the current scale factor of a window across multiple monitors. And
save the current scale factor in DPI of the capture frame.
Then we can check relative position of cursor and frame correctly
in DIP pixel and compose them in physical pixel.
Bug: webrtc:9178
Change-Id: I3c076aeac2d6f2c1f63d000d7fff03500aa375ac
Reviewed-on: https://webrtc-review.googlesource.com/71621
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Reviewed-by: Zijie He <zijiehe@chromium.org>
Commit-Queue: Brave Yao <braveyao@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23263}
This prepares for making the BBR implementation more identical to the
implementation in Quic, this is to ensure that results are comparable.
Bug: webrtc:8415
Change-Id: Ic2dc4394dc9923e5109ffa5f146c23b527f0c395
Reviewed-on: https://webrtc-review.googlesource.com/76582
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23262}
After https://webrtc-review.googlesource.com/c/src/+/70740, we are
creating/destroying the codecs on a task queue in the VideoStreamEncoder. This
CL updates the VideoCodecTest to do the same.
Also, this CL switches from manually Wait()'ing on the task queue to using
TaskQueueForTest::SendTask.
Bug: None
Change-Id: Ia0398b24e32e9cc5361ba5ee4c08441116def18e
Reviewed-on: https://webrtc-review.googlesource.com/76800
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23257}
This reverts commit 59216ec4a4151b1ba5478c8f2b5c9f01f4683d7f.
Reason for revert: forces all logs to have identical tag
Original change's description:
> Injectable logging
>
> Allows passing a Loggable to PCFactory.initializationOptions, which
> is then injected to Logging.java and logging.h. Future log messages
> in both Java and native will then be passed to this Loggable.
>
> Bug: webrtc:9225
> Change-Id: I2ff693380639448301a78a93dc11d3a0106f0967
> Reviewed-on: https://webrtc-review.googlesource.com/73243
> Commit-Queue: Paulina Hensman <phensman@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23241}
TBR=magjed@webrtc.org,sakal@webrtc.org,kwiberg@webrtc.org,phensman@webrtc.org
Change-Id: I27c9587238325b69b26166434740869021b7db8a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9225
Reviewed-on: https://webrtc-review.googlesource.com/76885
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Commit-Queue: Alex Glaznev <glaznev@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23253}
This reverts commit d161eda477491b2b97fb3f26d229c625a2a0e9b8.
Reason for revert: The problem with iOS trybots should be fixed.
Original change's description:
> Revert "Adding absl includes and defines to rtc_* templates."
>
> This reverts commit 9d8f3850f4c4faad5dc5ab32ab6f2c9c43df7b6c.
>
> Reason for revert: Breaks some trybots: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Release/builds/12793.
>
> Original change's description:
> > Adding absl includes and defines to rtc_* templates.
> >
> > This CL implicitly adds the -I compiler flag and absl macros to WebRTC
> > templates. In order to include absl headers using relative paths, WebRTC
> > needs to ensure that all its build targets are able to see absl headers.
> >
> > This can also be done with public_deps, but WebRTC is trying to avoid
> > it because it creates problems with other build systems. Given this
> > constraint, using rtc_* templates is the most reliable solution.
> >
> > Please note that rtc_* templates are adding absl includes and defines
> > as public_configs, this means that build targets with WebRTC targets
> > in their public_deps will propagate these configs following the GN
> > guideline.
> >
> > Bug: webrtc:8821
> > Change-Id: I4aa594a524f4bd045bcb3e80d76cc27f06fe01d7
> > Reviewed-on: https://webrtc-review.googlesource.com/70367
> > Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#22927}
>
> TBR=phoglund@webrtc.org,mbonadei@webrtc.org
>
> Change-Id: Id8e1f881c57553386566eb1970f6b9f8632cab37
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:8821
> Reviewed-on: https://webrtc-review.googlesource.com/71000
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22928}
TBR=phoglund@webrtc.org,mbonadei@webrtc.org
Bug: webrtc:8821
Change-Id: I6ee2eda97bbcd4c9be25c9c4073272192b0373f8
Reviewed-on: https://webrtc-review.googlesource.com/71700
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23251}