4 #import <AVFoundation/AVFoundation.h> 5 #import <CoreGraphics/CoreGraphics.h> 6 #import <Foundation/Foundation.h> 7 #import <WebRTC/RTCMacros.h> 8 NS_ASSUME_NONNULL_BEGIN
9 typedef NS_ENUM(NSInteger, OWTAudioCodec) {
10 OWTAudioCodecPcmu = 1,
11 OWTAudioCodecPcma = 2,
12 OWTAudioCodecOpus = 3,
13 OWTAudioCodecG722 = 4,
14 OWTAudioCodecIsac = 5,
15 OWTAudioCodecIlbc = 6,
18 OWTAudioCodecAsao = 9,
19 OWTAudioCodecUnknown = 10,
21 typedef NS_ENUM(NSInteger, OWTVideoCodec) {
24 OWTVideoCodecH264 = 3,
25 OWTVideoCodecH265 = 4,
26 OWTVideoCodecUnknown = 5,
28 typedef NS_ENUM(NSInteger, OWTAudioSourceInfo) {
29 OWTAudioSourceInfoMic = 1,
30 OWTAudioSourceInfoScreenCast = 2,
31 OWTAudioSourceInfoFile = 3,
32 OWTAudioSourceInfoMixed = 4,
33 OWTAudioSourceInfoUnknown = 5,
35 typedef NS_ENUM(NSInteger, OWTVideoSourceInfo) {
36 OWTVideoSourceInfoCamera = 1,
37 OWTVideoSourceInfoScreenCast = 2,
38 OWTVideoSourceInfoFile = 3,
39 OWTVideoSourceInfoMixed = 4,
40 OWTVideoSourceInfoUnknown = 5,
42 typedef NS_OPTIONS(NSInteger, OWTTrackKind) {
43 OWTTrackKindUnknown = 0,
44 OWTTrackKindAudio = 1 << 0,
45 OWTTrackKindVideo = 1 << 1,
54 @property(nonatomic, assign) OWTAudioCodec
name;
67 @property(nonatomic, assign) OWTVideoCodec
name;
72 @property(nonatomic, strong) NSString* profile;
83 @property(nonatomic, assign) CGSize resolution;
84 @property(nonatomic, assign) CGFloat frameRate;
85 @property(nonatomic, assign) NSUInteger bitrate;
86 @property(nonatomic, assign) NSUInteger keyframeInterval;
87 @property(nonatomic, strong) NSString* rid;
92 @property(nonatomic, strong) NSArray<OWTAudioPublicationSettings*>* audio;
93 @property(nonatomic, strong) NSArray<OWTVideoPublicationSettings*>* video;
98 @property(nonatomic, strong) NSArray<OWTAudioCodecParameters*>* codecs;
103 @property(nonatomic, strong) NSArray<OWTVideoCodecParameters*>* codecs;
104 @property(nonatomic, strong) NSArray<NSValue*>* resolutions;
105 @property(nonatomic, strong) NSArray<NSNumber*>* frameRates;
106 @property(nonatomic, strong) NSArray<NSNumber*>* bitrateMultipliers;
107 @property(nonatomic, strong) NSArray<NSNumber*>* keyframeIntervals;
118 @property(nonatomic, assign) OWTAudioSourceInfo audio;
119 @property(nonatomic, assign) OWTVideoSourceInfo video;
124 @property(nonatomic, assign)
double frameRate;
125 @property(nonatomic, assign) CGSize resolution;
126 @property(nonatomic, assign) AVCaptureDevicePosition devicePosition;
136 @property(nonatomic, assign) BOOL audio;
145 @property(nonatomic, assign) NSUInteger maxBitrate;
152 @property(nonatomic, assign) NSUInteger maxBitrate;
154 NS_ASSUME_NONNULL_END
The settings of a publication.
Definition: OWTMediaFormat.h:91
OWTAudioCodec name
Name of a codec.
Definition: OWTMediaFormat.h:54
NSUInteger channelCount
Numbers of channels for an audio track.
Definition: OWTMediaFormat.h:56
NSUInteger clockRate
The codec clock rate expressed in Hertz.
Definition: OWTMediaFormat.h:58
Encoding parameters for sending an audio track.
Definition: OWTMediaFormat.h:142
Codec parameters for an audio track.
Definition: OWTMediaFormat.h:49
Codec parameters for a video track.
Definition: OWTMediaFormat.h:62
Represents the capability for subscription.
Definition: OWTMediaFormat.h:111
Encoding parameters for sending a video track.
Definition: OWTMediaFormat.h:149
The audio settings of a publication.
Definition: OWTMediaFormat.h:76
Constraints for creating a video MediaStreamTrack.
Definition: OWTMediaFormat.h:123
Information of a stream's source.
Definition: OWTMediaFormat.h:117
The video settings of a publication.
Definition: OWTMediaFormat.h:81
Represents the audio capability for subscription.
Definition: OWTMediaFormat.h:97
Represents the video capability for subscription.
Definition: OWTMediaFormat.h:102
Constraints for creating a MediaStream from screen mic and camera.
Definition: OWTMediaFormat.h:130