Commit Graph

33773 Commits

Author SHA1 Message Date
2ae4ed223a Fix the last checksum
This should be the last checksum CL for audio tests.

Bug: webrtc:12882
Change-Id: Ie7033434e920a2f923c521cca00d1c270c406370
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224086
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/master@{#34391}
2021-06-30 07:32:00 +00:00
2c4d24308f Add ARM64 for min expected PSNR score for the M1 Mac.
Bug: webrtc:12882
Change-Id: Ieb3f942c9e640bbb329219b41a00a0bf43dd3849
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224087
Reviewed-by: Andrey Logvin <landrey@google.com>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/master@{#34390}
2021-06-30 07:20:59 +00:00
46d002cb36 Add M1 Mac expected results for AudioDecoderIsacFixTest
Bug: webrtc:12882
Change-Id: I56c1fcdd85fab88924b9a9f53a1a20485633f840
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223660
Commit-Queue: Christoffer Jansson <jansson@google.com>
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34389}
2021-06-30 07:03:52 +00:00
fbdd778891 Update WebRTC code version (2021-06-30T04:03:59).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I0ba7547388e39c2b50bfb2704c939e9ae1f01be7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224270
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@{#34388}
2021-06-30 05:24:45 +00:00
985905d42d Add fieldtrial to enable minimum pacing of video frames
If the RTP header extension playout-delay is used and set
to min=0, max>=0, frames are scheduled to be decoded as
soon as possible. There's a risk that too many frames are
sent to the decoder at once, which may cause problems
further down in the video pipeline.

This CL adds the fieldtrial WebRTC-ZeroPlayoutDelay with
the parameter min_pacing that determines the minimum
pacing interval between two frames scheduled for
decoding.

Bug: None
Change-Id: I471f7718761cfce9789b3aa8adea3e8a16ecb2fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223742
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34387}
2021-06-29 19:37:42 +00:00
dcb9ffc6f2 DataChannel: Propagate SCTP transport errors to the channels
When the transport is terminated, if an error has occured, it will
be propagated to the channels.
When such errors can happen at the SCTP level (e.g. out of resources),
RTCError may contain an error code matching the definition at
https://www.iana.org/assignments/sctp-parameters/sctp-parameters.xhtml#sctp-parameters-24
If the m= line is rejected or removed from SDP, an error will again be sent
to the data channels, signaling their unexpected transition to closed.

Bug: webrtc:12904
Change-Id: Iea3d8aba0a57bbedb5d03f0fb6f7aba292e92fe8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223541
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34386}
2021-06-29 14:37:32 +00:00
c362eb2d1c dcsctp: Add mocks
This is for convenience to the users of dcSCTP, which may want to have
unit tests where the socket is mocked. And since it's best practice not
to mock other teams' or project's classes, a mock will be provided by
the upstream project - this one.

Bug: webrtc:12614
Change-Id: I65d5d21097e7feda9162567560d3838759c962fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224161
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34385}
2021-06-29 10:19:11 +00:00
da9dfae850 Re-enable ChangeFramerateVP8 & ChangeBitrateVP8 for Android and iOS
Update expectations for ARM SOC's

Bug: webrtc:9267
Change-Id: I8d0d720ab7d4d086ccff92310396fc35f2222128
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223661
Commit-Queue: Christoffer Jansson <jansson@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34384}
2021-06-29 09:56:12 +00:00
06a88fedd0 openssl: Use unique_ptr to remove unnecessary goto statements
Bug: None
Change-Id: I377cd17490a009d75545052a9300cfc34869ae85
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223501
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@nvidia.com>
Cr-Commit-Position: refs/heads/master@{#34383}
2021-06-29 08:19:39 +00:00
37477b8f24 Update WebRTC code version (2021-06-29T04:02:31).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I50c74c20e38479612e6ea916d197cd7158499dd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224240
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@{#34382}
2021-06-29 05:25:54 +00:00
5038c8bed8 Revert "Reland "Trigger postsubmit tests.""
This reverts commit 809f21bad30a11c092b3ab2f0d8318084cac5004.

Reason for revert: Test one last time.

Original change's description:
> Reland "Trigger postsubmit tests."
>
> This is a reland of 1a8c8b62e04ced5c2dce14fe1c2471071a1c3b48
>
> Trying again after branch migration.
>
> Original change's description:
> > Trigger postsubmit tests.
> >
> > TBR=tommi@webrtc.org
> >
> > No-Try: True
> > No-Presubmit: True
> > Bug: None
> > Change-Id: Icd93b83624be2c5dcda6ded9e87e47c179a1a4dd
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224089
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#34377}
>
> No-Tree-Checks: True
> No-Try: True
> No-Presubmit: True
> Bug: None
> Change-Id: Id439ae8e797e6cf3957514d0d169bb4fa1b576df
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224140
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34380}

TBR=mbonadei@webrtc.org,tommi@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I75d3f764a702e0c48ac1d2a2970f3f5ab2cce685
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224160
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34381}
2021-06-28 19:44:42 +00:00
809f21bad3 Reland "Trigger postsubmit tests."
This is a reland of 1a8c8b62e04ced5c2dce14fe1c2471071a1c3b48

Trying again after branch migration.

Original change's description:
> Trigger postsubmit tests.
>
> TBR=tommi@webrtc.org
>
> No-Try: True
> No-Presubmit: True
> Bug: None
> Change-Id: Icd93b83624be2c5dcda6ded9e87e47c179a1a4dd
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224089
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34377}

No-Tree-Checks: True
No-Try: True
No-Presubmit: True
Bug: None
Change-Id: Id439ae8e797e6cf3957514d0d169bb4fa1b576df
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224140
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34380}
2021-06-28 18:19:11 +00:00
53f1fe4ff6 Fail instead of crashing while writing invalid dependency descriptor
Bug: webrtc:10342
Change-Id: Ic9af7913aa9835450877940fc5cf29bebf774484
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224082
Reviewed-by: Emil Lundmark <lndmrk@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34379}
2021-06-28 16:42:04 +00:00
80090467aa Revert "Trigger postsubmit tests."
This reverts commit 1a8c8b62e04ced5c2dce14fe1c2471071a1c3b48.

Reason for revert: Triggering again.

Original change's description:
> Trigger postsubmit tests.
>
> TBR=tommi@webrtc.org
>
> No-Try: True
> No-Presubmit: True
> Bug: None
> Change-Id: Icd93b83624be2c5dcda6ded9e87e47c179a1a4dd
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224089
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34377}

TBR=mbonadei@webrtc.org,tommi@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: Idc536cd578657c88cef2b570237e541bc1ccb0c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224091
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34378}
2021-06-28 15:40:16 +00:00
1a8c8b62e0 Trigger postsubmit tests.
TBR=tommi@webrtc.org

No-Try: True
No-Presubmit: True
Bug: None
Change-Id: Icd93b83624be2c5dcda6ded9e87e47c179a1a4dd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224089
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34377}
2021-06-28 15:21:37 +00:00
df400c383d Update roll_deps.py to use main branch
No-Presubmit: True
No-Tree-Checks: True
Bug: webrtc:12895
Change-Id: I381b3bd2321ba50ecc7b9fddf136f18e5fe58686
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223069
Commit-Queue: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34376}
2021-06-28 14:52:33 +00:00
e99f6879f6 Move WebRTC to non deprecated jsoncpp APIs.
This will allow the removal of -Wno-deprecated-declarations from
WebRTC's BUILD.gn files even if [1] will still propagate in the
build graph, causing some ABSL_DEPRECATED to be ignored.

[1] - https://source.chromium.org/chromium/chromium/src/+/main:third_party/jsoncpp/BUILD.gn;l=15;drc=592d07510836410a1ec4833de342544d1b39ef08

Bug: webrtc:10770
Change-Id: I90193ac5cc3e41f00f1b5dd5dac3c462e4b5f9ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223666
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34375}
2021-06-28 12:09:14 +00:00
06b8f7ea32 Move supported_platforms.md under g3doc/.
No-Try: True
Bug: webrtc:12896
Change-Id: Id194fe0e6d09b7661078f9eb2f35b7cbc67a82de
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224084
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34374}
2021-06-28 12:07:45 +00:00
e6ab5200b3 First draft of WebRTC supported platforms/compilers documentation.
No-Try: True
Bug: webrtc:12896
Change-Id: I5f6d3a6245c9d6997f6c45bfcae297532a3ba89a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224083
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34373}
2021-06-28 11:45:30 +00:00
7208457e80 Same length for all ARM64 platforms
Update more audio checksums for M1

Bug: webrtc:12882
Change-Id: I527a43a01afe2b2e4af137852174159bf3111652
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224081
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/master@{#34372}
2021-06-28 11:18:40 +00:00
74543b77c6 PlatformThreadTest: fix flake.
This change aims to fix a flake that could have been caused by
threads lingering past the main thread lifetime.

Bug: webrtc:12913
Change-Id: I144078b41d59f46398212f48cdd4b0cf3f204bfe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224080
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34371}
2021-06-28 09:09:47 +00:00
2b3a10e62d Add MAC arm64 platform and update checksums for acm unittest
Bug: webrtc:12882
Change-Id: Ie820746dd66d28a2a57c2e2a3b9f12b4c43f56a4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223668
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/master@{#34370}
2021-06-28 08:18:07 +00:00
5e82c75c8e Remove TODOs to remove SetAudioPlayback and SetAudioRecording
Bug: webrtc:12916
Change-Id: Ic94553f5a2c3b82de4cef52a8d2fd80f6628cfbe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223841
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34369}
2021-06-26 19:21:30 +00:00
482b7c05c8 Fix -Wimplicit-int-float-conversions.
Bug: chromium:989932
Change-Id: I1e8a8ff96aac1aa722b72153cea842c352a63cb9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223883
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Peter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/master@{#34368}
2021-06-25 22:25:22 +00:00
64851c0bfb Reland: Fix echo return loss stats and add to RTCAudioSourceStats.
Relanding after adding to chromium stats whitelist:
https://chromium-review.googlesource.com/c/chromium/src/+/2983329

This solves two problems:
* Echo return loss stats weren't being gathered in Chrome, because they
  need to be taken from the audio processor attached to the track
  rather than the audio send stream.
* The standardized location is in RTCAudioSourceStats, not
  RTCMediaStreamTrackStats. For now, will populate the stats in both
  locations.

Bug: webrtc:12770
Change-Id: I3633ee428d07b283b0cc503a84d8fa2e79415dfb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223761
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34367}
2021-06-25 21:08:20 +00:00
a987429500 Update WebRTC code version (2021-06-25T04:04:09).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I7dfda0420e7d1722870a99b0d5095b0b339253b9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223781
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@{#34366}
2021-06-25 07:06:13 +00:00
c830bd627f Remove ssl_certificate() accessor.
The Cl landing the alternative was dated 2018, and an (informal)
deprecation notice was landed. The users are now gone.

Bug: None
Change-Id: I1f49143fe5f2c236bf9574469f2573593b7a8086
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223663
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Philipp Hancke <phancke@nvidia.com>
Cr-Commit-Position: refs/heads/master@{#34365}
2021-06-24 19:17:52 +00:00
e9a74c918b Public RtpVideoFrameAssembler
This class takes RtpPacketReceived and assembles them into RtpFrameObjects.

Change-Id: Ia9785d069fecccc1d5b81efd257f33c8bd7a778b
Bug: webrtc:7408, webrtc:12579
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222580
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34364}
2021-06-24 15:20:42 +00:00
4e513346ec AV1 OBU test helper.
Bug: none
Change-Id: I942319122f823e18e500c049274527b00e6feba6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223061
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34363}
2021-06-23 13:43:50 +00:00
28e582d55a Removing RTC_SUPPORTS_METAL compilation flag. This flag is a holdover from before either macOS or the iOS Simulator supported Metal rendering.
Bug: webrtc:12638
Change-Id: I21054bdcf4c941086234562c4ee1740754050590
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/216700
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34362}
2021-06-23 09:56:20 +00:00
f2ed401679 Fix unscaled timestamps passed to nack_tracker
If timestamp_scaler_ is used, then rtp_header.timestamp, passed to UpdateLastDecodedPacket, will advance at a different rate than the scaled timestamp packet->timestamp, passed to UpdateLastDecodedPacket.

NackTracker::EstimateTimestamp uses timestamp_last_received_rtp_, and NackTracker::TimeToPlay uses timestamp_last_decoded_rtp_.

This difference causes TimeToPlay to continuously increase to huge values, so that every missing packet will be returned from GetNackList, even if RTT > real time to play.

Change-Id: Ie6ca347972edea98a202c9cdd26c6ab3f45a73c4
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222841
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34361}
2021-06-23 08:41:50 +00:00
9233af3e22 Update dependencies on deprecated target rtc_base:critical_section
Bug: webrtc:11567
Change-Id: I3b01d65d97502dcef61912e6eb6c5352adc116e5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223066
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34360}
2021-06-23 07:01:42 +00:00
0742f52a1e Triggering build after flaky builders (asan).
No-Try: true
Tbr: mbonadei@webrtc.org
Bug: None
Change-Id: Ic0a16325eb2c752a8c2e2545371727b8408718d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223344
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34359}
2021-06-22 17:20:54 +00:00
eb61b7f620 ModuleRtcRtcpImpl2: remove Module inheritance.
This change achieves an Idle Wakeup savings of 200 Hz.

ModuleRtcRtcpImpl2 had Process() logic only active if TMMBR() is
enabled in RtcpSender, which it never is. Hence the Module
inheritance could be removed. The change removes all known
dependencies of the module inheritance, and any related mentions
of ProcessThread.

Fixed: webrtc:11581
Change-Id: I440942f07187fdb9ac18186dab088633969b340e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222604
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34358}
2021-06-22 14:51:04 +00:00
6e65f6a428 Deprecating AbsoluteCaptureTimeReceiver
Bug: chromium:1056230, webrtc:10739
Change-Id: I42b6a6f1c61eaaa468898a09bb7add30f0a419fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223065
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34357}
2021-06-22 14:44:04 +00:00
3f7b7170cc RTCPSender: remove compatibility ctor & method.
This change removes compatibility APIs in RTCPSender now
that downstream consumers updated.

Bug: webrtc:11581, webrtc:6458
Change-Id: I82d70f1ab6b522b3884480b0b16cbdff9a1490c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222323
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34356}
2021-06-22 13:30:20 +00:00
49cb459956 TaskQueueStdlib: initialize the thread last.
TaskQueueStdlib initialized it's thread too early which
permitted it to access uninitialized attributes.

Also remove the |stopped_| event which isn't needed because of
the platform thread being joinable.

Fixed: webrtc:12876
Change-Id: Ibd27ce915e0e3ac92ebafca535c5a3fd72f9165e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223340
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34355}
2021-06-22 09:49:07 +00:00
0fe60bd41a Add RecursiveCriticalSection to the don't-use list of primitives
Bug: None
Change-Id: If16da4582e1b4ae498982429d8a8eaeb81402099
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223341
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34354}
2021-06-22 09:40:47 +00:00
c413c5581b Replace use of RecursiveCriticalSection in VirtualSocketServer
Also change listen_queue_ member to use std::unique_ptr to
manage ownership.

Bug: webrtc:11567
Change-Id: I85171c9cd0253fdbcbce38b1cfebb1adb5bddd9b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223063
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34353}
2021-06-22 09:02:56 +00:00
fe6580fb87 Revert "Fix echo return loss stats and add to RTCAudioSourceStats."
This reverts commit a27cfbffdfa0bf359628d2164db5b9d6321f9c9c.

Reason for revert: WebRtcBrowserTest.RunsAudioVideoWebRTCCallInTwoTabsGetStatsPromise failing.

Original change's description:
> Fix echo return loss stats and add to RTCAudioSourceStats.
>
> This solves two problems:
> * Echo return loss stats weren't being gathered in Chrome, because they
>   need to be taken from the audio processor attached to the track
>   rather than the audio send stream.
> * The standardized location is in RTCAudioSourceStats, not
>   RTCMediaStreamTrackStats. For now, will populate the stats in both
>   locations.
>
> Bug: webrtc:12770
> Change-Id: I47eaf7f2b50b914a1be84156aa831e27497d07e3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223182
> Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34344}

TBR=deadbeef@webrtc.org,hbos@webrtc.org,hbos@chromium.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I6b2587d762f005adef67c0d5121f1b58c3b76688
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:12770
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223068
Reviewed-by: Evan Shrubsole <eshr@google.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/master@{#34352}
2021-06-22 08:10:50 +00:00
9e2b3155ee Minor code cleanup of WebRtcVideoReceiveStream.
* Remove unnecessary decoder factory pointer.
* Set video decoder factory in the ctor of the config class.
* Prepare SetRecvParameters for not needing RecreateWebRtcVideoStream.

Bug: none
Change-Id: I48fbf2920c9fe50f3995ceab5667eb2f70618f25
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223067
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34351}
2021-06-22 08:09:48 +00:00
885d538cdd ModuleRtpRtcpImpl2: remove RTCP send polling.
This change migrates RTCP send polling happening in
ModuleRtpRtcpImpl2::Process to task queues.

ModuleRtpRtcpImpl2 would previously only cause RTCP sends while being
registered with a ProcessThread. This is now relaxed so that RTCP will
be sent regardless of ProcessThread registration status, and it seems
no tests cared.

Now there's only one piece of polling left in Process.

Bug: webrtc:11581
Change-Id: Ibdcffefccef7363f2089c34a9c7d694d222445c0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222603
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34350}
2021-06-22 07:49:05 +00:00
20862093e5 Update WebRTC code version (2021-06-22T04:05:30).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I1c5330d75eab7ea018c302a433879f2926c44a61
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223302
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@{#34349}
2021-06-22 05:25:37 +00:00
049ed447b0 ModuleRtpRtcpImpl2: update test code.
This change prepares for later CLs that partly replaces
logic in the module that depends on the Module system
for logic that depends on task queues.

The change also changes SendTransport::SendRTCP
to schedule packet reception with the simulated time
controller. This fixes the problem that SendRTCP itself
updates the simulated time which makes it hard to
understand the tests.

Finally, GlobalSimulatedTimeController was updated
to support addition of custom SimulatedSequenceRunners
like SendTransport.

Bug: webrtc:11581
Change-Id: I0aa310ad0a10526479ad8c28affc38a413363ffd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222602
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34348}
2021-06-21 23:36:49 +00:00
fb7fd24b3d Removing RTC_SUPPORTS_METAL compilation flag. This flag is a holdover from before either macOS or the iOS Simulator supported Metal rendering.
Bug: webrtc:12638
Change-Id: Iced21bfac40192f609b65f5ea1dc3393ee1695fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222461
Commit-Queue: Jake Bromberg <jakebromberg@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34347}
2021-06-21 22:47:44 +00:00
c6b9ac782a RTCPSender: migrate to Timestamp.
This change migrates RTCPSender to use webrtc::Timestamp, preparing
for later improvements regarding bugs.webrtc.org/11581.

Fixed: webrtc:12873
Change-Id: I1159701dc373883367d9b2c86823f8fb59904d55
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222324
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34346}
2021-06-21 22:26:34 +00:00
e2ab77ba57 Reland "Port: migrate to TaskQueue."
This reverts commit a4aabb921353125f6d3a2caa2ceb9cda7e971f22.

Reason for revert: downstream tests fixed.

TBR=hta@webrtc.org
Original change's description:
> Revert "Port: migrate to TaskQueue."
>
> This reverts commit 06540166ca97028454adea48cec9bf109b771ddc.
>
> Reason for revert: breaks downstream test.
>
> Original change's description:
> > Port: migrate to TaskQueue.
> >
> > Port uses legacy rtc::Thread message handling. In order
> > to cancel callbacks it uses rtc::Thread::Clear() which uses locks and
> > necessitates looping through all currently queued (unbounded) messages
> > in the thread. In particular, these Clear calls are common during
> > negotiation and the probability of having a lot of queued messages is
> > high due to a long-running network thread function invoked on the
> > network thread.
> >
> > Fix this by migrating Port to task queues.
> >
> >
> > Bug: webrtc:12840, webrtc:9702
> > Change-Id: I6c6fb83323899b56091f0857a1c2d15d19199002
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/221370
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Commit-Queue: Markus Handell <handellm@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#34338}
>
> TBR=hta@webrtc.org,handellm@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
>
> Change-Id: I014ef9267d224c10595cfa1c12899eabe0093306
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:12840, webrtc:9702
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223062
> Reviewed-by: Markus Handell <handellm@webrtc.org>
> Commit-Queue: Markus Handell <handellm@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34339}

# Not skipping CQ checks because this is a reland.

Bug: webrtc:12840, webrtc:9702
Change-Id: I4d2e086b686da8d5272d67293406300a07edef81
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223260
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34345}
2021-06-21 22:21:04 +00:00
a27cfbffdf Fix echo return loss stats and add to RTCAudioSourceStats.
This solves two problems:
* Echo return loss stats weren't being gathered in Chrome, because they
  need to be taken from the audio processor attached to the track
  rather than the audio send stream.
* The standardized location is in RTCAudioSourceStats, not
  RTCMediaStreamTrackStats. For now, will populate the stats in both
  locations.

Bug: webrtc:12770
Change-Id: I47eaf7f2b50b914a1be84156aa831e27497d07e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223182
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34344}
2021-06-21 21:18:02 +00:00
2e3edc1da9 RTCPSender: migrate to own configuration struct.
The class depends on RtcRtcpInterface::Configuration which adds an
unneeded dependency, and inhibits well-manored changes to the
constructor interface.

Fix this so that RTCPSender uses it's own configuration struct which
can be extended in future CLs.

Also add a legacy constructor while downstream dependencies are
updated.

Bug: webrtc:11581
Change-Id: I8d166ab8253b27c08fcbe6aa7c7adde92688b7dc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222322
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34343}
2021-06-21 20:23:01 +00:00
f906ec40d4 Handle null return from ToI420 in encoders
In cases where ToI420 fails it should be able to return null.

Bug: webrtc:12877
Change-Id: Ia13859c104d978a29712ae10f8e15acada8406ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/222613
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/master@{#34342}
2021-06-21 12:45:11 +00:00