Commit graph

590 commits

Author SHA1 Message Date
Stefan Mitic
7d8ed34372 Added support for H264 YUV444 (I444) decoding.
Added Nutanix Inc. to the AUTHORS file.

Bug: chromium:1251096
Change-Id: Ib47c2b1f94797afb6c5090f3c46eae6f13110992
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/234540
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35200}
2021-10-14 11:06:55 +00:00
Nico Weber
b3c9d3da8f [ios] Fix two rtc_unittests that fail when using lld as linker
setExif: would create a CFDictionary using NULL for keyCallBacks and
valueCallBacks. This has the effect of comparing the keys of the
dictionary by pointer instead of by value. With ld64, this works
because it always dedupes identical constant CFSTR("foo") literal,
but lld currently doesn't do this.

Using kCFTypeDictionaryKeyCallBacks and kCFTypeDictionaryValueCallBacks
fixes the problem with lld and is "more correct" in general: Now the
dictionary would work with computed CFStrings too, it shows up better
in CFShow() output, etc.

While here, also fix a memory leak in setExif:.

Bug: chromium:1251763
Change-Id: I43c96d2189a4a77fe3bd0dfb3e33623925b0f900
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232760
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/main@{#35067}
2021-09-22 19:45:44 +00:00
Byoungchan Lee
0a54e7a101 Verify that locks are handled correctly on RTCAudioSession
This CL is for the same behavior as before [1], to emit the NSError
when an application is not using the RTCAudioSession lock correctly.

[1] https://webrtc-review.googlesource.com/c/src/+/207432

Bug: webrtc:13091
Change-Id: I031b0e963d33c92ce1af7a306edfa6be005e043d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229461
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Byoungchan Lee <daniel.l@hpcnt.com>
Cr-Commit-Position: refs/heads/main@{#35018}
2021-09-17 01:41:42 +00:00
Peter Hanspers
0bf94aaa7c Fix race condition in RTCNetworkMonitor/objc_network_monitor.
Bug: webrtc:13146
Change-Id: I74d645df8847f1e003d1dc8b64e79c6ef9bce285
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231138
Reviewed-by: Linus Nilsson <lnilsson@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34917}
2021-09-03 12:44:17 +00:00
Peter Hanspers
e5b4e941a0 Surface audio unit errors.
With this change, we catch audio unit start errors and pipe them to the
audio session. The audio session notifies its delegate, which can then
take appropriate action based on the error code.
The signal follows the same path as the playout glitch detection.

Bug: webrtc:13119
Change-Id: I8c9f9d2a1e3457447d0ce61ad197f7e1c6392837
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/230240
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Xavier Lepaul‎ <xalep@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34862}
2021-08-30 09:06:25 +00:00
Danil Chapovalov
b74b2b5a99 Migrate objc video decoder wrapper from InitDecode to Configure
Bug: webrtc:13045
Change-Id: Iff00489a91379298ac90cd48eb1aea109abd9906
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228945
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34825}
2021-08-23 14:50:55 +00:00
Saúl Ibarra Corretgé
4d0760e7f9 Add ability to mark video sources for screen casting in ObjC
Bug: webrtc:13033
Change-Id: If30a4889cd2cb0ecc5ee91eed2ee9b496a40c852
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227295
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34818}
2021-08-21 08:19:12 +00:00
Artem Titov
cfea2182f8 Use backticks not vertical bars to denote variables in comments
Bug: webrtc:12338
Change-Id: I89c8b3a328d04203177522cbdfd9e606fd4bce4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228246
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34696}
2021-08-10 10:40:03 +00:00
Peter Hanspers
7f854bce1f Add supportsNativeHandle to the RTCVideoEncoder protocol.
The simulcast_encoder_adapter expects codecs that specify
supports_native_handle to perform resampling/scaling (through
GetEncoderInfo).
This change adds a method to the RTCVideoEncoder to let objc encoders
specify this rather than relying on the default.

Bug: webrtc:13044
Change-Id: I2efcbd42aa4f2048285f451c7b691fdeca111e62
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227641
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34683}
2021-08-09 15:21:52 +00:00
Byoungchan Lee
8c487578f0 Fix crash of Objc SDK addIceCandidate with incorrect candidate.
RTCIceCandidate.nativeCandidate returns a unique_ptr that
can be null. As with the previous CL, this is used without checking
whether it is null or not, so it should be fixed.

Bug: None
Change-Id: I70a84f7a2a9a9d47b8cefa198204f9b6d63a7c7f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227620
Commit-Queue: Byoungchan Lee <daniel.l@hpcnt.com>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34649}
2021-08-04 21:42:07 +00:00
Byoungchan Lee
33728152ca Fix crash of ObjC SDK sLD / sRD with incorrect SDP.
There are two problems with setLocalDescription / setRemoteDescription
in ObjC SDK.
First, RTCSessionDescription.nativeDescription returns a raw
nullableSessionDescriptionInterface pointer, where sLD/sRD are calling
Clone() method unconditionally, so it might crash.
Second, unnecessary sLD/sRD calls Clone() of the raw pointer and
does not delete it, so this pointer will leak.

To solve these problems, I changed the return type of nativeDescription to
std::unique_ptr and removed the call to Clone() method.

Bug: webrtc:13022, webrtc:13035
Change-Id: Icbb87dda62d3a11af47ec74621cf64b8a6c05228
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227380
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Byoungchan Lee <daniel.l@hpcnt.com>
Cr-Commit-Position: refs/heads/master@{#34647}
2021-08-04 20:39:00 +00:00
Mirko Bonadei
f48d3cfbab Revert "An RTCSessionDescription will now return nil from its initializer if the SDP passed to it is invalid."
This reverts commit 48cd9dbc50.

Reason for revert: Breaks downstream project.

Original change's description:
> An RTCSessionDescription will now return nil from its initializer if the SDP passed to it is invalid.
>
> Bug: webrtc:13022
> Change-Id: I2f2ad96884cf2f43f5ea95c1210470dd6aa5c919
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226980
> Commit-Queue: Jake Bromberg <jakebromberg@google.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34607}

TBR=peah@webrtc.org,hta@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com,jakebromberg@google.com

Change-Id: Iee05f747e472208f8776944df15d9206485b167e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:13022
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227341
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34615}
2021-07-31 09:53:46 +00:00
Mirko Bonadei
5f0784563c Allow export of Obj-C symbols without C++ ones.
This is useful when building the .framework which doesn't need to
export C++ symbols.

Bug: webrtc:12408
Change-Id: Ied775811a72a06b9ad678c9fb549bca286dd7f37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227089
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34613}
2021-07-30 22:54:59 +00:00
Jake Bromberg
48cd9dbc50 An RTCSessionDescription will now return nil from its initializer if the SDP passed to it is invalid.
Bug: webrtc:13022
Change-Id: I2f2ad96884cf2f43f5ea95c1210470dd6aa5c919
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226980
Commit-Queue: Jake Bromberg <jakebromberg@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34607}
2021-07-30 18:11:18 +00:00
Mirko Bonadei
3707793a57 [sigslot] - Remove sigslot form NetworkMonitorInterface.
Bug: webrtc:11943
Change-Id: Iddedb2840e437dfbffcb0d6cbf71a09b0030fbab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226869
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34573}
2021-07-27 19:27:52 +00:00
Artem Titov
d7ac581045 Use backticks not vertical bars to denote variables in comments for /sdk
Bug: webrtc:12338
Change-Id: Ifaad29ccb63b0f2f3aeefb77dae061ebc7f87e6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227024
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34561}
2021-07-27 14:39:06 +00:00
Mirko Bonadei
7750d802a5 Rename rtc_base/ssl_stream_adapter.h constants.
Uppercase constants are more likely to conflict with macros (for
example rtc::SRTP_AES128_CM_SHA1_80 and OpenSSL SRTP_AES128_CM_SHA1_80).

This CL renames some constants and follows the C++ style guide.

Bug: webrtc:12997
Change-Id: I2398232568b352f88afed571a9b698040bb81c30
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/226564
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34553}
2021-07-26 16:33:54 +00:00
Jordan Rose
53d3fc9b1c iOS: Get WebRTC building for Mac Catalyst
- Add an option for disabling the OpenGL renderer
- Change the build script to use correct header location
- Use Metal compatibility for h264 CoreVideo buffers

Bug: webrtc:11516
Change-Id: Ia34a9305648e75904ac36e69593ffefedd833bfb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224200
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@{#34426}
2021-07-06 21:07:59 +00:00
Björn Terelius
02768ae4f8 Increase iOS deployment target from 10 to 12.
TBR=kthelgason@webrtc.org

Bug: webrtc:12928
Change-Id: I50de09972bf012e78a9bc9f1d98d8d07aab4e180
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224543
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34409}
2021-07-02 17:02:27 +00:00
Jake Bromberg
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
Peter Hanspers
74cc9eaca3 Don't register invalid encode complete callbacks.
Bug: webrtc:12866
Change-Id: Ia225b2f211155b4623ba07b61cee85366d822b29
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/221741
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34277}
2021-06-14 10:45:46 +00:00
Peter Hanspers
5981bf2eb6 Add resolution alignment properties to RTCVideoEncoder protocol.
With this change, RTCVideoEncoder can specify:
- requested_resolution_alignment,
- apply_alignment_to_all_simulcast_layers
in the same way scaling_settings is specified.

Change-Id: I3de79a2eabaae581d6a9f2ef3e39496b9545a4f5

Bug: webrtc:12829
Change-Id: I3de79a2eabaae581d6a9f2ef3e39496b9545a4f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220933
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Abby Yeh <abbyyeh@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34196}
2021-06-02 09:30:06 +00:00
Byoungchan Lee
cc84c980c2 Fix typo in a URL in the comment
Bug: None
Change-Id: I8ec4daa95e2602da7c1df747a6ddda193449eea1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220620
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34175}
2021-05-31 20:15:17 +00:00
Markus Handell
a1b8201009 Move proxies into pc/.
Bug: webrtc:12787
Change-Id: Ia244d9d22d35436a02cf5a448bd1520cb66ff352
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220321
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34141}
2021-05-27 09:56:42 +00:00
Harald Alvestrand
a9af50f151 Introduce CreateDataChannelOrError
Deprecate CreateDataChannel, and make it a simple wrapper function.

Bug: webrtc:12796
Change-Id: I053d75a264596ba87ca734a29df9241de93a80c3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/219784
Reviewed-by: Xavier Lepaul‎ <xalep@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34130}
2021-05-26 09:43:29 +00:00
Byoungchan Lee
a39d96666b Remove unused property isLocked from RTCAudioSession
This property doesn't have a getter and it is not required anymore.

Bug: None
Change-Id: Ie3f057cd6928d7fdef4e7971476fb1257900ccc6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215261
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34125}
2021-05-26 08:08:40 +00:00
Byoungchan Lee
0a52ede821 Support for map of string keys to uint64_t / double values in RTCStats
Bug: webrtc:10685
Change-Id: I047d784bd20c3fca8b96391653f90fd8803140d8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/219141
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Xavier Lepaul‎ <xalep@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34121}
2021-05-25 20:38:08 +00:00
Harald Alvestrand
f33f7a2ada Deprecate PeerConnectionFactory::CreatePeerConnection
Applications should use CreatePeerConnectionOrError instead.

Moved fallback implementations of CreatePeerConnection into the
api/peer_connection_interface.h file, so that we do not have to
declare these methods in the proxy.

Bug: webrtc:12238
Change-Id: I70c56336641c2a108b68446ae41f43409277a584
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/217762
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33964}
2021-05-10 08:47:48 +00:00
Yura Yaroshevich
1153974c89 Fixed crash due wrong format specifier.
Bug: None
Change-Id: I80d512242dfd70c57952b3f41150db409ba1ac2c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215684
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33785}
2021-04-20 11:54:32 +00:00
Johannes Kron
c3fcee7c3a Move h264_profile_level_id and vp9_profile to api/video_codecs
This is a refactor to simplify a follow-up CL of adding
SdpVideoFormat::IsSameCodec.

The original files media/base/h264_profile_level_id.* and
media/base/vp9_profile.h must be kept until downstream projects
stop using them.

Bug: chroimium:1187565
Change-Id: Ib39eca095a3d61939a914d9bffaf4b891ddd222f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215236
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33782}
2021-04-20 09:42:05 +00:00
Yura Yaroshevich
d46a174f0c Expose adaptive_ptime from iOS SDK.
Bug: None
Change-Id: I48fd0937f51dc972b3eccd66f99ae80378e32fe1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/214968
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33766}
2021-04-18 21:53:32 +00:00
Yura Yaroshevich
9aec8c239f Use default rtp parameters to init wrappers in iOS
Before these changes default initialized iOS wrappers
around various RTP*Parameters types had their own
default values of nonnull values, which did not always
matched default values from native code, which then causes
override of default native values, if library user didn't
specified it's own initialization.
After these changes default initialization of iOS wrappers
uses default property values from default initialized
native types.

Bug: None
Change-Id: Ie21a7dc38ddc3862aca8ec424859c776c67b1388
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215220
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33731}
2021-04-14 12:20:17 +00:00
Yura Yaroshevich
b9fa319586 Expose extra ICE params in RTCConfiguration on iOS
Bug: None
Change-Id: I16ca28055cd9ca371f1e21b5950cf759973da894
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/213421
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#33628}
2021-04-06 13:56:31 +00:00
Yura Yaroshevich
cbadb8bcab Expose offerExtmapAllowMixed in iOS SDK.
Bug: None
Change-Id: Ic14d1f005b6c727b509492399901d822bd6950db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212280
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33498}
2021-03-18 08:54:11 +00:00
Yura Yaroshevich
417361423e Expose enableImplicitRollback in iOS SDK.
The implicit rollback of local description is part of
perfect negotiation:
https://groups.google.com/a/chromium.org/g/blink-dev/c/OqPfCpC5RYU

Bug: None
Change-Id: I144d9ef86adad0def81ab6c58ff997cd19b562da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212080
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33487}
2021-03-17 09:05:35 +00:00
Yura Yaroshevich
2d9f53ca58 Expose addIceCandidate with completion handler.
Bug: None
Change-Id: I91c15b36e6a63f7a7ee13203de5750d9492c19c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/211001
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#33440}
2021-03-11 16:15:44 +00:00
Niels Möller
be140b4187 Change ObjCNetworkMonitor::OnPathUpdate to use PostTask
Removes use of AsyncInvoker, replaced with PendingTaskSafetyFlag. The
latter is extended to support creation on a different thread than
where it will be used, and to support stop and restart.

Bug: webrtc:12339
Change-Id: I28b6e09b1542f50037e842ef5fe3a47d15704b46
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/211002
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33432}
2021-03-11 11:10:18 +00:00
Abby Yeh
3135772326 Changed setActive of RTCAudio Session, and it's working
Bug: webrtc:12018
Change-Id: I7ee5cf2df406e7a6d0edf1a95a3665c4b1d6958b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/210720
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Abby Yeh <abbyyeh@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33429}
2021-03-11 05:57:25 +00:00
Yura Yaroshevich
8bfa2756a5 Fix nullability of completion handlers in iOS SDK.
Bug: None
Change-Id: I74d3d976760fd620a8f749a3c187430dbe80ef57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/210961
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33416}
2021-03-10 11:48:04 +00:00
Yura Yaroshevich
92d12707e0 Expose PeerConnection.restartIce in iOS SDK.
Bug: None
Change-Id: I76b95b3182e6b384fd68aecf4210c23459f76d2b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/209709
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#33402}
2021-03-08 17:38:54 +00:00
Yura Yaroshevich
d67253532f Expose parameterless setLocalDescription() in iOS SDK.
Parameterless setLocalDescription is used to implement perfect
negotiation algorithm.

Bug: None
Change-Id: I89c39ee175fec5b09d9ca1700ef682e3cf20fe94
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/209700
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33401}
2021-03-08 16:39:54 +00:00
Yura Yaroshevich
d140c8f43b Added missing nullable annotations to iOS SDK.
Some of the PCF and PC methods are actually return nil, but was by
default annotated as nonnull via NS_ASSUME_NONNULL_BEGIN.

Bug: None
No-Presubmit: True
Change-Id: Ib8b9263452a61241c9e7a16c1807d87bd597c093
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/209180
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33384}
2021-03-04 13:22:26 +00:00
Yura Yaroshevich
8cfb287735 Add AV1 encoder&decoder wrappers for iOS SDK.
It is now possible to use AV1 encoder and decoder on iOS and test
them in apps like AppRTCMobile.

Bug: None
Change-Id: Ifae221020e5abf3809010676862eecd9ffeec5e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208400
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33378}
2021-03-03 20:08:17 +00:00
Niels Möller
072c0086a9 Reland "Replace RecursiveCriticalSection with Mutex in RTCAudioSession."
This is a reland of f8da43d179

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
Niels Moller
51746ce3fe Revert "Replace RecursiveCriticalSection with Mutex in RTCAudioSession."
This reverts commit f8da43d179.

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
Niels Möller
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
Artem Titov
d15a575ec3 Use SequenceChecker from public API
Bug: webrtc:12419
Change-Id: I00cca16a0ec70246156ba00b97aa7ae5ccbf5364
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205323
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33220}
2021-02-10 15:04:55 +00:00
Mirko Bonadei
ad8a00d25c Replace casted uses of [OCMArg anyPointer] with [OCMArg anyObjectRef].
Bug: None
Change-Id: Ife427f57b1dea889e6bd7a0b8f2915d93d4a1571
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206643
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33212}
2021-02-10 08:56:17 +00:00
Artem Titov
c8421c4c3e Replace rtc::ThreadChecker with webrtc::SequenceChecker
Bug: webrtc:12419
Change-Id: I825c014cc1c4b1dcba5ef300409d44859e971144
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205002
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33136}
2021-02-02 14:56:27 +00:00
Dave Cowart
b853d72250 Update Apple device list
Added new apple devices to corresponding enumeration.
Added H264 profile level information.
Previous update was done as part of:
https://webrtc-review.googlesource.com/c/src/+/158744
Device machine names obtained from:
https://gist.github.com/adamawolf/3048717

Change-Id: Ibe71ec525679d34494b579f6da851c2b45b0cd86
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/202743
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33119}
2021-02-01 09:35:03 +00:00
Niels Möller
1a29a5da84 Delete rtc::Bind
Bug: webrtc:11339
Change-Id: Id53d17bbf37a15f482e9eb9f8762d2000c772dcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/202250
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33099}
2021-01-29 08:24:43 +00:00
Mirko Bonadei
3b68aa346a Move some RTC_LOG to RTC_DLOG.
Some locations in the WebRTC codebase RTC_LOG the value of the
__FUNCTION__ macro which probably is useful in debug mode. Moving
these instances to RTC_DLOG saves ~10 KiB on arm64.

Bug: webrtc:11986
Change-Id: I5d81cc459d2850657a712b9aed80c187edf49a3a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203981
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33086}
2021-01-28 10:05:00 +00:00
Brian Dai
ef53a7fc0b Reset IO thread checker when iOS audio unit stops
In AudioDeviceIOS, when we call Stop() on the VoiceProcessingAudioUnit,
we do not always detach the I/O thread checker in preparation for a new
start. This means that if we start up the VoiceProcessingAudioUnit - and
subsequently a new AURemoteIO thread to deal with I/O operations - the
DCHECK in OnDeliverRecordedData and OnGetPlayoutData will fail. Note
that we want to detach the I/O thread checker regardless of whether
Stop() returns with a success status or not. The success status is
dictated by the iOS function AudioOutputUnitStop. The documentation of
this function does not guarantee that the audio unit will not stop in
the case the function returns with an error code. That is to say, it is
possible the audio unit stops even if the function Stop() returns false.
Therefore, it is safer to prepare the I/O thread checker for a new start
in either case.

Change-Id: Iee50a2457959aff2e6089e9a664c649dc4dbbbd6
Bug: webrtc:12382
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/202945
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33063}
2021-01-23 10:22:58 +00:00
Niels Möller
6afa794b6e Delete deprecated H264BitstreamParser methods
Bug: webrtc:10439
Change-Id: I1513907f03f9adfcf5657298e69d60519af764ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/198121
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32934}
2021-01-11 09:31:54 +00:00
Niels Möller
08d2c2bf46 Delete unneeded dependencies on the Module abstraction
Bug: webrtc:7219
Change-Id: I1bcbab7e30f9964798a093e888b07d758cf226e1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/198124
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32865}
2020-12-21 09:09:57 +00:00
Mirko Bonadei
c1254e84a5 Make RTC_OBJC_EXPORT respect is_component_build.
While RTC_EXPORT is aware of component builds (selecting "default"
visibility only when WebRTC is built as a shared library),
RTC_OBJC_EXPORT (which predates RTC_EXPORT) was always marking symbols
as "default" visible.

This CL fixes the problem but on the other hand it will require
standalone builds of the WebRTC.framework to set the GN argument
`rtc_enable_symbol_export` to true.

No-Presubmit: True
Bug: chromium:1159620
Change-Id: I4a16f9bd3c1564140a5a30f03b3e77caed1df591
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/198082
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#32856}
2020-12-17 15:52:46 +00:00
Sam Zackrisson
76443eafa9 Add support for toggling builtin voice processing on iOS
Bug: None
Change-Id: I3b64afdaed4777960124f248840f36598bba2ed4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/195443
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32742}
2020-12-02 16:07:01 +00:00
Niels Möller
a805dd8b81 Delete objc RTCRtpFragmentationHeader
Bug: webrtc:6471
Change-Id: I1d5f4fc2484c4f37ff8556ac660a1c0d070875f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191443
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32640}
2020-11-19 14:05:48 +00:00
Brad Pugh
f24143d3b0 Add support for turn logging id in ios sdk.
This patch adds support for setting the TURN_LOGGING_ID
in RTCConfig using the ios SDK.

TURN_LOGGING_ID was added to webrtc in
https://webrtc-review.googlesource.com/c/src/+/149829

The intended usage of this attribute is to correlate client and
backend logs.

This change was tested out with duo via wireshark.

Bug: webrtc:10897
Change-Id: Iedbefdc6392c4df203aca08cf750028b450a11ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191340
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Brad Pugh <bradpugh@google.com>
Cr-Commit-Position: refs/heads/master@{#32626}
2020-11-17 22:34:07 +00:00
Niels Möller
11ab77d14f Add transition define RTC_OBJC_HAVE_LEGACY_RTC_RTP_FRAGMENTATION_HEADER
Also tweak presubmit checks to allow changes to RTCMacros.h.

Bug: webrtc:6471
No-Presubmit: True
Change-Id: I19e38e4cb05b831ebd2faa223029f36d45f480ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193621
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32619}
2020-11-17 13:51:29 +00:00
Mirko Bonadei
85fae2acc5 Fix -Wrange-loop-analysis.
The new xcode-clang in xcode 12 turns on -Wrange-loop-analysis by
default, this CL tries to fix problems caused by this.

Bug: webrtc:12134
Change-Id: I77fd9a28486690c11dceceafc4d72f131b081788
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191762
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32559}
2020-11-05 15:55:33 +00:00
philipel
c780f25f1a Remove remaining variables related to incomplete frames.
Bug: webrtc:9378, webrtc:7408
Change-Id: I5b26f09a2da13906b421d0bcf615e721b66d4ce7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/190860
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32552}
2020-11-04 16:07:43 +00:00
philipel
1b0d5437c9 Removed _completeFrame since we never allow incomplete frames.
In the old jitter buffer the two VCMVideoProtection modes |kProtectionNone| and |kProtectionFEC| could be set on the jitter buffer for it to not wait for NACK and instead generate incomplete frames. This has not been possible for a long time.

Bug: webrtc:9378, webrtc:7408
Change-Id: I0a2d3ec34d721126c1128306d5fad88314f8d59f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/190680
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32513}
2020-10-28 16:00:27 +00:00
Daniel.L (Byoungchan Lee)
32026ed79c Reland "Remove placeholder Obj-C headers and use angle-bracketed headers."
This is a reland of 37d41eea04

Original change's description:
> Reland "Remove placeholder Obj-C headers and use angle-bracketed headers."
>
> This is a reland of 6bfad33fd8
>
> Original change's description:
> > Remove placeholder Obj-C headers and use angle-bracketed headers.
> >
> > sdk/objc/Framework/Headers are just a placeholder headers
> > for backward compatibility and I don't think it is really need this for now.
> > Instead, we can generate the framework header in
> > ios/mac_framework_bundle_with_umbrella_header.
> > Also clang supports the -Wquoted-include-in-framework-header warning,
> > and in Xcode 12, it's in Xcode's recommended settings. This warnings
> > can be avoided by replacing double-quoted includes with angle-bracketed
> > includes when generate framework headers.
> >
> > No-Presubmit: True
> > Bug: webrtc:9627, webrtc:11984
> > Change-Id: I3f6258dfa77a5acee669614005b2747feee35e39
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185920
> > Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#32343}
>
> TBR=tommi@webrtc.org, andersc@webrtc.org
>
> No-Presubmit: True
> Bug: webrtc:9627
> Bug: webrtc:11984
> Change-Id: I8f44232f1a70b8ff2ce6a4b4792f0a18472fcec3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187280
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32429}

TBR=tommi@webrtc.org, andersc@webrtc.org

No-Presubmit: True
Bug: webrtc:9627
Bug: webrtc:11984
Change-Id: Ida92b8864dffaea37d3053d3c00381644988b54e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/189781
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32470}
2020-10-22 11:29:48 +00:00
Philipp Hancke
4e8c115960 Reland "introduce an unsupported content description type"
This is a reland of 239f92ecf7

Original change's description:
> introduce an unsupported content description type
>
> This carries around unsupported content descriptions
> (i.e. things where webrtc does not understand the media type
> or protocol) in a special data type so that a rejected content or
> mediasection is added to the answer SDP.
>
> BUG=webrtc:3513
>
> Change-Id: Ifc4168eae11e899f2504649de5e1eecb6801a9fb
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179082
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
> Cr-Commit-Position: refs/heads/master@{#32410}

Bug: webrtc:3513
Change-Id: I48e338100f829f1df5b8165217c89b5ef860fe79
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/188820
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32457}
2020-10-21 08:20:05 +00:00
Mirko Bonadei
1253aea08e Revert "Reland "Remove placeholder Obj-C headers and use angle-bracketed headers.""
This reverts commit 37d41eea04.

Reason for revert: Sorry for the back and forth here. I need to revert again because I need to fix a downstream project. The re-landing should
be without changes.

Original change's description:
> Reland "Remove placeholder Obj-C headers and use angle-bracketed headers."
>
> This is a reland of 6bfad33fd8
>
> Original change's description:
> > Remove placeholder Obj-C headers and use angle-bracketed headers.
> >
> > sdk/objc/Framework/Headers are just a placeholder headers
> > for backward compatibility and I don't think it is really need this for now.
> > Instead, we can generate the framework header in
> > ios/mac_framework_bundle_with_umbrella_header.
> > Also clang supports the -Wquoted-include-in-framework-header warning,
> > and in Xcode 12, it's in Xcode's recommended settings. This warnings
> > can be avoided by replacing double-quoted includes with angle-bracketed
> > includes when generate framework headers.
> >
> > No-Presubmit: True
> > Bug: webrtc:9627, webrtc:11984
> > Change-Id: I3f6258dfa77a5acee669614005b2747feee35e39
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185920
> > Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#32343}
>
> TBR=tommi@webrtc.org, andersc@webrtc.org
>
> No-Presubmit: True
> Bug: webrtc:9627
> Bug: webrtc:11984
> Change-Id: I8f44232f1a70b8ff2ce6a4b4792f0a18472fcec3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187280
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32429}

TBR=mbonadei@webrtc.org,andersc@webrtc.org,tommi@webrtc.org,daniel.l@hpcnt.com

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

Bug: webrtc:9627
Bug: webrtc:11984
Change-Id: I006d50c94ad2e336c8a56d49d5ce1c768685f696
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/189542
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32432}
2020-10-19 08:32:12 +00:00
Daniel.L (Byoungchan Lee)
37d41eea04 Reland "Remove placeholder Obj-C headers and use angle-bracketed headers."
This is a reland of 6bfad33fd8

Original change's description:
> Remove placeholder Obj-C headers and use angle-bracketed headers.
>
> sdk/objc/Framework/Headers are just a placeholder headers
> for backward compatibility and I don't think it is really need this for now.
> Instead, we can generate the framework header in
> ios/mac_framework_bundle_with_umbrella_header.
> Also clang supports the -Wquoted-include-in-framework-header warning,
> and in Xcode 12, it's in Xcode's recommended settings. This warnings
> can be avoided by replacing double-quoted includes with angle-bracketed
> includes when generate framework headers.
>
> No-Presubmit: True
> Bug: webrtc:9627, webrtc:11984
> Change-Id: I3f6258dfa77a5acee669614005b2747feee35e39
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185920
> Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32343}

TBR=tommi@webrtc.org, andersc@webrtc.org

No-Presubmit: True
Bug: webrtc:9627
Bug: webrtc:11984
Change-Id: I8f44232f1a70b8ff2ce6a4b4792f0a18472fcec3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187280
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32429}
2020-10-17 18:05:28 +00:00
Ilya Nikolaevskiy
ad2ec76387 Revert "introduce an unsupported content description type"
This reverts commit 239f92ecf7.

Reason for revert: Breaks downstream projects.

Original change's description:
> introduce an unsupported content description type
>
> This carries around unsupported content descriptions
> (i.e. things where webrtc does not understand the media type
> or protocol) in a special data type so that a rejected content or
> mediasection is added to the answer SDP.
>
> BUG=webrtc:3513
>
> Change-Id: Ifc4168eae11e899f2504649de5e1eecb6801a9fb
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179082
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
> Cr-Commit-Position: refs/heads/master@{#32410}

TBR=kthelgason@webrtc.org,hta@webrtc.org,philipp.hancke@googlemail.com

Change-Id: I055fe001fe2757d79be7c304eccc43a8e3104f69
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:3513
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/188581
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32411}
2020-10-15 10:03:13 +00:00
Philipp Hancke
239f92ecf7 introduce an unsupported content description type
This carries around unsupported content descriptions
(i.e. things where webrtc does not understand the media type
or protocol) in a special data type so that a rejected content or
mediasection is added to the answer SDP.

BUG=webrtc:3513

Change-Id: Ifc4168eae11e899f2504649de5e1eecb6801a9fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179082
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/master@{#32410}
2020-10-15 09:28:28 +00:00
Mirko Bonadei
f25590e00b Revert "Remove placeholder Obj-C headers and use angle-bracketed headers."
This reverts commit 6bfad33fd8.

Reason for revert: Breaks downstream project.

Original change's description:
> Remove placeholder Obj-C headers and use angle-bracketed headers.
>
> sdk/objc/Framework/Headers are just a placeholder headers
> for backward compatibility and I don't think it is really need this for now.
> Instead, we can generate the framework header in
> ios/mac_framework_bundle_with_umbrella_header.
> Also clang supports the -Wquoted-include-in-framework-header warning,
> and in Xcode 12, it's in Xcode's recommended settings. This warnings
> can be avoided by replacing double-quoted includes with angle-bracketed
> includes when generate framework headers.
>
> No-Presubmit: True
> Bug: webrtc:9627, webrtc:11984
> Change-Id: I3f6258dfa77a5acee669614005b2747feee35e39
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185920
> Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32343}

TBR=mbonadei@webrtc.org,andersc@webrtc.org,tommi@webrtc.org,daniel.l@hpcnt.com

Change-Id: I7a6f72ecb8feebf06ad0fe0ecef071da43b98fca
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9627
Bug: webrtc:11984
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/187160
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32344}
2020-10-07 14:31:10 +00:00
Byoungchan Lee
6bfad33fd8 Remove placeholder Obj-C headers and use angle-bracketed headers.
sdk/objc/Framework/Headers are just a placeholder headers
for backward compatibility and I don't think it is really need this for now.
Instead, we can generate the framework header in
ios/mac_framework_bundle_with_umbrella_header.
Also clang supports the -Wquoted-include-in-framework-header warning,
and in Xcode 12, it's in Xcode's recommended settings. This warnings
can be avoided by replacing double-quoted includes with angle-bracketed
includes when generate framework headers.

No-Presubmit: True
Bug: webrtc:9627, webrtc:11984
Change-Id: I3f6258dfa77a5acee669614005b2747feee35e39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185920
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32343}
2020-10-07 13:45:28 +00:00
Niels Möller
cce51b628a Delete unused header file sdk/objc/Framework/Classes/PeerConnection/RTCVideoCodec+Private.h
Bug: webrtc:9627
Change-Id: Iac95406dc512480788f222261db5c9b578b36bfa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185810
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32221}
2020-09-29 08:42:02 +00:00
Tomas Gunnarsson
77baeee99e Make MessageHandler be a pure virtual interface.
Bug: webrtc:11908
Change-Id: I35d3c4005d970082bff8c5ff24186aab54205c37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185340
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32194}
2020-09-25 11:44:02 +00:00
Erik Språng
ceb44959ca Reland: Wires up WebrtcKeyValueBasedConfig in media engines.
This is a reland of
https://webrtc-review.googlesource.com/c/src/+/174261

Patchset 1 contains the old cl (plus a merge conflict fix).
Later patchets are bufixes: A PeerConnection can be created without a
Call instance (in the case of DataChannel only), so we can't always
use that to fetch the current trials.

Old CL descritpion:

This replaces field_trial:: -based functions from system_wrappers.
Field trials are still used as fallback, but injectable trials are now
possible.

// Since re-land is otherwise unchanged, setting previous reviewers as TBR
TBR=kthelgason@webrtc.org,mbonadei@webrtc.org,stefan@webrtc.org,srte@webrtc.org

Bug: webrtc:11926
Change-Id: I57a9e8c3454f226f77fb93215bcac83da65034b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/185003
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32163}
2020-09-22 16:08:22 +00:00
Artem Titov
5956a17ed6 Revert "Wires up WebrtcKeyValueBasedConfig in media engines."
This reverts commit 591b2ab82e.

Reason for revert: Breaks downstream project

Original change's description:
> Wires up WebrtcKeyValueBasedConfig in media engines.
> 
> This replaces field_trial:: -based functions from system_wrappers.
> Field trials are still used as fallback, but injectable trials are now
> possible.
> 
> Bug: webrtc:11926
> Change-Id: I70f28c4fbabf6d9e55052342000e38612b46682c
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174261
> Reviewed-by: Per Kjellander <perkj@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> 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@{#32129}

TBR=mbonadei@webrtc.org,kthelgason@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,srte@webrtc.org,perkj@webrtc.org

Change-Id: I3e169149a8b787aa6366bb357abb71794534c63a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11926
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/184507
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32132}
2020-09-17 20:17:38 +00:00
Erik Språng
591b2ab82e Wires up WebrtcKeyValueBasedConfig in media engines.
This replaces field_trial:: -based functions from system_wrappers.
Field trials are still used as fallback, but injectable trials are now
possible.

Bug: webrtc:11926
Change-Id: I70f28c4fbabf6d9e55052342000e38612b46682c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174261
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
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@{#32129}
2020-09-17 16:24:10 +00:00
Philipp Hancke
daec488749 objc: fix rollback
and add a unit test

BUG=webrtc:11796

Change-Id: I8e73b22f007c15c862faad7ca881d93c14a3a46f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/184160
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/master@{#32104}
2020-09-15 09:27:08 +00:00
Taylor Brandstetter
32eb03a1fb Get rid of NetworkMonitorBase helper class.
All it provides is a method to call a signal on the network thread,
so it's not worth the added complexity. Implementations of
NetworkMonitorInterface must hop to the network thread anyway to
guard their members.

Also added some thread annotations to AndroidNetworkMonitor.

Bug: webrtc:9883
Change-Id: I64bb82ea593433f3a52871dbb75eb2ac4f47d69c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181420
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32087}
2020-09-11 18:22:14 +00:00
Philipp Hancke
5152ea5962 objc: add rollback type to RTCSdpType
BUG=webrtc:11796

Change-Id: I98b742d9e154c9521ae7e7548b32d75bd3f584d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183761
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/master@{#32063}
2020-09-09 16:07:35 +00:00
Tomas Gunnarsson
abdb470d00 Make MessageHandler cleanup optional.
As documented in webrtc:11908 this cleanup is fairly invasive and
when a part of a frequently executed code path, can be quite costly
in terms of performance overhead. This is currently the case with
synchronous calls between threads (Thread) as well with our proxy
api classes.

With this CL, all code in WebRTC should now either be using MessageHandlerAutoCleanup
or calling MessageHandler(false) explicitly.

Next steps will be to update external code to either depend on the
AutoCleanup variant, or call MessageHandler(false).

Changing the proxy classes to use TaskQueue set of concepts instead of
MessageHandler. This avoids the perf overhead related to the cleanup
above as well as incompatibility with the thread policy checks in
Thread that some current external users of the proxies would otherwise
run into (if we were to use Thread::Send() for synchronous call).

Following this we'll move the cleanup step into the AutoCleanup class
and an RTC_DCHECK that all calls to the MessageHandler are setting
the flag to false, before eventually removing the flag and make
MessageHandler pure virtual.

Bug: webrtc:11908
Change-Id: Idf4ff9bcc8438cb8c583777e282005e0bc511c8f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183442
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32049}
2020-09-07 12:57:15 +00:00
Danil Chapovalov
090049c546 Remove usage of webrtc::RTPFragmentationHeader from objc wrappers
Bug: webrtc:6471
Change-Id: Ibe4ce280a9f1aea53016f131d1d235337fe71a4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182502
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32022}
2020-09-01 11:17:36 +00:00
Mirko Bonadei
5923083657 RTC_OBJC_TYPE RTCWrappedNativeVideo{Decoder,Encoder}.
Some versionss of WebKit.framework export these symbols. Even if they
are private symbols, WebRTC needs to provide a way to prefix them like
the OBJC API symbols (see [1]).

[1] - https://webrtc-review.googlesource.com/c/src/+/173781

Bug: None
Change-Id: Ibb9ca2c89796a0d5e2ca65c549ba8799f24bbe7c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182421
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31987}
2020-08-25 08:58:29 +00:00
Danil Chapovalov
70b2cf8b36 Delete deprecated version of EncodedImageCallback::OnEncodedImage
Bug: webrtc:6471
Change-Id: I173cd3b3b9f4badaf7c17574adf1d09a926a9b9b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182380
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31982}
2020-08-24 11:00:19 +00:00
Rohit Krishnan
f7cf133ad5 Fix h264 decoding on iOS Simulator by not using IOSurface
Bug: None
Change-Id: I8ccd7b82e3303c21221417a6673f6fbd15719428
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182340
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31981}
2020-08-24 09:05:04 +00:00
Taylor Brandstetter
ea7fbfb966 Implement network monitor for iOS.
Notably, this should detect whether an interface is "available" or not,
which should prevent the failure is with dual SIM card setups.

This is gated behind a field trial for now, to ensure this doesn't cause
any regressions due to false negatives (interfaces that are usable
but not listed as available by NWPathMonitor).

Bug: webrtc:10966
Change-Id: Ia3942c4c57b525d08d8b340e2325f3705cfd0304
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180923
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31977}
2020-08-20 21:46:18 +00:00
Harald Alvestrand
fcf5e7b131 Make Objective-C interface use SetDirectionWithError
Also moves implementation of legacy setDirection() without error to the
api/ directory.

This is one step in the plan for changing the API
to return RTCError.

Bug: chromium:980879
Change-Id: Ibce8edf8e3c6d41de7ce49d2ffc33f5b282a0e9f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181520
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31943}
2020-08-17 10:01:49 +00:00
Harald Alvestrand
6060df5948 Reland "Implement transceiver.stop()"
This is a reland of 11dc6571cb

One fix that makes Web Platform Tests pass in debug mode is applied.

Original change's description:
> Implement transceiver.stop()
>
> This adds RtpTransceiver.StopStandard(), which behaves according to
> the specification at
> https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver-stop
>
> It modifies RTCPeerConnection.getTransceivers() to return only
> transceivers that have not been stopped.
>
> Rebase of armax' https://webrtc-review.googlesource.com/c/src/+/172762
>
> Bug: chromium:980879
> Change-Id: I7d383ee874ccc0a006fdcf280496b5d4235425ce
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180580
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31893}

Bug: chromium:980879
Change-Id: Ide31d929ac5ea118d83fdf6a35a592af23f7dfa7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181263
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31907}
2020-08-11 10:46:23 +00:00
Harald Alvestrand
a88c9776de Revert "Implement transceiver.stop()"
This reverts commit 11dc6571cb.

Reason for revert: Breaks Chromium WPT tests

Original change's description:
> Implement transceiver.stop()
> 
> This adds RtpTransceiver.StopStandard(), which behaves according to
> the specification at
> https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver-stop
> 
> It modifies RTCPeerConnection.getTransceivers() to return only
> transceivers that have not been stopped.
> 
> Rebase of armax' https://webrtc-review.googlesource.com/c/src/+/172762
> 
> Bug: chromium:980879
> Change-Id: I7d383ee874ccc0a006fdcf280496b5d4235425ce
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180580
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31893}

TBR=sakal@webrtc.org,kthelgason@webrtc.org,hta@webrtc.org,guidou@webrtc.org,marinaciocea@webrtc.org

Change-Id: Ibdc24f7d41e481293ca74ba6d1572de64f7e4654
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:980879
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181262
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31897}
2020-08-10 18:06:30 +00:00
Harald Alvestrand
11dc6571cb Implement transceiver.stop()
This adds RtpTransceiver.StopStandard(), which behaves according to
the specification at
https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver-stop

It modifies RTCPeerConnection.getTransceivers() to return only
transceivers that have not been stopped.

Rebase of armax' https://webrtc-review.googlesource.com/c/src/+/172762

Bug: chromium:980879
Change-Id: I7d383ee874ccc0a006fdcf280496b5d4235425ce
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180580
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31893}
2020-08-10 13:29:15 +00:00
Taylor Brandstetter
c88fe70a8d Make Android/iOS local/remote description accessors thread safe.
Since the descriptions can be modified on the signaling thread,
ToString can only be safely called on that thread.

Bug: webrtc:11791
Change-Id: Icf6aada8aa66d00be94c6bda7b22e41b5d3bbc17
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180541
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31862}
2020-08-05 22:34:46 +00:00
Niels Möller
2b781bf908 Deprecate write-only member CodecInfo::is_hardware_accelerated
This member of the CodecInfo struct was set in several places, but not
used for anything. To aid deletion, this cl defines a default implementation
of VideoEncoderFactory::QueryVideoEncoder.

The next step is to delete almost all downstream implementations of that method,
since the only classes that have to implement it are the few factories that
produce "internal source" encoders, e.g., for Chromium remoting.

Bug: None
Change-Id: I1f0dbf0d302933004ebdc779460cb2cb3a894e02
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179520
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31844}
2020-08-04 07:56:49 +00:00
Mirko Bonadei
d74c0e600a Add presubmit test to use RTC_OBJC_TYPE on RTC_OBJC_EXPORT types.
Bug: None
Change-Id: I0962cadbcf7db920b5e400b80cfd04c937cdcedc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179524
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31755}
2020-07-17 09:57:50 +00:00
Markus Handell
3cb525b378 Rename CriticalSection to RecursiveCriticalSection.
This name change communicates that the recursive critical section
should not be used for new code.
The relevant files are renamed rtc_base/critical_section* ->
rtc_base/deprecated/recursive_critical_section*

Bug: webrtc:11567
Change-Id: I73483a1c5e59c389407a981efbfc2cfe76ccdb43
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179483
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31754}
2020-07-17 09:19:50 +00:00
Markus Handell
3d2210876e Remove unused critical section includes.
Bug: webrtc:11567
Change-Id: Ic5e43c51ce06c0619adc265d12ad4bef73a9df76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179521
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31745}
2020-07-16 13:52:28 +00:00
Niels Möller
9ad1f6feca Reland "Delete PeerConnectionInterface::BitrateParameters"
This is a reland of e2dfe74b0e
Downstream breakage has been fixed.

Original change's description:
> Delete PeerConnectionInterface::BitrateParameters
>
> Replaced by the api struct BitrateSettings, added in
> https://webrtc-review.googlesource.com/74020
>
> Bug: None
> Change-Id: I8b50b32f5c7a8918fad675904d913a21fd905274
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177665
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Taylor <deadbeef@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31714}

Tbr: kwiberg@webrtc.org
Bug: None
Change-Id: Ic039e51f9f842329525887a28d1cb9819addc74b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179282
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31728}
2020-07-15 07:35:16 +00:00
Artem Titov
f60d4c2dfe Revert "Delete PeerConnectionInterface::BitrateParameters"
This reverts commit e2dfe74b0e.

Reason for revert: Breaks downstream project

Original change's description:
> Delete PeerConnectionInterface::BitrateParameters
> 
> Replaced by the api struct BitrateSettings, added in
> https://webrtc-review.googlesource.com/74020
> 
> Bug: None
> Change-Id: I8b50b32f5c7a8918fad675904d913a21fd905274
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177665
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Taylor <deadbeef@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31714}

TBR=deadbeef@webrtc.org,ilnik@webrtc.org,kwiberg@webrtc.org,nisse@webrtc.org,kthelgason@webrtc.org

Change-Id: Ia62b3c43996e95668d7972882baf06a186a539d3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179221
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31719}
2020-07-13 15:41:39 +00:00
Niels Möller
e2dfe74b0e Delete PeerConnectionInterface::BitrateParameters
Replaced by the api struct BitrateSettings, added in
https://webrtc-review.googlesource.com/74020

Bug: None
Change-Id: I8b50b32f5c7a8918fad675904d913a21fd905274
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177665
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31714}
2020-07-13 10:06:42 +00:00
Niels Möller
938bc33092 Delete MediaTransportFactory from android and objc apis
Bug: webrtc:9719
Change-Id: Ic3e3c4c323dd4550d2f74269ef08f7035bedf0f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176855
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31510}
2020-06-12 08:16:32 +00:00
Danilo Bargen
87a6e5ab4d objc: Export RTCStatistics and RTCStatisticsReport
These two types need to be exported in order to access the stats report
from an ObjC / Swift codebase.

Bug: webrtc:11158
Change-Id: Ibb2f81f289b56f824f02df70971c28accd5a1350
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174900
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@{#31257}
2020-05-14 13:26:01 +00:00
Kári Tristan Helgason
fa95e8bc61 fix nil RTCVideoEncoderSelector case in video encoder factory.
Bug: None
Change-Id: I9ad85c7a8aee9feb24cef7e2f4d29fe8d18310e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174582
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31173}
2020-05-06 18:52:15 +00:00
Mirko Bonadei
a81e9c82fc Wrap WebRTC OBJC API types with RTC_OBJC_TYPE.
This CL introduced 2 new macros that affect the WebRTC OBJC API symbols:

- RTC_OBJC_TYPE_PREFIX:
  Macro used to prepend a prefix to the API types that are exported with
  RTC_OBJC_EXPORT.

  Clients can patch the definition of this macro locally and build
  WebRTC.framework with their own prefix in case symbol clashing is a
  problem.

  This macro must only be defined by changing the value in
  sdk/objc/base/RTCMacros.h  and not on via compiler flag to ensure
  it has a unique value.

- RCT_OBJC_TYPE:
  Macro used internally to reference API types. Declaring an API type
  without using this macro will not include the declared type in the
  set of types that will be affected by the configurable
  RTC_OBJC_TYPE_PREFIX.

Manual changes:
https://webrtc-review.googlesource.com/c/src/+/173781/5..10

The auto-generated changes in PS#5 have been done with:
https://webrtc-review.googlesource.com/c/src/+/174061.

Bug: None
Change-Id: I0d54ca94db764fb3b6cb4365873f79e14cd879b8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/173781
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31153}
2020-05-04 15:01:26 +00:00
Kári Tristan Helgason
8d8bae65e6 Migrate to modern selector syntax for ObjcVideoEncoderFactory.
Bug: None
Change-Id: I610056b881022bb9408184d1ded4d80eedc410ab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/173200
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31036}
2020-04-08 19:04:49 +00:00
Kári Tristan Helgason
2288256c9a Add ObjC Interface for VideoEncoderSelector.
Bug: webrtc:11341
Change-Id: Ia894d6269c8b2f70d8de113936ceb53107cfa923
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/172803
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31005}
2020-04-06 13:11:58 +00:00
Taylor Brandstetter
21c80320ca Expose enableDscp in Obj-C API.
network_priority was already exposed, but without the ability to set
enable_dscp, it wasn't actually doing anything.

Bug: webrtc:5658
Change-Id: I092bc3dd46e3e7be363313203428bccfccccf3c5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171641
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30951}
2020-03-31 19:58:15 +00:00
Taylor Brandstetter
f05af9e0fc Revert "Remove bitratePriority from the Obj-C RTCRtpEncodingParameters wrapper."
This reverts commit 86e0ea5711.

Reason for revert: The reasons for removing bitratePriority are unclear. Aside from the fact that you can't yet use it for the relative bitrate of simulcast streams, only the relative bitrate of entire tracks, it's working as intended. It differs from the standard, but only in that it's more flexible; the web standard only allows values of 0.5, 1.0, 2.0, and 4.0 while for the native API we allow any ratio.

Original change's description:
> Remove bitratePriority from the Obj-C RTCRtpEncodingParameters wrapper.
> 
> This was added in CL 135122, but the bitratePriority parameter is not
> standard and not implemented in a way users would expect. So it should
> actually not be exposed in the Obj-C SDK.
> 
> Bug: webrtc:10438
> Change-Id: I801ce940a32701d2703e951ef2b601c606aa2111
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/135287
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27861}

TBR=andersc@webrtc.org,kthelgason@webrtc.org

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

Bug: webrtc:10438
Change-Id: Ibc16b6054a1583de43a868d98683ea114bd89435
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171140
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30863}
2020-03-24 10:48:26 +00:00
Yura Yaroshevich
ebf739be7b Reland "Leverage dispatch_queue_create_with_target when possible."
This is a reland of de86381161

Original change's description:
> Leverage dispatch_queue_create_with_target when possible.
> 
> Replacing dispatch_queue_create followed by
> dispatch_set_target_queue with dispatch_queue_create_with_target
> is claimed to be source of GCD performance improvement:
> https://developer.apple.com/videos/play/wwdc2017/706/
> Video since 40 min. Slides since 199.
> 
> Bug: webrtc:9055
> Change-Id: I0136f7faaef0951a7ad243bc8772f3ee952d5470
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168491
> Reviewed-by: Tommi <tommi@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
> Cr-Commit-Position: refs/heads/master@{#30781}

Bug: webrtc:9055
Change-Id: I36b0b6423c81c0497f66f7c993741c33ff6ec5ba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170443
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30821}
2020-03-18 16:06:09 +00:00
Kári Tristan Helgason
ba9e1b8b75 Fix issue with decoding in certain cases.
Bug: webrtc:9378
Change-Id: Ib2d06514da08c16091c3f9c0cb613e2ca98d5f3a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170601
Reviewed-by: Mirta Dvornicic <mirtad@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30807}
2020-03-17 07:33:35 +00:00
Artem Titov
f0a34f2a30 Revert "remove mslabel and mslabel ssrc-specific attributes"
This reverts commit e3f257c4ee.

Reason for revert: Breaks downstream projects

Original change's description:
> remove mslabel and mslabel ssrc-specific attributes
> 
> Removes support for parsing and serializing
>   a=ssrc:1 mslabel:stream
>   a=ssrc:1 label:track
> which have been superceeded by
>   a=ssrc:1 msid:stream track
> a long time ago.
> 
> Bug: webrtc:7110
> Change-Id: I3aca47728098b6e7e049b82ed34c59426d411c41
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168244
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30801}

TBR=kthelgason@webrtc.org,hta@webrtc.org,philipp.hancke@googlemail.com

Change-Id: Ibd0ad11d2dee9f54bacab3dcca61dedccfc2c120
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7110
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170620
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30805}
2020-03-16 17:52:21 +00:00
Philipp Hancke
e3f257c4ee remove mslabel and mslabel ssrc-specific attributes
Removes support for parsing and serializing
  a=ssrc:1 mslabel:stream
  a=ssrc:1 label:track
which have been superceeded by
  a=ssrc:1 msid:stream track
a long time ago.

Bug: webrtc:7110
Change-Id: I3aca47728098b6e7e049b82ed34c59426d411c41
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168244
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30801}
2020-03-16 14:01:24 +00:00
Alex Loiko
fcafbfdbf0 Revert "Leverage dispatch_queue_create_with_target when possible."
This reverts commit de86381161.

Reason for revert: Fails downstream project, """fatal error: 'rtc_base/system/gcd_helpers.h' file not found"""

Original change's description:
> Leverage dispatch_queue_create_with_target when possible.
> 
> Replacing dispatch_queue_create followed by
> dispatch_set_target_queue with dispatch_queue_create_with_target
> is claimed to be source of GCD performance improvement:
> https://developer.apple.com/videos/play/wwdc2017/706/
> Video since 40 min. Slides since 199.
> 
> Bug: webrtc:9055
> Change-Id: I0136f7faaef0951a7ad243bc8772f3ee952d5470
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168491
> Reviewed-by: Tommi <tommi@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
> Cr-Commit-Position: refs/heads/master@{#30781}

TBR=tommi@webrtc.org,kthelgason@webrtc.org,yura.yaroshevich@gmail.com

Change-Id: I47fafa47afa2c825c8f100253d8a1f035203d9e8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9055
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170361
Reviewed-by: Alex Loiko <aleloi@google.com>
Commit-Queue: Alex Loiko <aleloi@google.com>
Cr-Commit-Position: refs/heads/master@{#30785}
2020-03-13 08:02:34 +00:00
Yura Yaroshevich
de86381161 Leverage dispatch_queue_create_with_target when possible.
Replacing dispatch_queue_create followed by
dispatch_set_target_queue with dispatch_queue_create_with_target
is claimed to be source of GCD performance improvement:
https://developer.apple.com/videos/play/wwdc2017/706/
Video since 40 min. Slides since 199.

Bug: webrtc:9055
Change-Id: I0136f7faaef0951a7ad243bc8772f3ee952d5470
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168491
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#30781}
2020-03-12 20:33:48 +00:00
Markus Handell
45c104b4fd RtpTransceiver: add kStopped enumeration value.
This change introduces a new kStopped enumeration value to
RtpTransceiverDirection, preparing for later CLs which
implement RTP header extension control,
https://chromestatus.com/feature/5680189201711104.

The new enumeration value is unused in the code.

Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/65YdUi02yZk

Bug: chromium:980879
Change-Id: Id8cab9891236884542689fbf1b300e64a2cb636d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170050
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30756}
2020-03-11 11:19:51 +00:00
Johannes Kron
6a29eb1c0c Update ObjC video decoder factory to use same parameters as encoder factory
Bug: chromium:1029737
Change-Id: I941bd29cb8e1dd018ee78157afe170ba78af4392
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169853
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30721}
2020-03-09 11:25:42 +00:00
Florent Castelli
b05ca4b616 Implement new specification for degradation preference
The degradation preference is now based on the content hint of the track
if it's unspecified.

Bug: webrtc:11164
Change-Id: Iaa0dbf1c1bf68a46fc5131e534d423c30c5439c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161233
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30691}
2020-03-05 14:24:25 +00:00
Taylor Brandstetter
3f1aee3cbb Change network_priority from a double to an enum.
It can only be one of four possible values, so it never made sense
for it to be a double. Other than the fact that its neighbor
bitrate_priority is a double, and they're both defined as the same enum
in the web spec. However, while bitrate_priority being a double
offers more flexibility than the web spec, network_priority being a
double is only confusing.

Bug: webrtc:5658
Change-Id: I0784c116f3260c4b3a8b99a3cd85c8d66017e46f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168840
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30685}
2020-03-05 05:42:15 +00:00
Kári Tristan Helgason
589b41e743 Change ownership of encoded data buffer in H264 encoder.
Bug: None
Change-Id: I92b5acacf6bb3a81f8d67043674ea63b4898cbd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169721
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30680}
2020-03-04 13:26:26 +00:00
Kári Tristan Helgason
ecbdbf6ee8 Reland "Update RTCEncodedImage to not use deprecated mutable_data call."
This reverts commit 966bcc4bd5.

Reason for revert: Fixing upstream issues.

Original change's description:
> Revert "Update RTCEncodedImage to not use deprecated mutable_data call."
> 
> This reverts commit 677e62785d.
> 
> Reason for revert:
> The RTC_DCHECK_EQ(self.buffer.bytes, self.encodedData->data()) line is triggering for every call
> 
> Original change's description:
> > Update RTCEncodedImage to not use deprecated mutable_data call.
> > 
> > Bug: webrtc:9378
> > Change-Id: If1e6284e2d11009097c87d15b98a2768a1d71521
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168524
> > Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
> > Reviewed-by: Niels Moller <nisse@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30518}
> 
> TBR=nisse@webrtc.org,kthelgason@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9378
> Change-Id: I91b6df1148224785c209a7306ec186a952f5e289
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168620
> Reviewed-by: Zeke Chin <tkchin@webrtc.org>
> Commit-Queue: Zeke Chin <tkchin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30527}

TBR=nisse@webrtc.org,kthelgason@webrtc.org,tkchin@webrtc.org

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

Bug: webrtc:9378
Change-Id: I1c0e61d8a390a5999f8dbbbda6f094d71f9b0678
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168740
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30588}
2020-02-24 09:46:35 +00:00
Mirko Bonadei
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
Byoungchan Lee
1282babe66 Fix tests in RTCMetalVideoView.
RTCMTLVideoViewTests is currently broken, because RTCMTLVideoView
doesn't render into an empty view.

Bug: webrtc:11322
Change-Id: I84f9216024c277ddafd4d2e6416d7e7c818aa16d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168580
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30549}
2020-02-18 20:42:10 +00:00
Zeke Chin
966bcc4bd5 Revert "Update RTCEncodedImage to not use deprecated mutable_data call."
This reverts commit 677e62785d.

Reason for revert:
The RTC_DCHECK_EQ(self.buffer.bytes, self.encodedData->data()) line is triggering for every call

Original change's description:
> Update RTCEncodedImage to not use deprecated mutable_data call.
> 
> Bug: webrtc:9378
> Change-Id: If1e6284e2d11009097c87d15b98a2768a1d71521
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168524
> Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30518}

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

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

Bug: webrtc:9378
Change-Id: I91b6df1148224785c209a7306ec186a952f5e289
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168620
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Commit-Queue: Zeke Chin <tkchin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30527}
2020-02-15 02:52:12 +00:00
Kári Tristan Helgason
677e62785d Update RTCEncodedImage to not use deprecated mutable_data call.
Bug: webrtc:9378
Change-Id: If1e6284e2d11009097c87d15b98a2768a1d71521
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168524
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30518}
2020-02-13 13:27:54 +00:00
Jonas Oreland
285f83d47b Add support for injecting VideoBitrateAllocatorFactory also on IOS
This patch exposes webrtc::PeerConnectionDependencies c++-object
and makes it possible to supply one when creating a PeerConnection.

This makes it possible to e.g inject a VideoBitrateAllocatorFactory.

Bug: webrtc:10547
Change-Id: Ib7431bdcec1380e7903dc5f66f3583501aeab0a5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168307
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30480}
2020-02-07 10:14:42 +00:00
Steve Anton
f417238217 Remove iceRegatherIntervalRange
This was an ICE configuration experiment added a couple years ago that did not end up being used.

Bug: webrtc:11316
Change-Id: Iafb7e1c4f7b4598815f045808dbf6e470172f119
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167680
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30395}
2020-01-28 19:16:18 +00:00
Joe Chen
81dcfda823 Update RTCAudioSession isInterrupted state when audio session is activated while interrupted.
This will avoid getting into an inconsistent state where isInterrupted==YES while isActive==YES.

Bug: webrtc:11112
Change-Id: Ia4db85483e1e7a339f520d52a2feb475a73c262e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/160140
Commit-Queue: Joe Chen <jsphchn@google.com>
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30306}
2020-01-17 16:12:28 +00:00
Danil Chapovalov
64f1f3f04e Replace RTC_FALLTHROUGH with ABSL_FALLTHROUGH_INTENTED
Bug: None
Change-Id: I7287403f3fb13b8e30f92ca3cf1882b03bb53a6e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/166176
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30283}
2020-01-16 15:20:35 +00:00
Yura Yaroshevich
e270ff1c41 [iOS] Reset VT session when H264 decoder malfunction error happen
Bug: webrtc:11268
Change-Id: I6932cfbe53dc7b922a90604de799f259526b4c8f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165785
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30236}
2020-01-13 14:57:36 +00:00
Sebastian Jansson
6ea2c6ae87 Cleanup: Merges Thread and MessageQueue.
Since rtc::Thread is the only class inheriting from rtc::MessageQueue
and most members of MessageQueue are public or protected the split is
not adding much value. In preparation for future cleanup, this cl merges
the two classes.

Bug: webrtc:9883
Change-Id: Ia0efb4349f66f653aa34fa4d244998f187e3ce36
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165340
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30235}
2020-01-13 13:53:20 +00:00
Mirko Bonadei
f5ecb5f22e Revert "Reland "Reland "Reland "Distinguish between send and receive video codecs""""
This reverts commit 9cad4dccc9.

Reason for revert: Breaks downstream tests.

Original change's description:
> Reland "Reland "Reland "Distinguish between send and receive video codecs"""
> 
> This is a reland of 4e64e60589
> 
> This CL lands all code except the code that activates the change,
> see media/engine/webrtc_video_engine.cc
> Once downstream projects are fixed, there will be a one-line change to
> activate the change to distinguish between send and receive video codecs.
> 
> Original change's description:
> > Reland "Reland "Distinguish between send and receive video codecs""
> >
> > This is a reland of 77eb338ae4
> >
> > Original change's description:
> > > Reland "Distinguish between send and receive video codecs"
> > >
> > > This reverts commit f2d6fe62f2.
> > >
> > > Reason for revert: Downstream test updated.
> > >
> > > Original change's description:
> > > > Revert "Reland "Distinguish between send and receive video codecs""
> > > >
> > > > This reverts commit 26e6afe93f.
> > > >
> > > > Reason for revert: Breaks another downstream test.
> > > >
> > > > Original change's description:
> > > > > Reland "Distinguish between send and receive video codecs"
> > > > >
> > > > > This reverts commit f22af3cca7.
> > > > >
> > > > > Reason for revert: Downstream tests have been updated.
> > > > >
> > > > > Original change's description:
> > > > > > Revert "Distinguish between send and receive video codecs"
> > > > > >
> > > > > > This reverts commit 18314bd8d2.
> > > > > >
> > > > > > Reason for revert: Breaks downstream test.
> > > > > >
> > > > > > Original change's description:
> > > > > > > Distinguish between send and receive video codecs
> > > > > > >
> > > > > > > Even though send and receive codecs are the same,
> > > > > > > they might have different support in HW.
> > > > > > > Distinguish between send and receive codecs to be able to keep
> > > > > > > track of which codecs have HW support.
> > > > > > >
> > > > > > > Bug: chromium:1029737
> > > > > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > > > >
> > > > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > > > >
> > > > > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > > > > No-Presubmit: true
> > > > > > No-Tree-Checks: true
> > > > > > No-Try: true
> > > > > > Bug: chromium:1029737
> > > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > > Cr-Commit-Position: refs/heads/master@{#30042}
> > > > >
> > > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > > >
> > > > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > > > >
> > > > > Bug: chromium:1029737
> > > > > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#30078}
> > > >
> > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > >
> > > > Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> > > > No-Presubmit: true
> > > > No-Tree-Checks: true
> > > > No-Try: true
> > > > Bug: chromium:1029737
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30079}
> > >
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > >
> > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > >
> > > Bug: chromium:1029737
> > > Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30097}
> >
> > Bug: chromium:1029737
> > Change-Id: I5912822df8169fbb3097c0f440f7924527fa950b
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162483
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30120}
> 
> Bug: chromium:1029737
> Change-Id: Id4f1c6f6f0cf7b96fe93dd22d14310d286af31f3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165682
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30219}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

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

Bug: chromium:1029737
Change-Id: I377f82866e56862f57383f96a3b96719344eef9e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165780
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30225}
2020-01-13 09:03:37 +00:00
Johannes Kron
9cad4dccc9 Reland "Reland "Reland "Distinguish between send and receive video codecs"""
This is a reland of 4e64e60589

This CL lands all code except the code that activates the change,
see media/engine/webrtc_video_engine.cc
Once downstream projects are fixed, there will be a one-line change to
activate the change to distinguish between send and receive video codecs.

Original change's description:
> Reland "Reland "Distinguish between send and receive video codecs""
>
> This is a reland of 77eb338ae4
>
> Original change's description:
> > Reland "Distinguish between send and receive video codecs"
> >
> > This reverts commit f2d6fe62f2.
> >
> > Reason for revert: Downstream test updated.
> >
> > Original change's description:
> > > Revert "Reland "Distinguish between send and receive video codecs""
> > >
> > > This reverts commit 26e6afe93f.
> > >
> > > Reason for revert: Breaks another downstream test.
> > >
> > > Original change's description:
> > > > Reland "Distinguish between send and receive video codecs"
> > > >
> > > > This reverts commit f22af3cca7.
> > > >
> > > > Reason for revert: Downstream tests have been updated.
> > > >
> > > > Original change's description:
> > > > > Revert "Distinguish between send and receive video codecs"
> > > > >
> > > > > This reverts commit 18314bd8d2.
> > > > >
> > > > > Reason for revert: Breaks downstream test.
> > > > >
> > > > > Original change's description:
> > > > > > Distinguish between send and receive video codecs
> > > > > >
> > > > > > Even though send and receive codecs are the same,
> > > > > > they might have different support in HW.
> > > > > > Distinguish between send and receive codecs to be able to keep
> > > > > > track of which codecs have HW support.
> > > > > >
> > > > > > Bug: chromium:1029737
> > > > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > > >
> > > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > > >
> > > > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > > > No-Presubmit: true
> > > > > No-Tree-Checks: true
> > > > > No-Try: true
> > > > > Bug: chromium:1029737
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#30042}
> > > >
> > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > >
> > > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > > >
> > > > Bug: chromium:1029737
> > > > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30078}
> > >
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > >
> > > Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: chromium:1029737
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30079}
> >
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > Bug: chromium:1029737
> > Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30097}
>
> Bug: chromium:1029737
> Change-Id: I5912822df8169fbb3097c0f440f7924527fa950b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162483
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30120}

Bug: chromium:1029737
Change-Id: Id4f1c6f6f0cf7b96fe93dd22d14310d286af31f3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165682
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30219}
2020-01-10 23:37:11 +00:00
Yura Yaroshevich
4b07059139 [iOS] Reset VT session when H264 encoder malfunction error happen
Bug: webrtc:11268
Change-Id: I764eb37a386075838e981c6d5b820e25d77f1a80
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165395
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30209}
2020-01-10 12:00:45 +00:00
Joe Chen
0b3a6e383e Make RTCAudioSession accessible to Swift.
This is done by:
1. removing the <vector> include from RTCAudioSession+Private,
2. creating a audio_session_objc package that excludes the RTCNativeAudioSessionDelegateAdapter class.

Bug: webrtc:11237
Change-Id: I36c86542a19e3244456fd164d908563b1435de29
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/163900
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Chuck Hays <haysc@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30177}
2020-01-08 09:15:25 +00:00
Mirta Dvornicic
75b58972cb Allow nil degradationPreference in RTCRtpParameters.
Bug: None
Change-Id: Ibc53d2ded5ef25460e647752d112651858228422
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/164535
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30169}
2020-01-07 15:28:23 +00:00
Mirta Dvornicic
4cdd7fb898 Add degradationPreference to RTCRtpParameters in ObjC SDK.
Bug: None
Change-Id: I64daf9ac142f960a13f9e69705ba8d3b865578e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/164527
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30164}
2020-01-07 11:42:49 +00:00
Olga Sharonova
b5159fe4a7 Revert "Reland "Reland "Distinguish between send and receive video codecs"""
This reverts commit 4e64e60589.

Reason for revert: breaks a bunch of WebRtcBrowserTests on Win: https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Win10%20Tester/4843


Original change's description:
> Reland "Reland "Distinguish between send and receive video codecs""
> 
> This is a reland of 77eb338ae4
> 
> Original change's description:
> > Reland "Distinguish between send and receive video codecs"
> >
> > This reverts commit f2d6fe62f2.
> >
> > Reason for revert: Downstream test updated.
> >
> > Original change's description:
> > > Revert "Reland "Distinguish between send and receive video codecs""
> > >
> > > This reverts commit 26e6afe93f.
> > >
> > > Reason for revert: Breaks another downstream test.
> > >
> > > Original change's description:
> > > > Reland "Distinguish between send and receive video codecs"
> > > >
> > > > This reverts commit f22af3cca7.
> > > >
> > > > Reason for revert: Downstream tests have been updated.
> > > >
> > > > Original change's description:
> > > > > Revert "Distinguish between send and receive video codecs"
> > > > >
> > > > > This reverts commit 18314bd8d2.
> > > > >
> > > > > Reason for revert: Breaks downstream test.
> > > > >
> > > > > Original change's description:
> > > > > > Distinguish between send and receive video codecs
> > > > > >
> > > > > > Even though send and receive codecs are the same,
> > > > > > they might have different support in HW.
> > > > > > Distinguish between send and receive codecs to be able to keep
> > > > > > track of which codecs have HW support.
> > > > > >
> > > > > > Bug: chromium:1029737
> > > > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > > >
> > > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > > >
> > > > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > > > No-Presubmit: true
> > > > > No-Tree-Checks: true
> > > > > No-Try: true
> > > > > Bug: chromium:1029737
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#30042}
> > > >
> > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > >
> > > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > > >
> > > > Bug: chromium:1029737
> > > > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30078}
> > >
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > >
> > > Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: chromium:1029737
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30079}
> >
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > Bug: chromium:1029737
> > Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30097}
> 
> Bug: chromium:1029737
> Change-Id: I5912822df8169fbb3097c0f440f7924527fa950b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162483
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30120}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

Change-Id: I709ee0eb6246aa79dde3aacfc4c47e070c4e90ea
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1029737
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162904
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30122}
2019-12-20 13:57:12 +00:00
Andrey Efremov
f6b875c8a7 Fixed crash on iOS13, methods beginGeneratingDeviceOrientationNotifications and endGeneratingDeviceOrientationNotifications.
1. On iOS13 the implementation of methods begin- and endGeneratingDeviceOrientationNotifications changed and now are looks like "not threadsafe" (in specific sence) - they should be called only on the main thread. This fact is not documented. And may be a mistake.

2. By the Apple official documentation methods begin- and endGeneratingDeviceOrientationNotifications should be balanced. (Each begin- method should be balanced with end- method.)

By the reason two above facts they consequences merged and produced the "floating" NSInternalInconsistencyException crash.

Bug: webrtc:11216
Change-Id: Ibedd5bba7476cc687de3b9b04be49e3cceac1d27
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162205
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30121}
2019-12-20 12:24:46 +00:00
Johannes Kron
4e64e60589 Reland "Reland "Distinguish between send and receive video codecs""
This is a reland of 77eb338ae4

Original change's description:
> Reland "Distinguish between send and receive video codecs"
>
> This reverts commit f2d6fe62f2.
>
> Reason for revert: Downstream test updated.
>
> Original change's description:
> > Revert "Reland "Distinguish between send and receive video codecs""
> >
> > This reverts commit 26e6afe93f.
> >
> > Reason for revert: Breaks another downstream test.
> >
> > Original change's description:
> > > Reland "Distinguish between send and receive video codecs"
> > >
> > > This reverts commit f22af3cca7.
> > >
> > > Reason for revert: Downstream tests have been updated.
> > >
> > > Original change's description:
> > > > Revert "Distinguish between send and receive video codecs"
> > > >
> > > > This reverts commit 18314bd8d2.
> > > >
> > > > Reason for revert: Breaks downstream test.
> > > >
> > > > Original change's description:
> > > > > Distinguish between send and receive video codecs
> > > > >
> > > > > Even though send and receive codecs are the same,
> > > > > they might have different support in HW.
> > > > > Distinguish between send and receive codecs to be able to keep
> > > > > track of which codecs have HW support.
> > > > >
> > > > > Bug: chromium:1029737
> > > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > >
> > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > >
> > > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > > No-Presubmit: true
> > > > No-Tree-Checks: true
> > > > No-Try: true
> > > > Bug: chromium:1029737
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30042}
> > >
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > >
> > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > >
> > > Bug: chromium:1029737
> > > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30078}
> >
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> >
> > Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: chromium:1029737
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30079}
>
> TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Bug: chromium:1029737
> Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
> Reviewed-by: Johannes Kron <kron@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30097}

Bug: chromium:1029737
Change-Id: I5912822df8169fbb3097c0f440f7924527fa950b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162483
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30120}
2019-12-20 11:44:42 +00:00
CZ Theng
41875aa686 add rotationOverride for RTCEAGLVideoView
Bug: webrtc:11221
Change-Id: I105b93de21fd2faeaf072c947c08006857c7a654
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162460
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30117}
2019-12-20 10:57:33 +00:00
Ilya Nikolaevskiy
f9d92ed2c8 Revert "Reland "Distinguish between send and receive video codecs""
This reverts commit 77eb338ae4.

Reason for revert: Speculative revert, as it seems to have broken webrtc-importer

Original change's description:
> Reland "Distinguish between send and receive video codecs"
> 
> This reverts commit f2d6fe62f2.
> 
> Reason for revert: Downstream test updated.
> 
> Original change's description:
> > Revert "Reland "Distinguish between send and receive video codecs""
> > 
> > This reverts commit 26e6afe93f.
> > 
> > Reason for revert: Breaks another downstream test.
> > 
> > Original change's description:
> > > Reland "Distinguish between send and receive video codecs"
> > > 
> > > This reverts commit f22af3cca7.
> > > 
> > > Reason for revert: Downstream tests have been updated.
> > > 
> > > Original change's description:
> > > > Revert "Distinguish between send and receive video codecs"
> > > > 
> > > > This reverts commit 18314bd8d2.
> > > > 
> > > > Reason for revert: Breaks downstream test.
> > > > 
> > > > Original change's description:
> > > > > Distinguish between send and receive video codecs
> > > > > 
> > > > > Even though send and receive codecs are the same,
> > > > > they might have different support in HW.
> > > > > Distinguish between send and receive codecs to be able to keep
> > > > > track of which codecs have HW support.
> > > > > 
> > > > > Bug: chromium:1029737
> > > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > > 
> > > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > > 
> > > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > > No-Presubmit: true
> > > > No-Tree-Checks: true
> > > > No-Try: true
> > > > Bug: chromium:1029737
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30042}
> > > 
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > 
> > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > > 
> > > Bug: chromium:1029737
> > > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30078}
> > 
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > 
> > Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: chromium:1029737
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30079}
> 
> TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: chromium:1029737
> Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
> Reviewed-by: Johannes Kron <kron@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30097}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

Change-Id: I73d4fe3bb18e40a01f1b1b0c71f9dc7b85c513b7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1029737
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162208
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30100}
2019-12-16 15:28:41 +00:00
Johannes Kron
77eb338ae4 Reland "Distinguish between send and receive video codecs"
This reverts commit f2d6fe62f2.

Reason for revert: Downstream test updated.

Original change's description:
> Revert "Reland "Distinguish between send and receive video codecs""
> 
> This reverts commit 26e6afe93f.
> 
> Reason for revert: Breaks another downstream test.
> 
> Original change's description:
> > Reland "Distinguish between send and receive video codecs"
> > 
> > This reverts commit f22af3cca7.
> > 
> > Reason for revert: Downstream tests have been updated.
> > 
> > Original change's description:
> > > Revert "Distinguish between send and receive video codecs"
> > > 
> > > This reverts commit 18314bd8d2.
> > > 
> > > Reason for revert: Breaks downstream test.
> > > 
> > > Original change's description:
> > > > Distinguish between send and receive video codecs
> > > > 
> > > > Even though send and receive codecs are the same,
> > > > they might have different support in HW.
> > > > Distinguish between send and receive codecs to be able to keep
> > > > track of which codecs have HW support.
> > > > 
> > > > Bug: chromium:1029737
> > > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#30041}
> > > 
> > > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > > 
> > > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: chromium:1029737
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30042}
> > 
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: chromium:1029737
> > Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30078}
> 
> TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> 
> Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:1029737
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
> Reviewed-by: Johannes Kron <kron@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30079}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

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

Bug: chromium:1029737
Change-Id: If2c3c5b5e7d86cb852a1f20f02b6ceae62b2e0c8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162186
Reviewed-by: Johannes Kron <kron@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30097}
2019-12-16 14:03:46 +00:00
Johannes Kron
f2d6fe62f2 Revert "Reland "Distinguish between send and receive video codecs""
This reverts commit 26e6afe93f.

Reason for revert: Breaks another downstream test.

Original change's description:
> Reland "Distinguish between send and receive video codecs"
> 
> This reverts commit f22af3cca7.
> 
> Reason for revert: Downstream tests have been updated.
> 
> Original change's description:
> > Revert "Distinguish between send and receive video codecs"
> > 
> > This reverts commit 18314bd8d2.
> > 
> > Reason for revert: Breaks downstream test.
> > 
> > Original change's description:
> > > Distinguish between send and receive video codecs
> > > 
> > > Even though send and receive codecs are the same,
> > > they might have different support in HW.
> > > Distinguish between send and receive codecs to be able to keep
> > > track of which codecs have HW support.
> > > 
> > > Bug: chromium:1029737
> > > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#30041}
> > 
> > TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> > 
> > Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: chromium:1029737
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> > Reviewed-by: Johannes Kron <kron@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30042}
> 
> TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: chromium:1029737
> Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
> Reviewed-by: Johannes Kron <kron@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30078}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

Change-Id: Ia4971b898c9209a3736a916a1c2c48d392dfdad6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1029737
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162140
Reviewed-by: Johannes Kron <kron@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30079}
2019-12-12 22:30:25 +00:00
Johannes Kron
26e6afe93f Reland "Distinguish between send and receive video codecs"
This reverts commit f22af3cca7.

Reason for revert: Downstream tests have been updated.

Original change's description:
> Revert "Distinguish between send and receive video codecs"
> 
> This reverts commit 18314bd8d2.
> 
> Reason for revert: Breaks downstream test.
> 
> Original change's description:
> > Distinguish between send and receive video codecs
> > 
> > Even though send and receive codecs are the same,
> > they might have different support in HW.
> > Distinguish between send and receive codecs to be able to keep
> > track of which codecs have HW support.
> > 
> > Bug: chromium:1029737
> > Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30041}
> 
> TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org
> 
> Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:1029737
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
> Reviewed-by: Johannes Kron <kron@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30042}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

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

Bug: chromium:1029737
Change-Id: Ia70b11376b43888e2495ef21838c2d2e3c68d735
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161734
Reviewed-by: Johannes Kron <kron@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30078}
2019-12-12 22:13:02 +00:00
Johannes Kron
f22af3cca7 Revert "Distinguish between send and receive video codecs"
This reverts commit 18314bd8d2.

Reason for revert: Breaks downstream test.

Original change's description:
> Distinguish between send and receive video codecs
> 
> Even though send and receive codecs are the same,
> they might have different support in HW.
> Distinguish between send and receive codecs to be able to keep
> track of which codecs have HW support.
> 
> Bug: chromium:1029737
> Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30041}

TBR=steveanton@webrtc.org,andersc@webrtc.org,kron@webrtc.org

Change-Id: I7e5807460006db613e9b3b369ec6036b88f164fd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1029737
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161662
Reviewed-by: Johannes Kron <kron@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30042}
2019-12-09 14:48:55 +00:00
Johannes Kron
18314bd8d2 Distinguish between send and receive video codecs
Even though send and receive codecs are the same,
they might have different support in HW.
Distinguish between send and receive codecs to be able to keep
track of which codecs have HW support.

Bug: chromium:1029737
Change-Id: I16a80da44c5061ca42f2aabda76e6bf0b879bf7b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161306
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30041}
2019-12-09 13:56:55 +00:00
Saurav Das
934afc6ba1 Deprecate RtpReceiver's SetParameters method
This removes the SetParameters method from AudioRtpReceiver and Video
RtpReceiver, which is currently not used and is not part of the
specifications.


Bug: webrtc:11111
Change-Id: I6f67773bfef2d4b51e9ab670bde17b5fbf5f94c3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159307
Reviewed-by: Patrik Höglund <phoglund@google.com>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Saurav Das <dinosaurav@chromium.org>
Cr-Commit-Position: refs/heads/master@{#29995}
2019-12-03 19:50:42 +00:00
Noah Richards
bb0aac27e3 Reduce verbosity of logging around playout underrun count on iOS.
This method is called on every GetStats call and fills up log output on iOS
with three log lines per cycle at INFO+ (the not-supported one is LS_ERROR):
[181:040] [82471] (audio_device_module_ios.mm:646): GetPlayoutUnderrunCount
[181:040] [82471] (audio_device_generic.cc:48): GetPlayoutUnderrunCount: Not supported on this platform
[181:040] [82471] (audio_device_module_ios.mm:649): output: -1

Alternatively, we could remove the error logging in the base class, or (better) log it once the first time it is called, but this is the simpler change.

Bug: None
Change-Id: Ibaa1d176f10cdc92f2ba1a6bf15aaa580da6edb4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159672
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29797}
2019-11-14 09:49:39 +00:00
philipel
3eb84f0bf9 Add allowCodecSwitching flag to RTCConfiguration.mm
Bug: webrtc:10795
Change-Id: I4d645b077bc459b05ef16641defdbd240dbd1550
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159481
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29753}
2019-11-11 12:54:23 +00:00
Yura Yaroshevich
de365955dc Added new Apple devices.
Added new apple devices to corresponding enumeration.
Added H264 profile level infromation.
Previous update was done as part of:
https://webrtc-review.googlesource.com/c/src/+/107625
Device machine names obtained from:
https://gist.github.com/adamawolf/3048717

Bug: None
Change-Id: I14aca9dbf495cf50835b388caf38b43145724bd4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158744
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29660}
2019-10-31 10:09:15 +00:00
CZ Theng
0ff7c02bc9 Add multipleTouchEnabled for subview of RTCMTLVideoView and RTCEAGLVideoView
Bug: webrtc:11044
Change-Id: Ice4232d54d4680b3228295ef8053e405cd0fa786
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157980
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29583}
2019-10-23 09:53:36 +00:00
Byoungchan Lee
43bd7601d7 Fix build errors of RTCAudioDeviceTests
This happend because sdk_unittests is not built on arm/arm64 iOS build.

Bug: webrtc:11022
Change-Id: I8f9adfd48e11c8512c27992804cc9b69dff15ded
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156100
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29407}
2019-10-08 15:28:33 +00:00
Cyril Lashkevich
fa77ba6af1 SetStreams API of RtpSender wrapped for iOS and Android
Bug: webrtc:10129
Change-Id: I36ea0110de655bbffa2bd18a024abd15a2136838
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/155983
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29405}
2019-10-08 13:51:19 +00:00