123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- #import <Foundation/Foundation.h>
- #import "RTCCertificate.h"
- #import "RTCCryptoOptions.h"
- #import "RTCMacros.h"
- @class RTC_OBJC_TYPE(RTCIceServer);
- typedef NS_ENUM(NSInteger, RTCIceTransportPolicy) {
- RTCIceTransportPolicyNone,
- RTCIceTransportPolicyRelay,
- RTCIceTransportPolicyNoHost,
- RTCIceTransportPolicyAll
- };
- typedef NS_ENUM(NSInteger, RTCBundlePolicy) {
- RTCBundlePolicyBalanced,
- RTCBundlePolicyMaxCompat,
- RTCBundlePolicyMaxBundle
- };
- typedef NS_ENUM(NSInteger, RTCRtcpMuxPolicy) { RTCRtcpMuxPolicyNegotiate, RTCRtcpMuxPolicyRequire };
- typedef NS_ENUM(NSInteger, RTCTcpCandidatePolicy) {
- RTCTcpCandidatePolicyEnabled,
- RTCTcpCandidatePolicyDisabled
- };
- typedef NS_ENUM(NSInteger, RTCCandidateNetworkPolicy) {
- RTCCandidateNetworkPolicyAll,
- RTCCandidateNetworkPolicyLowCost
- };
- typedef NS_ENUM(NSInteger, RTCContinualGatheringPolicy) {
- RTCContinualGatheringPolicyGatherOnce,
- RTCContinualGatheringPolicyGatherContinually
- };
- typedef NS_ENUM(NSInteger, RTCEncryptionKeyType) {
- RTCEncryptionKeyTypeRSA,
- RTCEncryptionKeyTypeECDSA,
- };
- typedef NS_ENUM(NSInteger, RTCSdpSemantics) {
- RTCSdpSemanticsPlanB,
- RTCSdpSemanticsUnifiedPlan,
- };
- NS_ASSUME_NONNULL_BEGIN
- RTC_OBJC_EXPORT
- @interface RTC_OBJC_TYPE (RTCConfiguration) : NSObject
- @property(nonatomic, assign) BOOL enableDscp;
- @property(nonatomic, copy) NSArray<RTC_OBJC_TYPE(RTCIceServer) *> *iceServers;
- @property(nonatomic, nullable) RTC_OBJC_TYPE(RTCCertificate) * certificate;
- @property(nonatomic, assign) RTCIceTransportPolicy iceTransportPolicy;
- @property(nonatomic, assign) RTCBundlePolicy bundlePolicy;
- @property(nonatomic, assign) RTCRtcpMuxPolicy rtcpMuxPolicy;
- @property(nonatomic, assign) RTCTcpCandidatePolicy tcpCandidatePolicy;
- @property(nonatomic, assign) RTCCandidateNetworkPolicy candidateNetworkPolicy;
- @property(nonatomic, assign) RTCContinualGatheringPolicy continualGatheringPolicy;
- @property(nonatomic, assign) BOOL disableIPV6;
- @property(nonatomic, assign) BOOL disableIPV6OnWiFi;
- @property(nonatomic, assign) int maxIPv6Networks;
- @property(nonatomic, assign) BOOL disableLinkLocalNetworks;
- @property(nonatomic, assign) int audioJitterBufferMaxPackets;
- @property(nonatomic, assign) BOOL audioJitterBufferFastAccelerate;
- @property(nonatomic, assign) int iceConnectionReceivingTimeout;
- @property(nonatomic, assign) int iceBackupCandidatePairPingInterval;
- @property(nonatomic, assign) RTCEncryptionKeyType keyType;
- @property(nonatomic, assign) int iceCandidatePoolSize;
- @property(nonatomic, assign) BOOL shouldPruneTurnPorts;
- @property(nonatomic, assign) BOOL shouldPresumeWritableWhenFullyRelayed;
- @property(nonatomic, assign) BOOL shouldSurfaceIceCandidatesOnIceTransportTypeChanged;
- @property(nonatomic, copy, nullable) NSNumber *iceCheckMinInterval;
- @property(nonatomic, assign) RTCSdpSemantics sdpSemantics;
- @property(nonatomic, assign) BOOL activeResetSrtpParams;
- @property(nonatomic, assign) BOOL allowCodecSwitching;
- @property(nonatomic, nullable) RTC_OBJC_TYPE(RTCCryptoOptions) * cryptoOptions;
- @property(nonatomic, assign) int rtcpAudioReportIntervalMs;
- @property(nonatomic, assign) int rtcpVideoReportIntervalMs;
- - (instancetype)init;
- @end
- NS_ASSUME_NONNULL_END
|