IVSDeviceDescriptor
Objective-C
@interface IVSDeviceDescriptor : NSObject
Swift
class IVSDeviceDescriptor : NSObject
A description of the capabilities of an AV device that is usable by the Broadcast SDK.
-
Unavailable
Do not create instances of this class directly
Declaration
Objective-C
IVS_INIT_UNAVAILABLE
-
Unavailable
Do not create instances of this class directly
Declaration
Objective-C
IVS_INIT_UNAVAILABLE
-
System deviceId. These may not be unique as the system may reuse device ids for different types.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSString *_Nonnull deviceId;
Swift
var deviceId: String { get }
-
Unique device locator. this will be unique but it may be generated internally and may not match system addresses.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSString *_Nonnull urn;
Swift
var urn: String { get }
-
A human-readable name.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSString *_Nonnull friendlyName;
Swift
var friendlyName: String { get }
-
The device type or family.
Declaration
Objective-C
@property (nonatomic, readonly) IVSDeviceType type;
Swift
var type: IVSDeviceType { get }
-
The types of streams supported by the device. The
NSNumber
values will beIVSDeviceStreamType
.Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSNumber *> *_Nonnull streams;
Swift
var streams: [NSNumber] { get }
-
The physical location of the device, if it can be determined.
Declaration
Objective-C
@property (nonatomic, readonly) IVSDevicePosition position;
Swift
var position: IVSDevicePosition { get }
-
If the device contains an image stream, the size of the images to be produced.
Declaration
Objective-C
@property (nonatomic, readonly) CGSize imageSize;
Swift
var imageSize: CGSize { get }
-
Camera rotation.
Declaration
Objective-C
@property (nonatomic, readonly) float rotation;
Swift
var rotation: Float { get }
-
Microphone sample rate.
@discussion
This will reflect the current sample rate provided by
AVAudioSession
at the time the device was queried. It is not guaranteed that this number of be accurate, as it will not react to changes made toAVAudioSession
after it was queried.Declaration
Objective-C
@property (nonatomic, readonly) NSInteger sampleRate;
Swift
var sampleRate: Int { get }
-
Microphone channel count.
Note
This will reflect the current channel count provided byAVAudioSession
at the time the device was queried. It is not guaranteed that this number of be accurate, as it will not react to changes made toAVAudioSession
after it was queried.Declaration
Objective-C
@property (nonatomic, readonly) NSInteger channelCount;
Swift
var channelCount: Int { get }
-
If this device contains an audio stream, the audio format.
Declaration
Objective-C
@property (nonatomic, readonly) IVSAudioFormat audioFormat;
Swift
var audioFormat: IVSAudioFormat { get }
-
Default device indicator.
@discussion
In the case of audio devices, this will be
YES
for the device that is the current audio input route at the time the audio devices were queried. It is possible the default device will change if you have made changes to your application’sAVAudioSession
instance. SeeIVSBroadcastSession.applicationAudioSessionStrategy
for more information.For cameras, it is possible that each position (front, back) will have a default camera, so your application should handle the scenario where this is
YES
for multiple devices.Declaration
Objective-C
@property (nonatomic, readonly) BOOL isDefault;
Swift
var isDefault: Bool { get }