Commit graph

457 commits

Author SHA1 Message Date
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