Commit Graph

4616 Commits

Author SHA1 Message Date
1883d3e231 Optimizations and refactoring of the APM 3-band split filter
This CL refactors and optimizes the 3-band split-filter in APM, which
is a very computationally complex component.

Beyond optimizing the code, the filter coefficients are also quantized
to avoid denormals.

The changes reduces the complexity of the split filter by about 30-50%.

The CL has been tested for bitexactness on a number of aecdump
recordings.

(the CL also removes the now unused code for the sparse_fir_filter)

Bug: webrtc:6181
Change-Id: If45f8d1f189c6812ccb03721156c77eb68181211
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168189
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30592}
2020-02-24 13:19:14 +00:00
1db70d5c7b Reland "Delete legacy DataSize and DataRate factories"
This reverts commit 74c5b0ac239141606b3c09022088d440941bfe3b.

Reason for revert: downstream code adjusted

Original change's description:
> Revert "Delete legacy DataSize and DataRate factories"
>
> This reverts commit 70490aa3a0b08c9342ea9a12d5ac1fa9666fb7fb.
>
> Reason for revert: Breaks downstream project.
>
> Original change's description:
> > Delete legacy DataSize and DataRate factories
> >
> > Bug: webrtc:9709
> > Change-Id: Ia9464893ec9868c51d72eedaee8efc82b0c17b28
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168722
> > Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> > Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30564}
>
> TBR=danilchap@webrtc.org,srte@webrtc.org
>
> Change-Id: I3f5a8b4ec473bd2af80ca3acfe0e9c82f25a12ba
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:9709
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168940
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30574}

TBR=danilchap@webrtc.org,mbonadei@webrtc.org,srte@webrtc.org

Change-Id: If05a6b2aa3d4c50caac52f50c13ba56c1e2c810d
Bug: webrtc:9709
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168960
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30589}
2020-02-24 09:50:35 +00:00
d6e8e80883 Revert "Reland "Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."""""
This reverts commit c8496e9814ad2681b372946f143d1acb45475c7e.

Reason for revert: This broke Chrome Remote Desktop, please see http://crbug.com/1049804 .

Original change's description:
> Reland "Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""""
> 
> This is a reland of 703a5d76d9ba8e7984509cc7bf70fb4ed84ef6be
> 
> Original change's description:
> > Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."""
> >
> > This is a reland of af51be7869994a299451e22e6382ae641767b26d
> >
> > Original change's description:
> > > Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""
> > >
> > > This is a reland of a0adf3d4409036d095480e9bfa0fc06990362f84
> > >
> > > Original change's description:
> > > > Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."
> > > >
> > > > This is a reland of e7153012682ccd3d1eacc18f802cab7820e3bad3
> > > >
> > > > Original change's description:
> > > > > Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate entension version 1.5.
> > > > >
> > > > > Bug: chromium:396091
> > > > > Change-Id: Ia1b36c771632c536bb8d15322461b479fabc409e
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148768
> > > > > Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
> > > > > Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#29083}
> > > >
> > > > Bug: chromium:396091
> > > > Change-Id: I0d9171ae5f340e0489e4b45ce5d97bc52b0a4904
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156067
> > > > Commit-Queue: Tommi <tommi@webrtc.org>
> > > > Reviewed-by: Tommi <tommi@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#29655}
> > >
> > > Bug: chromium:396091
> > > Change-Id: I47525911095fabc6cee613d03b0d83134b95b084
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158900
> > > Reviewed-by: Tomas Gunnarsson <tommi@chromium.org>
> > > Reviewed-by: Tommi <tommi@webrtc.org>
> > > Commit-Queue: Tommi <tommi@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30032}
> >
> > Bug: chromium:396091
> > Change-Id: I03702c8ea935bb5fe1797defda1ba6b279b95217
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165724
> > Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> > Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#30461}
> 
> TBR=jamiewalch@chromium.org,tommi@webrtc.org
> 
> Bug: chromium:396091
> Change-Id: If9bd5e7b35240acc4dd528397926ba663fe2affc
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168760
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30548}

TBR=zijiehe@chromium.org,mbonadei@webrtc.org,jamiewalch@chromium.org,tommi@webrtc.org,julien.isorce@chromium.org,sergeyu@chromium.org,tommi@chromium.org,trevor.axiom@gmail.com,jonringle@gmail.com,justin.franco@arterys.com

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

Bug: chromium:396091
Change-Id: I39617376ac4fe028131336d2148801b7733183f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169001
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#30587}
2020-02-22 03:31:36 +00:00
4a06666325 Only set vp9 config when it's changed.
~3-5% speed up on webrtc_perf_tests of vp9 on linux desktop.

Avoid going thru a lot of unnecessary code checks.

Change-Id: I2cb0d794bcf239c5057dfc04cd07a496f89a5016
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167640
Commit-Queue: Jerome Jiang <jianj@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30586}
2020-02-21 20:09:31 +00:00
9526c557be Refactoring mock_transport to be used separately
Bug: webrtc:11251
Change-Id: I0a494c34c8d5c458b4d9b1b3616ae360d04df0d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168980
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30584}
2020-02-21 17:02:52 +00:00
1dea1ea412 [VP9 encoder] Set temporal id also on disabled spatial layers
Bug: chromium:1051476
Change-Id: Iaf2b6ab6640cd314a620dbdf1547d8f1b2f40693
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168921
Reviewed-by: Evan Shrubsole <eshr@google.com>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30581}
2020-02-21 12:03:09 +00:00
95800f6298 Authenticate video header when dependency descriptor is sent
same way as generic frame descriptor is authenticated.

Bug: webrtc:10342
Change-Id: I50bb3ab343d66f1f628083183444da6e338f7db9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168681
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30578}
2020-02-20 15:57:39 +00:00
dbf5416a80 Delete header file rtc_base/memory/aligned_array.h
Move definition of AlignedArray to the only code using it, the
test-only LappedTransform class, and delete unused methods.

Bug: webrtc:6424, webrtc:9577
Change-Id: I1bb5f57400f7217345b7ec7376235ad4c4bae858
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168701
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30576}
2020-02-20 14:55:25 +00:00
9a4eb32477 Change the AudioDeiviceDataObserver to be passed as a unique_ptr.
Bug: webrtc:11356
Change-Id: If89305f257fd966d83f37dbd03922c4d030b6d8f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168771
Commit-Queue: Fabian Bergmark <fabianbergmark@google.com>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30575}
2020-02-20 14:45:15 +00:00
74c5b0ac23 Revert "Delete legacy DataSize and DataRate factories"
This reverts commit 70490aa3a0b08c9342ea9a12d5ac1fa9666fb7fb.

Reason for revert: Breaks downstream project.

Original change's description:
> Delete legacy DataSize and DataRate factories
> 
> Bug: webrtc:9709
> Change-Id: Ia9464893ec9868c51d72eedaee8efc82b0c17b28
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168722
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30564}

TBR=danilchap@webrtc.org,srte@webrtc.org

Change-Id: I3f5a8b4ec473bd2af80ca3acfe0e9c82f25a12ba
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9709
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168940
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30574}
2020-02-20 14:42:26 +00:00
e7fe3a5086 Update target rates if stable target has changed.
Bug: None
Change-Id: I93572290a41f44582b84cee8aec511a4b10a09da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168765
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30566}
2020-02-20 10:51:20 +00:00
70490aa3a0 Delete legacy DataSize and DataRate factories
Bug: webrtc:9709
Change-Id: Ia9464893ec9868c51d72eedaee8efc82b0c17b28
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168722
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30564}
2020-02-20 09:35:48 +00:00
4a14f4997c Remove wildcard ownership for build files.
No-Try: True
Bug: webrtc:10381
Change-Id: I852d9a2da7e0c5c12f508a1c788b0b5753503aba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168769
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30558}
2020-02-19 14:05:46 +00:00
e52115a33e Remove inactive OWNERS.
No-Try: True
Bug: webrtc:10381
Change-Id: I3b56c74d913a47e4297518005b0cb19de8fafbff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168421
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30556}
2020-02-19 13:37:36 +00:00
e6ca3b8c38 Add missing interface methods.
DesktopCapturer includes a few methods that are not pure virtual because
they were added after implementions existed in Chromium. The intent was
to implement them in Chromium and then make them pure virtual, but that
never happened, which caused a bug when DesktopAndCursorComposer did not
delegate source-selection methods to the underlying capturer.

This CL adds the missing methods to a couple of simple pass-through
capturers; I will follow up with the necessary implementations for other
capturers once I've fixed the underlying remoting bug.

Change-Id: Icb3914a3cb3116878f57a9f685163c7670c1f89b
Bug: webrtc:11370
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168780
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#30550}
2020-02-18 22:36:00 +00:00
c8496e9814 Reland "Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""""
This is a reland of 703a5d76d9ba8e7984509cc7bf70fb4ed84ef6be

Original change's description:
> Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."""
>
> This is a reland of af51be7869994a299451e22e6382ae641767b26d
>
> Original change's description:
> > Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""
> >
> > This is a reland of a0adf3d4409036d095480e9bfa0fc06990362f84
> >
> > Original change's description:
> > > Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."
> > >
> > > This is a reland of e7153012682ccd3d1eacc18f802cab7820e3bad3
> > >
> > > Original change's description:
> > > > Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate entension version 1.5.
> > > >
> > > > Bug: chromium:396091
> > > > Change-Id: Ia1b36c771632c536bb8d15322461b479fabc409e
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148768
> > > > Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
> > > > Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
> > > > Cr-Commit-Position: refs/heads/master@{#29083}
> > >
> > > Bug: chromium:396091
> > > Change-Id: I0d9171ae5f340e0489e4b45ce5d97bc52b0a4904
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156067
> > > Commit-Queue: Tommi <tommi@webrtc.org>
> > > Reviewed-by: Tommi <tommi@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#29655}
> >
> > Bug: chromium:396091
> > Change-Id: I47525911095fabc6cee613d03b0d83134b95b084
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158900
> > Reviewed-by: Tomas Gunnarsson <tommi@chromium.org>
> > Reviewed-by: Tommi <tommi@webrtc.org>
> > Commit-Queue: Tommi <tommi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30032}
>
> Bug: chromium:396091
> Change-Id: I03702c8ea935bb5fe1797defda1ba6b279b95217
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165724
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#30461}

TBR=jamiewalch@chromium.org,tommi@webrtc.org

Bug: chromium:396091
Change-Id: If9bd5e7b35240acc4dd528397926ba663fe2affc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168760
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30548}
2020-02-18 19:05:07 +00:00
dea73ee8f9 Pass absolute capture time from WebRtcVoiceEngine to ACM.
Bug: webrtc:10739
Change-Id: I6f264cb89ce340db642db3ef7dfc2b5d459f749e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167211
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Chen Xing <chxg@google.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30547}
2020-02-18 16:54:48 +00:00
cad3e0e2fa Replace DataSize and DataRate factories with newer versions
This is search and replace change:
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataSize::Bytes<\(.*\)>()/DataSize::Bytes(\1)/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataSize::bytes/DataSize::Bytes/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataRate::BitsPerSec<\(.*\)>()/DataRate::BitsPerSec(\1)/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataRate::BytesPerSec<\(.*\)>()/DataRate::BytesPerSec(\1)/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataRate::KilobitsPerSec<\(.*\)>()/DataRate::KilobitsPerSec(\1)/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataRate::bps/DataRate::BitsPerSec/g"
find . -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/DataRate::kbps/DataRate::KilobitsPerSec/g"
git cl format

Bug: webrtc:9709
Change-Id: I65aaca69474ba038c1fe2dd8dc30d3f8e7b94c29
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168647
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30545}
2020-02-18 16:09:50 +00:00
701bd172d8 Add aecdump experiment strings for injected custom processors
Bug: None
Change-Id: I41aaae454212db3a871d356e0124b868d67033b6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168683
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30544}
2020-02-18 15:53:59 +00:00
575c2ad8c5 Support passing the ADM to the ADMWrapper.
Bug: webrtc:11356
Change-Id: Ie68de35908e80cf395b6558d0725c0462412f333
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168482
Commit-Queue: Fabian Bergmark <fabianbergmark@google.com>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30543}
2020-02-18 14:13:46 +00:00
c1cbf6be7e Ship GenericDescriptor00 by default.
The change ships GenericDescriptor00 and authentication by default,
but doesn't expose it by default, and makes WebRTC respond to
offers carrying it.

The change adds a unit test for the new semantics.

Tests well in munge-sdp. Frame marking replaced by
http://www.webrtc.org/experiments/rtp-hdrext/generic-frame-descriptor-00
in the offer results in an answer containing the
extension as first entry.

Bug: webrtc:11367
Change-Id: I0ef91b7d4096d949c3d547ece7d6c4d39aa241da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168661
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30542}
2020-02-18 11:11:48 +00:00
e209fe6c68 Do not propagate generic descriptor on receiving frame
It was used only for the frame decryptor.
Decryptor needs only raw representation that it can recreate
in a way compatible with the new version of the descriptor.

This relands commit abf73de8eae90e9ac7e88ce1d52728e8102e824f.
with adjustments.

Change-Id: I935977179bef31d8e1023964b967658e9a7db92d
Bug: webrtc:10342
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168489
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30532}
2020-02-17 14:52:03 +00:00
135d9a386e Update dependency descriptor rtp header extension uri
to match one in av1 rtp spec examples:
https://aomediacodec.github.io/av1-rtp-spec/#73-example

Bug: webrtc:10342
Change-Id: Ib108b90f6103d050d61d40fc36ad1c2a358f3f21
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168641
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30531}
2020-02-17 14:50:58 +00:00
08b11cafae iSAC config: target bitrate exposed for fixed impl
It is now possible to set the target bitrate for iSAC for the fixed
point implementation. Unit tests added.

Bug: webrtc:11360
Change-Id: I60225d4ca1363cdacf18931e7cf412c5aec8d8fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168529
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30526}
2020-02-14 14:08:21 +00:00
cb4d380ba5 Revert "Refactors UlpFec and FlexFec to use a common interface."
This reverts commit 11af1d7444fd7438766b7bc52cbd64752d72e32e.

Reason for revert: Possible crash

Original change's description:
> Refactors UlpFec and FlexFec to use a common interface.
> 
> The new VideoFecGenerator is now injected into RtpSenderVideo,
> and generalizes the usage.
> This also prepares for being able to genera FEC in the RTP egress
> module.
> 
> Bug: webrtc:11340
> Change-Id: I8aa873129b2fb4131eb3399ee88f6ea2747155a3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168347
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30515}

TBR=brandtr@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,srte@webrtc.org

Change-Id: Iddf112d801621c8a4370b853cee3fa42bf2c7fba
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11340
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168603
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30524}
2020-02-14 13:19:07 +00:00
0618cbc989 AEC3: Avoid heap-allocations in sums of the values in nested vectors
This CL avoids the head-allocations done in a sum of the squared values
in a nested vector.

Bug: webrtc:11361, chromium:1052086
Change-Id: I698b855bdd54df2147ef3b6d5e3d401401228d76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168543
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30520}
2020-02-13 21:53:26 +00:00
11af1d7444 Refactors UlpFec and FlexFec to use a common interface.
The new VideoFecGenerator is now injected into RtpSenderVideo,
and generalizes the usage.
This also prepares for being able to genera FEC in the RTP egress
module.

Bug: webrtc:11340
Change-Id: I8aa873129b2fb4131eb3399ee88f6ea2747155a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168347
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30515}
2020-02-13 13:21:19 +00:00
b3548bf287 iSAC unit test: test encode/decode via API wrapper
Unit test to test the iSAC webrtc API wrapper, plus a minor
change in the c iSAC wrapper.

Bug: webrtc:10584
Change-Id: Iecbf6f3e7db5b3bdba41f8428254ae6a6a73e24a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168492
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30514}
2020-02-13 11:29:01 +00:00
d428ddd8f1 iSAC fixed point: fix int overflows
Bug: webrtc:11137
Change-Id: If9276457b39285191ee2d9a0fbcb7e0a7a379be8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168523
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30513}
2020-02-13 11:14:41 +00:00
b28e57e725 NetEQ audio decoder unit test: use ParsePayload
AudioDecoder::Decode() is obsolete. This CL replaces it with
ParsePayload() in the audio decoder NetEQ unit tests.

Bug: webrtc:10098
Change-Id: I602b0330adbe1d0921b0c4524aa7305b500f2ebf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168486
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30511}
2020-02-13 09:05:55 +00:00
ea820932d8 Delete legacy TimeDelta and Timestamp factories
Bug: webrtc:9709
Change-Id: Ic294a6dc324fde06d868a3d00941b0f2fc970935
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168490
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30510}
2020-02-13 08:50:22 +00:00
6799d732d5 Delete DefaultVideoBitrateAllocator.
It was removed from tests in https://webrtc-review.googlesource.com/c/src/+/123540.

If simulcast is not used, SimulcastRateAllocator returns the
same allocation as DefaultVideoBitrateAllocator.

Bug: webrtc:10164
Change-Id: I3d3e1aefe2fcc2bf853cd63c75e008b86eff9241
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168496
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30509}
2020-02-12 21:29:09 +00:00
377f5a2197 Add configuration for capping allocation probes.
Bug: webrtc:11354
Change-Id: If4d4b6b409da5036e37f288768b43b19531974fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168440
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30506}
2020-02-12 10:57:01 +00:00
02d71fb882 Populate generic descriptor based on GenericFrameInfo when available.
Bug: webrtc:10342
Change-Id: Iff769d2604fd79784bcb09874d2803793d20bde5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167000
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30505}
2020-02-12 10:55:41 +00:00
bc1750d52b Revert "Do not propagate generic descriptor on receiving frame"
This reverts commit abf73de8eae90e9ac7e88ce1d52728e8102e824f.

Reason for revert: breaks downstream tests

Original change's description:
> Do not propagate generic descriptor on receiving frame
> 
> It was used only for the frame decryptor.
> Decryptor needs only raw representation that it can recreate
> in a way compatible with the new version of the descriptor.
> 
> Bug: webrtc:10342
> Change-Id: Ie098235ebb87c6f5e2af42d0022d2365cd6bfa29
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/166163
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30501}

TBR=danilchap@webrtc.org,sprang@webrtc.org,philipel@webrtc.org

Change-Id: I6634df06ee75aa8cdfda614994ab11f7a5845c70
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10342
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168488
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30502}
2020-02-11 16:54:07 +00:00
abf73de8ea Do not propagate generic descriptor on receiving frame
It was used only for the frame decryptor.
Decryptor needs only raw representation that it can recreate
in a way compatible with the new version of the descriptor.

Bug: webrtc:10342
Change-Id: Ie098235ebb87c6f5e2af42d0022d2365cd6bfa29
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/166163
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30501}
2020-02-11 16:12:16 +00:00
d0e1885dbe Clean up dead code in RtpSenderVideo.
References to PlayoutDelayOracle and the deprecated RtpSenderVideo
constructor have been removed in downstream code, we can now clean the
unused code away.

Bug: webrtc:10809, webrtc:11340
Change-Id: I789274be2079ad4ddd7e83a5fa249b06a32a4e82
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168400
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30499}
2020-02-11 15:07:11 +00:00
03d909634b Ensure that the first active layer isn't disabled by too low input resolution
If e.g. CPU adaptation reduces input video size too much, video pipeline would
reduce the number of used simulcast streams/spatial layers. This may result in
disabled video if some streams are disabled by Rtp encoding parameters API.

Bug: webrtc:11319
Change-Id: Id7f157255599dcb6f494129b83477cda4bea982a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168480
Reviewed-by: Evan Shrubsole <eshr@google.com>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30498}
2020-02-11 14:57:51 +00:00
5528402ef8 Use newer version of TimeDelta and TimeStamp factories in modules/
This change generated with following commands:
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::Micros<\(.*\)>()/TimeDelta::Micros(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::Millis<\(.*\)>()/TimeDelta::Millis(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::Seconds<\(.*\)>()/TimeDelta::Seconds(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::us/TimeDelta::Micros/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::ms/TimeDelta::Millis/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/TimeDelta::seconds/TimeDelta::Seconds/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::Micros<\(.*\)>()/Timestamp::Micros(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::Millis<\(.*\)>()/Timestamp::Millis(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::Seconds<\(.*\)>()/Timestamp::Seconds(\1)/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::us/Timestamp::Micros/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::ms/Timestamp::Millis/g"
find modules -type f \( -name "*.h" -o -name "*.cc" \) | xargs sed -i -e "s/Timestamp::seconds/Timestamp::Seconds/g"
git cl format

Bug: None
Change-Id: I117d64a54950be040d996035c54bc0043310943a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168340
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30489}
2020-02-10 11:49:57 +00:00
2fe31a47b6 Remove ossu@ from audio/ and audio_coding/ OWNERS
I've not worked in these parts for years!

Bug: webrtc:10381
Change-Id: Ie78947b3d5ed9106bc05749ab21b4dbca1da88d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168346
Commit-Queue: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30488}
2020-02-10 11:05:27 +00:00
9b881abea9 Enable congestion window pushback to reduce bitrate by only drop video frames.
With current congestion window pushback, when congestion window is filling up, it will reduce bitrate directly and encoder may reduce encode quality, resolution, or framerate to adapt to the allocated bitrate, the behavior is depending on the degradation preference.
This change enable congestion window to only drop frames to reduce bitrate (when needed) instead of reduce general bitrate allocation.

Bug: webrtc:11334
Change-Id: I9cf5c20a0858c4d07d006942abe72aa5e1f7cb38
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168059
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30483}
2020-02-07 14:14:47 +00:00
3663f94143 Moves RtpSequenceNumberMap from RtpSenderVideo to RtpSenderEgress.
Bug: webrtc:11340
Change-Id: Icd9032e3589324cb9ee7b699b38a35e733081e55
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168192
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30481}
2020-02-07 11:07:06 +00:00
56e611bbda Reland "Remove PlayoutDelayOracle and make RtpSenderVideo guarantee delivery"
This is a reland of 4f68f5398d7fa3d47c449e99893c9bea07bf7ca2

Original change's description:
> Remove PlayoutDelayOracle and make RtpSenderVideo guarantee delivery
>
> The PlayoutDelayOracle was responsible for making sure the PlayoutDelay
> header extension was successfully propagated to the receiving side. Once
> it was determined that the receiver had received a frame with the new
> delay tag, it's no longer necessary to propagate.
>
> The issue with this implementation is that it is based on max
> extended sequence number reported via RTCP, which makes it often slow
> to react, could theoretically fail to produce desired outcome (max
> received > X does not guarantee X was fully received and decoded), and
> added a lot of code complexity.
>
> The guarantee of delivery can in fact be accomplished more reliably and
> with less code by making sure to tag each frame until an undiscardable
> frame is sent.
>
> This allows containing the logic fully within RTPSenderVideo.
>
> Bug: webrtc:11340
> Change-Id: I2d1d2b6b67f4f07b8b33336f8fcfcde724243eef
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168221
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30473}

TBR=stefan@webrtc.org

Bug: webrtc:11340
Change-Id: I2fdd0004121b13b96497b21e052359e31d0c477a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168305
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30479}
2020-02-07 08:23:58 +00:00
31d0f7cfca Move packet type enum from RtpPacketToSend to rtp_rtcp_defines.h
This is in preparation of an upcoming CL that will propagate this
information through the TransportFeedbackAdapter.

Bug: webrtc:10932
Change-Id: Ic2a026b5ef72d6bf01e698e7634864fedc659b4e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168220
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30476}
2020-02-06 17:58:39 +00:00
632a03c0cd Revert "Remove PlayoutDelayOracle and make RtpSenderVideo guarantee delivery"
This reverts commit 4f68f5398d7fa3d47c449e99893c9bea07bf7ca2.

Reason for revert: Breaks downstream project

Original change's description:
> Remove PlayoutDelayOracle and make RtpSenderVideo guarantee delivery
> 
> The PlayoutDelayOracle was responsible for making sure the PlayoutDelay
> header extension was successfully propagated to the receiving side. Once
> it was determined that the receiver had received a frame with the new
> delay tag, it's no longer necessary to propagate.
> 
> The issue with this implementation is that it is based on max
> extended sequence number reported via RTCP, which makes it often slow
> to react, could theoretically fail to produce desired outcome (max
> received > X does not guarantee X was fully received and decoded), and
> added a lot of code complexity.
> 
> The guarantee of delivery can in fact be accomplished more reliably and
> with less code by making sure to tag each frame until an undiscardable
> frame is sent.
> 
> This allows containing the logic fully within RTPSenderVideo.
> 
> Bug: webrtc:11340
> Change-Id: I2d1d2b6b67f4f07b8b33336f8fcfcde724243eef
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168221
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30473}

TBR=sprang@webrtc.org,stefan@webrtc.org,srte@webrtc.org

Change-Id: Ide922e680ae36bb69b95e58002482cf5ed57e254
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11340
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168304
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30475}
2020-02-06 16:05:02 +00:00
67dba30178 Add clock skew estimate between sender and receiver in RemoteNtpTimeEstimator.
Bug: webrtc:11342
Change-Id: Ied155984794670ad08a663ac71f98719e96f8037
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168223
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Chen Xing <chxg@google.com>
Cr-Commit-Position: refs/heads/master@{#30474}
2020-02-06 15:47:59 +00:00
4f68f5398d Remove PlayoutDelayOracle and make RtpSenderVideo guarantee delivery
The PlayoutDelayOracle was responsible for making sure the PlayoutDelay
header extension was successfully propagated to the receiving side. Once
it was determined that the receiver had received a frame with the new
delay tag, it's no longer necessary to propagate.

The issue with this implementation is that it is based on max
extended sequence number reported via RTCP, which makes it often slow
to react, could theoretically fail to produce desired outcome (max
received > X does not guarantee X was fully received and decoded), and
added a lot of code complexity.

The guarantee of delivery can in fact be accomplished more reliably and
with less code by making sure to tag each frame until an undiscardable
frame is sent.

This allows containing the logic fully within RTPSenderVideo.

Bug: webrtc:11340
Change-Id: I2d1d2b6b67f4f07b8b33336f8fcfcde724243eef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168221
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30473}
2020-02-06 15:40:49 +00:00
48258acabf [Overuse] Implement Resource and ResourceUsageListener.
The Resource interface (previously a skeleton not used outside of
testing) is updated to inform listeners of changes to resource
usage. Debugging methods are removed (Name, UsageUnitsOfMeasurements,
CurrentUsage). The interface is implemented by
OveruseFrameDetectorResourceAdaptationModule's inner classes
EncodeUsageResource and QualityScalerResource.

The new ResourceUsageListener interface is implemented by
OveruseFrameDetectorResourceAdaptationModule. In order to avoid adding
AdaptationObserverInterface::AdaptReason to the ResourceUsageListener
interface, the module figures out if the reason is "kCpu" or "kQuality"
by looking which Resource object triggered
OnResourceUsageStateMeasured(). These resources no longer need an
explicit reference to OveruseFrameDetectorResourceAdaptationModule and
could potentially be used by a different module.

In this CL, AdaptationObserverInterface::AdaptDown()'s return value is
still needed by QualityScaler. This is mirrored in the return value of
ResourceUsageListener::OnResourceUsageStateMeasured(). A TODO is added
to remove it and a comment explains how the current implementation
seems to break the contract of the method (as was the case prior to
this CL).

Follow-up work include:
- Move EncodeUsageResource and QualityScalerResource to separate files.
- Make resources injectable, allowing fake resources in testing and
  removing OnResourceOveruseForTesting() methods.
  (Investigate adding the necessary input signals to the Resource
  interface or relevant sub-interfaces so that the module does not need
  to know which Resource implementation is used.)
- And more! See whiteboard :)

Bug: webrtc:11222
Change-Id: I0a46ace4a2e617874e3ee97e67e3a199fef420a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168180
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/master@{#30469}
2020-02-06 12:45:14 +00:00
ef0d76ae83 Add more VP9 header correctness check in RtpFrameReferenceFinder
Bug: chromium:1049129
Change-Id: I133673d86aadd6a87b3420a04bbf45ed53841a96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168240
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30466}
2020-02-06 08:39:44 +00:00
78c7c5247c Revert "Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""""
This reverts commit 703a5d76d9ba8e7984509cc7bf70fb4ed84ef6be.

Reason for revert: Breaks a downstream project. I will notify when it is possible to reland.

Original change's description:
> Reland "Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."""
> 
> This is a reland of af51be7869994a299451e22e6382ae641767b26d
> 
> Original change's description:
> > Reland "Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5.""
> > 
> > This is a reland of a0adf3d4409036d095480e9bfa0fc06990362f84
> > 
> > Original change's description:
> > > Reland "Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate extension version 1.5."
> > > 
> > > This is a reland of e7153012682ccd3d1eacc18f802cab7820e3bad3
> > > 
> > > Original change's description:
> > > > Implemented screen enumeration and selection for desktop capture under X11 using the X Resize and Rotate entension version 1.5.
> > > >
> > > > Bug: chromium:396091
> > > > Change-Id: Ia1b36c771632c536bb8d15322461b479fabc409e
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148768
> > > > Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
> > > > Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
> > > > Cr-Commit-Position: refs/heads/master@{#29083}
> > > 
> > > Bug: chromium:396091
> > > Change-Id: I0d9171ae5f340e0489e4b45ce5d97bc52b0a4904
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156067
> > > Commit-Queue: Tommi <tommi@webrtc.org>
> > > Reviewed-by: Tommi <tommi@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#29655}
> > 
> > Bug: chromium:396091
> > Change-Id: I47525911095fabc6cee613d03b0d83134b95b084
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158900
> > Reviewed-by: Tomas Gunnarsson <tommi@chromium.org>
> > Reviewed-by: Tommi <tommi@webrtc.org>
> > Commit-Queue: Tommi <tommi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30032}
> 
> Bug: chromium:396091
> Change-Id: I03702c8ea935bb5fe1797defda1ba6b279b95217
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165724
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#30461}

TBR=zijiehe@chromium.org,jamiewalch@chromium.org,tommi@webrtc.org,julien.isorce@chromium.org,sergeyu@chromium.org,tommi@chromium.org,trevor.axiom@gmail.com,jonringle@gmail.com,justin.franco@arterys.com

Change-Id: I1aa5092d90e4067533b639656ac822a6f920de76
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:396091
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168242
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30464}
2020-02-06 08:21:42 +00:00