Commit Graph

32688 Commits

Author SHA1 Message Date
04a6529c86 AV1: set superblock to 64x64 for 720p 4 threads.
Multithreading is more effective.

Change-Id: Ic850de4ee6affe3c0f623deb0318f991675c4351
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208300
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Jerome Jiang <jianj@google.com>
Cr-Commit-Position: refs/heads/master@{#33306}
2021-02-19 18:51:14 +00:00
1fbff10254 In RtpVideoStreamReceiver change way to track time for the last received packet.
Instead of tracking packets accepted by PacketBuffer, track all incoming
packets, including packets discarded before getting into PacketBuffer.

Bug: b/179759126
Change-Id: I4d270c61455608fb78b0df8f27760868f4c98205
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208289
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@{#33305}
2021-02-19 17:26:54 +00:00
f3dc47e2c4 Ending a statement with a semicolon
Bug: None
Change-Id: If7b2e0197e61d34daab68e8fcdb8b43678c1fe31
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205940
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33304}
2021-02-19 16:53:54 +00:00
da20c739a8 Add build argument rtc_exclude_system_time
This is the first CL out of three to enable overriding
of the function SystemTimeNanos() in
rtc_base/system_time.cc

Bug: chromium:516700
Change-Id: I7c33b0d3463fd68c777ef0c6d268dbde45746c64
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208225
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33303}
2021-02-19 16:36:14 +00:00
072c0086a9 Reland "Replace RecursiveCriticalSection with Mutex in RTCAudioSession."
This is a reland of f8da43d179043f1df2e1c3e2c49494bc23f4ec28

Original change's description:
> Replace RecursiveCriticalSection with Mutex in RTCAudioSession.
>
> Bug: webrtc:11567
> Change-Id: I2a2ddbce57d070d6cbad5a64defb4c27be77a665
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206472
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33259}

Bug: webrtc:11567
Change-Id: I4f7235dd164d8f698fe0bedea8c5dca50849f6d3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207432
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33302}
2021-02-19 15:45:33 +00:00
ae096ef7a6 Remove log message if balanced/cpu speed field trial is not set.
Bug: none
Change-Id: I4eb08517cacdb180085a4a5dd8649470b62f4600
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208286
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33301}
2021-02-19 12:39:58 +00:00
16359f65c4 Delay creation of decoders until they are needed
Before this CL, WebRTC created a decoder for each negotiated codec
profile. This quickly consumed all available HW decoder resources
on some platforms. This CL adds a field trial,
WebRTC-PreStreamDecoders, that makes it possible to set how many
decoders that should be created up front, from 0 to ALL. If the
field trial is set to 1, we only create a decoder for the
preferred codec. The other decoders are only created when they are
needed (i.e., if we receive the corresponding payload type).

Bug: webrtc:12462
Change-Id: I087571b540f6796d32d34923f9c7f8e89b0959c5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208284
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33300}
2021-02-19 12:08:49 +00:00
c9b9930c97 Add L2T3 K-SVC structure
Bug: webrtc:11999
Change-Id: I1bfb8674b95be8155035117c771b5e4c4bfc29c5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208260
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Emil Lundmark <lndmrk@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33299}
2021-02-19 10:27:23 +00:00
753c76a705 Update WebRTC code version (2021-02-19T04:02:42).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I030dbe6eb4b064404e3c670171897544717891ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208320
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33298}
2021-02-19 06:38:13 +00:00
735e33fae0 Add S3T3 video scalability structure
Bug: None
Change-Id: I93760b501ff712ca2f7a9dfa3cba6ed5245e4f4b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208080
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33297}
2021-02-18 17:46:29 +00:00
0f71871cad Reland "Batch assign RTP seq# for all packets of a frame."
This is a reland of 5cc99570620890edc3989b2cae1d1ee0669a021c

Original change's description:
> Batch assign RTP seq# for all packets of a frame.
>
> This avoids a potential race where other call sites could assign
> sequence numbers while the video frame is mid packetization - resulting
> in a non-contiguous video sequence.
>
> Avoiding the tight lock-unlock within the loop also couldn't hurt from
> a performance standpoint.
>
> Bug: webrtc:12448
> Change-Id: I6cc31c7743d2ca75caeaeffb98651a480dbe08e2
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207867
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33291}

Bug: webrtc:12448
Change-Id: I7c5a5e00a5e08330ff24b58af9f090c327eeeaa2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208221
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33296}
2021-02-18 12:27:27 +00:00
9915db3453 Move Call's histogram reporting code into destructor.
This is for better compatibility with thread annotations and how the
histogram data is collected. In the dtor we can make assumptions about
the state of the object, but that context is lost in member methods
even though they're only called from the destructor (and therefore
thread annotations can't "know" that the object is being destructed
inside those calls).

Bug: webrtc:11993
Change-Id: I8b698cc3340fb0db49430da6f7a9b9a02cabf0c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208200
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33295}
2021-02-18 09:58:54 +00:00
17f914ce50 Revert "Batch assign RTP seq# for all packets of a frame."
This reverts commit 5cc99570620890edc3989b2cae1d1ee0669a021c.

Reason for revert: Seems this CL breaks the below test when being imported in google3
https://webrtc-review.googlesource.com/c/src/+/207867

Original change's description:
> Batch assign RTP seq# for all packets of a frame.
>
> This avoids a potential race where other call sites could assign
> sequence numbers while the video frame is mid packetization - resulting
> in a non-contiguous video sequence.
>
> Avoiding the tight lock-unlock within the loop also couldn't hurt from
> a performance standpoint.
>
> Bug: webrtc:12448
> Change-Id: I6cc31c7743d2ca75caeaeffb98651a480dbe08e2
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207867
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33291}

Bug: webrtc:12448
Change-Id: I2547f946a5ba75aa09cdbfd902157011425d1c30
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208220
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/master@{#33294}
2021-02-18 08:54:27 +00:00
e11b4aef3f doc: show how to build the fuzzers
BUG=None

No-Try: true
Change-Id: I5a5007263c88678d76edc97fbcda96ff967071df
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206420
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33293}
2021-02-18 08:28:24 +00:00
86d37256c9 Update WebRTC code version (2021-02-18T04:03:24).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I4d272dc98a377b1099863ca8588e40d444043298
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208180
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33292}
2021-02-18 05:59:14 +00:00
5cc9957062 Batch assign RTP seq# for all packets of a frame.
This avoids a potential race where other call sites could assign
sequence numbers while the video frame is mid packetization - resulting
in a non-contiguous video sequence.

Avoiding the tight lock-unlock within the loop also couldn't hurt from
a performance standpoint.

Bug: webrtc:12448
Change-Id: I6cc31c7743d2ca75caeaeffb98651a480dbe08e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207867
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33291}
2021-02-17 15:27:08 +00:00
e927c0ff3e QualityScalingTests: Move encoder factory creation to ScalingObserver.
Bug: none
Change-Id: I44131952c8ef8efa62049702ae1c715a7c419dd5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208102
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33290}
2021-02-17 14:27:55 +00:00
39993844fa Reland "Reland "Split peer_connection_integrationtest.cc into pieces""
This reverts commit 89c40e246e39372390f0f843545d4e56aa657040.

Reason for revert: Added missing INSTANTIATE

Original change's description:
> Revert "Reland "Split peer_connection_integrationtest.cc into pieces""
>
> This reverts commit 772066bf16b125c1346a4d1b3e28c6e6f21cc1a7.
>
> Reason for revert: Did not catch all missing INSTANTIATE_TEST_SUITE_P
>
> Original change's description:
> > Reland "Split peer_connection_integrationtest.cc into pieces"
> >
> > This reverts commit 8644f2b7632cff5e46560c2f5cf7c0dc071aa32d.
> >
> > Reason for revert: Fixed the bugs
> >
> > Original change's description:
> > > Revert "Split peer_connection_integrationtest.cc into pieces"
> > >
> > > This reverts commit cae4656d4a7439e25160ff4d94e50949ff87cebe.
> > >
> > > Reason for revert: Breaks downstream build (missing INSTANTIATE_TEST_SUITE_P in pc/data_channel_integrationtest.cc).
> > >
> > > Original change's description:
> > > > Split peer_connection_integrationtest.cc into pieces
> > > >
> > > > This creates two integration tests: One for datachannel, the other
> > > > for every test that is not datachannel.
> > > >
> > > > It separates out the common framework to a new file in pc/test.
> > > > Also applies some fixes to IWYU.
> > > >
> > > > Bug: None
> > > > Change-Id: I919def1c360ffce205c20bec2d864aad9b179c3a
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207060
> > > > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > > > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#33244}
> > >
> > > TBR=hbos@webrtc.org,hta@webrtc.org
> > >
> > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > >
> > > No-Try: True
> > > Bug: None
> > > Change-Id: I7dbedd3256cb7ff47eb5f8cd46c7c044ed0aa1e0
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207283
> > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#33255}
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > Bug: None
> > Change-Id: I1bb6186d7f898de82d26f4cd3d8a88014140c518
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207864
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#33283}
>
> Bug: None
> Change-Id: I2b09b57c2477e52301ac30ec12ed69f2555ba7f8
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208021
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33286}

Bug: None
Change-Id: I6e362ac2234ae6c69dc9bbf886ee7dece8484202
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208022
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33289}
2021-02-17 12:28:07 +00:00
62b6c92298 Refactor LossBasedBandwidthEstimation
- Reset functionality based on loss history
- BWE rampup/down moved to SendSideBandwidthEstimation::UpdateEstimate to align with other estimators.


Bug: None
Change-Id: Ic13795c7ed1852b38baf8359c5c9f4dae6e9ea04
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207427
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33288}
2021-02-17 12:22:22 +00:00
ebc563e927 Update the call to RuntimeEnvironment.application
Change-Id: I6eb6182fdba8a2f8a6af1bdaa3d181329de42669
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208024
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33287}
2021-02-17 12:21:17 +00:00
89c40e246e Revert "Reland "Split peer_connection_integrationtest.cc into pieces""
This reverts commit 772066bf16b125c1346a4d1b3e28c6e6f21cc1a7.

Reason for revert: Did not catch all missing INSTANTIATE_TEST_SUITE_P

Original change's description:
> Reland "Split peer_connection_integrationtest.cc into pieces"
>
> This reverts commit 8644f2b7632cff5e46560c2f5cf7c0dc071aa32d.
>
> Reason for revert: Fixed the bugs
>
> Original change's description:
> > Revert "Split peer_connection_integrationtest.cc into pieces"
> >
> > This reverts commit cae4656d4a7439e25160ff4d94e50949ff87cebe.
> >
> > Reason for revert: Breaks downstream build (missing INSTANTIATE_TEST_SUITE_P in pc/data_channel_integrationtest.cc).
> >
> > Original change's description:
> > > Split peer_connection_integrationtest.cc into pieces
> > >
> > > This creates two integration tests: One for datachannel, the other
> > > for every test that is not datachannel.
> > >
> > > It separates out the common framework to a new file in pc/test.
> > > Also applies some fixes to IWYU.
> > >
> > > Bug: None
> > > Change-Id: I919def1c360ffce205c20bec2d864aad9b179c3a
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207060
> > > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#33244}
> >
> > TBR=hbos@webrtc.org,hta@webrtc.org
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > No-Try: True
> > Bug: None
> > Change-Id: I7dbedd3256cb7ff47eb5f8cd46c7c044ed0aa1e0
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207283
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#33255}
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Bug: None
> Change-Id: I1bb6186d7f898de82d26f4cd3d8a88014140c518
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207864
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33283}

Bug: None
Change-Id: I2b09b57c2477e52301ac30ec12ed69f2555ba7f8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208021
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33286}
2021-02-17 08:59:05 +00:00
60c0b442ee Use CallbackList for DtlsState in dtls_transport.
- This contains a CallbackList disconnect and handled it
  by taking the given subscription tag to subscribe and unsubscribe.
- Left the original sigslot variable until downstream is update after
  this change.

Bug: webrtc:11943
No-Try: True
Change-Id: Ie96d74b9594eae11beaa552f61e40f451242bfab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203780
Commit-Queue: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33285}
2021-02-17 07:42:13 +00:00
46e5a2f3f4 Update WebRTC code version (2021-02-17T04:02:09).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I0d3464ede38efac65eae1ac5a05d1c3866e29f6e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207980
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33284}
2021-02-17 05:45:27 +00:00
772066bf16 Reland "Split peer_connection_integrationtest.cc into pieces"
This reverts commit 8644f2b7632cff5e46560c2f5cf7c0dc071aa32d.

Reason for revert: Fixed the bugs

Original change's description:
> Revert "Split peer_connection_integrationtest.cc into pieces"
>
> This reverts commit cae4656d4a7439e25160ff4d94e50949ff87cebe.
>
> Reason for revert: Breaks downstream build (missing INSTANTIATE_TEST_SUITE_P in pc/data_channel_integrationtest.cc).
>
> Original change's description:
> > Split peer_connection_integrationtest.cc into pieces
> >
> > This creates two integration tests: One for datachannel, the other
> > for every test that is not datachannel.
> >
> > It separates out the common framework to a new file in pc/test.
> > Also applies some fixes to IWYU.
> >
> > Bug: None
> > Change-Id: I919def1c360ffce205c20bec2d864aad9b179c3a
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207060
> > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#33244}
>
> TBR=hbos@webrtc.org,hta@webrtc.org
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> No-Try: True
> Bug: None
> Change-Id: I7dbedd3256cb7ff47eb5f8cd46c7c044ed0aa1e0
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207283
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33255}

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

Bug: None
Change-Id: I1bb6186d7f898de82d26f4cd3d8a88014140c518
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207864
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33283}
2021-02-16 18:53:18 +00:00
3562318bde Delete unused functions in RtpSender, RtcpSender and RtcpReceiver
These functions are not longer used by the RtpRtcp implementations.

Bug: None
Change-Id: Ibc36433b253b264de4cdcdf380f5ec1df201b17a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207862
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33282}
2021-02-16 14:16:22 +00:00
f4e3e2b83f Delete rtc::Callback0 and friends.
Replaced with std::function.

Bug: webrtc:6424
Change-Id: Iacc43822cb854ddde3cb1e5ddd863676cb07510a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205005
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33281}
2021-02-16 12:41:35 +00:00
d6c81dbc20 Replace VideoLayerFrameId with int64_t.
Bug: webrtc:12206
Change-Id: I7e141806e417c4d98ce795d898f0d820e482113e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207860
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33280}
2021-02-16 11:43:04 +00:00
bdf78cb5bb Bug fixes to EglBase10Impl.getNativeEglContext.
- Use matching config to avoid EGL_BAD_MATCH.
 - Use the same display in both eglMakeCurrent calls to avoid
   EGL_BAD_ACCESS on subsequent calls because the context was not
   successfully unbound.

Bug: webrtc:12471
Change-Id: Ifdf4bd94cdfd14b683959b8703d75a2a46ec1226
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207861
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33279}
2021-02-16 11:41:24 +00:00
067b050213 Delete deprecated unused functions from RtpRtcp interface
Bug: None
Change-Id: Iceb59d726c328974c3ccbf52a782ac9e25bd57c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205581
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33278}
2021-02-16 10:23:41 +00:00
2c8d9299c8 QualityScalingTests: Add tests for VP9.
Bug: none
Change-Id: Ic6e8539dfd1a43581eb4bfc26a2b04b9cd6a4cab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207435
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33277}
2021-02-16 09:53:44 +00:00
c79bd433a1 Delete friendship between VirtualSocket and VirtualSocketServer
Bug: webrtc:11567
Change-Id: I07d01b9eed798a69ba798e899b2bae57409ce332
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207181
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33276}
2021-02-16 09:10:16 +00:00
686ad4ff06 Resolve relative paths in sdk build scripts.
E.g. such command:
./src/tools_webrtc/ios/build_ios_libs.sh --build_config debug \
     --arch arm64 --output-dir ./out/ios_debug/

Failed before this CL, because build files actually saved into different
location and when attempted to copy to destinatoin dir error occurred.

No-Presubmit: True
Bug: None
Change-Id: Ib7dd23a95cc81873c0eb61cc3c6bf51573936f78
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206810
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33275}
2021-02-16 08:06:01 +00:00
d1bbec3120 Update WebRTC code version (2021-02-16T04:03:42).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I7f6a4b16064f65553e7755f464c430a19a7a6e9d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207806
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33274}
2021-02-16 05:16:44 +00:00
b73c9f0bc3 Extract SystemTimeNanos to its own file
Prepare for this function to be overridden when WebRTC is included
into other applications such as chromium. This will make it
possible to remove code that keeps track of the difference between
WebRTC and chromium time.

Bug: chromium:516700
Change-Id: I73133804f945cc439f9827ec68a8e67b96d8560f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204304
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33273}
2021-02-15 22:38:46 +00:00
8408c9938c Remove 'secondary sink' concept from webrtc::VideoReceiveStream.
In practice, support for multiple sinks is not needed and supporting
the API that allows for dynamically adding/removing sinks at runtime,
adds to the complexity of the implementation.

This CL removes that Add/Remove methods for secondary sinks as well
as vectors of callback pointers (which were either of size 0 or 1).
Instead, an optional callback pointer is added to the config struct
for VideoReceiveStream, that an implementation can consider to be
const and there's not a need to do thread synchronization for that
pointer for every network packet.

As part of webrtc:11993, this simplifies the work towards keeping
the processing of network packets on the network thread. The secondary
sinks, currently operate on the worker thread.

Bug: webrtc:11993
Change-Id: I10c473e57d3809527a1b689f4352e903a4c78168
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207421
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33272}
2021-02-15 18:08:17 +00:00
a33f41bf58 Support getNativeEglContext in EglBase10Impl.
Bug: webrtc:12471
Change-Id: Iac969b4985b4db02c18f07c4b5ec2a787e312560
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207434
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33271}
2021-02-15 16:52:40 +00:00
8623c75cc5 Remove ctor for BuiltInNetworkBehaviorConfig
The purpose is to allow parameterized construction.
Ex,
  const webrtc::BuiltInNetworkBehaviorConfig good_network_config = {
      .queue_length_packets = 50,
      .queue_delay_ms = 10,
      .link_capacity_kbps = 5000};

Bug: None
Change-Id: I36b216eea8d1fd69d37f2f9f67a9645a7de2a467
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207426
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33270}
2021-02-15 15:47:50 +00:00
453a125438 Remove no longer needed FrameDroppingOn setting in QualityScalingTests.
Bug: none
Change-Id: Id3868f947584616a7027a3985155a79c01e6dbb8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207422
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33269}
2021-02-15 15:10:49 +00:00
51746ce3fe Revert "Replace RecursiveCriticalSection with Mutex in RTCAudioSession."
This reverts commit f8da43d179043f1df2e1c3e2c49494bc23f4ec28.

Reason for revert: Appears to break downstream app.

Original change's description:
> Replace RecursiveCriticalSection with Mutex in RTCAudioSession.
>
> Bug: webrtc:11567
> Change-Id: I2a2ddbce57d070d6cbad5a64defb4c27be77a665
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206472
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33259}

TBR=nisse@webrtc.org,kthelgason@webrtc.org,hta@webrtc.org,handellm@webrtc.org

Change-Id: Id9a97068722c7c72fc5d21102298249fd7a7cd9a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11567
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207431
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33268}
2021-02-15 14:52:03 +00:00
17ec2fc443 Remove log line that states that FlexFEC is disabled.
This log line adds no value, since the enable state of the feature can
already be deduced from the list of field trials. Instead, this log
line only contributes log spam in calls where `SetRemoteContent` is
called often.

Bug: chromium:1177690
Change-Id: Icafb537de9388df5475919432b3c99f28170e7de
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207428
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33267}
2021-02-15 14:44:12 +00:00
6e35ecec1b Destroy PC properly to stop input video before closing video writer
Bug: None
Change-Id: Ib0683ee1d2313371240ca85f4984eec5311ef695
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207281
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33266}
2021-02-15 14:43:07 +00:00
9aa9b8dbbe Prepare to replace VideoLayerFrameId with int64_t.
Bug: webrtc:12206
Change-Id: I10bfdefbc95a79e0595956c1a0e688051da6d2b9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207180
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33265}
2021-02-15 14:42:02 +00:00
563fbc1dc5 Replace RecursiveCriticalSection with Mutex in DxgiDuplicatorController
Bug: webrtc:11567
Change-Id: I6d59de7ca60b69765118787fff023c485b1f405e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207160
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33264}
2021-02-15 14:40:57 +00:00
410c99847b Const correct NetworkEmulationManager::GetStats
This make it easier to create parameters from a single endpoint ptr.

Bug: None
Change-Id: Id64757353505a21c7731655e1b7a3178fa2e5ef8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207425
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33263}
2021-02-15 14:39:52 +00:00
21347458ad Simplify PhysicalSocketServer
Merge OnPreEvent and OnEvent methods.
Merge EventDispatcher class into Signaler class.

Bug: None
Change-Id: I3c07613c76a32a628926569aab0e1076e48a0a79
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206983
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Taylor <deadbeef@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33262}
2021-02-15 14:38:47 +00:00
2afff37ba0 Update field trial for allowing cropped resolution when limiting max layers.
Make max_ratio:0.1 default.

BUG: webrtc:12459
Change-Id: Ia938836f2b95467fce66a38f2525b1d2be1a352b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206803
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33261}
2021-02-15 14:37:42 +00:00
58f29b0534 Roll chromium_revision b5988d40c8..e1b9354ff4 (853388:854007)
Change log: b5988d40c8..e1b9354ff4
Full diff: b5988d40c8..e1b9354ff4

Changed dependencies
* src/base: 8914659f46..242517a010
* src/build: d1fa78cb85..251bfc5101
* src/buildtools: 7e85fef7d9..228b1c1883
* src/buildtools/linux64: git_revision:55ad154c961d8326315b1c8147f4e504cd95e9e6..git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3
* src/buildtools/mac: git_revision:55ad154c961d8326315b1c8147f4e504cd95e9e6..git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3
* src/buildtools/win: git_revision:55ad154c961d8326315b1c8147f4e504cd95e9e6..git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3
* src/ios: ba0d254e6d..d365fb8897
* src/testing: f71ab6246f..7dee089ce5
* src/third_party: 4583d1a51a..d15b5c89b3
* src/third_party/androidx: hF9dL0GeFAftrouf8BezMHHVnB3KIDD1V1YgH3_c6IwC..09Q7fX-z4zxVsv_sl0K_cenKEZASVgwYe4goJB_KaIsC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/d2aa56920c..35976bfcac
* src/third_party/depot_tools: 398091b193..7386a1e04f
* src/third_party/freetype/src: 54c5ad5c92..7849316ccf
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/648c6507f1..e72d81ffbc
* src/third_party/perfetto: d5c3eb6a5f..7945040041
* src/tools: 4858c5936c..bd77bcca0d
DEPS diff: b5988d40c8..e1b9354ff4/DEPS

Clang version changed llvmorg-13-init-794-g83e2710e:llvmorg-13-init-1559-g01b87444
Details: b5988d40c8..e1b9354ff4/tools/clang/scripts/update.py

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Id34de6fe850696aeb9a5825ad6eef37951451ed4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207741
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33260}
2021-02-15 14:36:39 +00:00
f8da43d179 Replace RecursiveCriticalSection with Mutex in RTCAudioSession.
Bug: webrtc:11567
Change-Id: I2a2ddbce57d070d6cbad5a64defb4c27be77a665
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206472
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33259}
2021-02-15 14:35:38 +00:00
a24f3d035f Whitespace update
Rolling the dice once more. Hoping to roll three green Mac x64
builds to unblock the roll (last roll was several days ago).

TBR=mbonadei@webrtc.org,alessiob@webrtc.org,tommi@webrtc.org

Change-Id: I2fdbb87f0cda1a2c5c3a9ac50e1af1297cf9f2f5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207424
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33258}
2021-02-14 19:14:44 +00:00
f3ccab4e3f Reland "Just adding my message in whitespace."
This reverts commit 130ff4974b8ef840c30be8c04d6da4a5a942cd4b.

Reason for revert: Another noop roll attempt. Looks like the builders are simply out of disk space though.

Original change's description:
> Revert "Just adding my message in whitespace."
>
> This reverts commit ad99c81da465f45dd28ad5ffbd05151b6274c461.
>
> Reason for revert: Triggering build to unblock roll.
>
> Original change's description:
> > Just adding my message in whitespace.
> >
> > Change-Id: I30556ce2cde868d55edbaa16a61b8c7cfaaacf53
> > Bug: None
> > TBR: mbonadei@webrtc.org
> > No-Try: True
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205624
> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> > Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#33163}
>
> TBR=mbonadei@webrtc.org,alessiob@webrtc.org
>
> No-Try: True
> Bug: None
> Change-Id: Ica3444383c0212bc5a414d9cad7ee42ee7f323d8
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207420
> Commit-Queue: Tommi <tommi@webrtc.org>
> Reviewed-by: Tommi <tommi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33254}

TBR=mbonadei@webrtc.org,alessiob@webrtc.org,tommi@webrtc.org

No-Try: True
Bug: None
Change-Id: I2b822452778d027638c0244b5e1d8ba7f1e45968
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207423
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33257}
2021-02-14 14:20:04 +00:00