FMLiveSwitchSdpMediaDescription Class Reference

An SDP media description element. More...

Instance Methods

(void) - addBandwidth:
 Adds a proposed bandwidth. More...
 
(void) - addMediaAttribute:
 Adds a media-level attribute. More...
 
(NSMutableArray *) - bandwidths
 Gets the array of proposed bandwidths to be used by the media. More...
 
(bool) - bundleOnly
 Gets a value indicating whether this media description has been marked as bundle-only. More...
 
(FMLiveSwitchSdpConnectionData *) - connectionData
 Gets media-level connection data. More...
 
(NSMutableArray *) - cryptoAttributes
 Gets CryptoAttributes associated with this MediaDescription. More...
 
(NSString *) - description
 Converts this instance to a string. More...
 
(FMLiveSwitchSdpEncryptionKey *) - encryptionKey
 Gets the media-level encryption key. More...
 
(FMLiveSwitchSdpIceFingerprintAttribute *) - fingerprintAttribute
 Gets the Fingerprint Attribute from this MediaDescription. More...
 
(NSMutableArray *) - getCandidateAttributes
 Obtains Ice Candidate attributes associated with this media description. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getCcmFirFeedbackAttributeWithPayloadType:
 Gets the RTCP "ccm fir" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getCcmLrrFeedbackAttributeWithPayloadType:
 Gets the RTCP "ccm lrr" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpContentAttribute *) - getContentAttribute
 Obtains the content attribute. More...
 
(FMLiveSwitchSdpFormatParametersAttribute *) - getFormatParametersAttributeWithPayloadType:
 Gets the format parameters attribute for the given payload type. More...
 
(NSString *) - getFormatParameterValueWithPayloadType:formatParameterName:
 Sets a format parameter value. More...
 
(NSMutableArray *) - getIceOptionAttributes
 Obtains Ice Options attributes associated with this media description. More...
 
(FMLiveSwitchSdpMaxPacketTimeAttribute *) - getMaxPacketTimeAttribute
 Obtains the maximum packet time attribute. More...
 
(FMLiveSwitchSdpMediaStreamIdAttribute *) - getMediaStreamIdentifierAttribute
 Obtains the media stream identifier attribute. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getNackFeedbackAttributeWithPayloadType:
 Gets the RTCP "nack" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getNackPliFeedbackAttributeWithPayloadType:
 Gets the RTCP "nack pli" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getNackRpsiFeedbackAttributeWithPayloadType:
 Gets the RTCP "nack rpsi" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getNackSliFeedbackAttributeWithPayloadType:
 Gets the RTCP "nack sli" feedback attribute for the given payload type. More...
 
(FMLiveSwitchSdpPacketTimeAttribute *) - getPacketTimeAttribute
 Obtains the packet time attribute. More...
 
(NSMutableArray *) - getPreferredRtpMapAttributes
 Obtains the RTP map attributes in preference order. More...
 
(NSMutableArray *) - getRidAttributes
 Obtains the RID attributes. More...
 
(NSMutableArray *) - getRidAttributesWithDirection:
 Obtains the RID attributes. More...
 
(FMLiveSwitchSdpRtpRidAttribute *) - getRidAttributeWithRid:
 Obtains an RID attribute by its RID. More...
 
(FMLiveSwitchSdpRtcpFeedbackAttribute *) - getRtcpFeedbackAttributeWithPayloadType:type:subType:
 Gets the RTCP feedback attribute for the given payload type. More...
 
(NSMutableArray *) - getRtpExtMapAttributes
 Obtains the RTP ext-map attributes. More...
 
(NSMutableArray *) - getRtpMapAttributes
 Obtains the RTP map attributes. More...
 
(NSMutableArray *) - getRtpMapAttributesWithFormatName:clockRate:formatParameters:
 Obtains the RTP map attributes for a given format. More...
 
(NSMutableArray *) - getRtpMapAttributesWithFormatName:clockRate:formatParameters:rtpMapAttributeIndices:
 Obtains the RTP map attributes for a given format. More...
 
(FMLiveSwitchSdpRtpMapAttribute *) - getRtpMapAttributeWithFormatName:clockRate:
 Obtains the RTP map attribute for a given format. More...
 
(FMLiveSwitchSdpRtpMapAttribute *) - getRtpMapAttributeWithFormatName:clockRate:formatParameters:
 Obtains the RTP map attribute for a given format. More...
 
(FMLiveSwitchSdpRtpMapAttribute *) - getRtpMapAttributeWithFormatName:clockRate:formatParameters:rtpMapAttributeIndex:
 Obtains the RTP map attribute for a given format. More...
 
(FMLiveSwitchSdpRtpMapAttribute *) - getRtpMapAttributeWithPayloadType:
 Obtains the RTP map attribute for a given payload type. More...
 
(FMLiveSwitchSdpRtpMapAttribute *) - getRtpMapAttributeWithPayloadType:rtpMapAttributeIndex:
 Obtains the RTP map attribute for a given payload type. More...
 
(FMLiveSwitchSdpRtpSimulcastAttribute *) - getSimulcastAttribute
 Obtains the simulcast attribute. More...
 
(NSMutableArray *) - getSsrcAttributes
 Obtains the SSRC attributes. More...
 
(NSMutableArray *) - getSsrcAttributesWithName:
 Obtains the SSRC attributes. More...
 
(NSMutableArray *) - getSsrcAttributesWithSsrc:
 Obtains the SSRC attributes matching a given synchronization source. More...
 
(NSMutableArray *) - getSsrcAttributesWithSsrc:name:
 Obtains the SSRC attributes matching a given synchronization source and name. More...
 
(FMLiveSwitchSdpRtpSsrcAttribute *) - getSsrcAttributeWithSsrc:name:
 Obtains the first SSRC attribute matching a given synchronization source and name. More...
 
(FMLiveSwitchSdpRtpSsrcAttribute *) - getSsrcAttributeWithSsrc:name:value:
 Obtains the SSRC attribute matching a given synchronization source, name, and value. More...
 
(NSMutableArray *) - getSsrcGroupAttributes
 Obtains the SSRC Group attributes. More...
 
(NSMutableArray *) - getSsrcGroupSsrcsWithSemantics:
 Obtains the SSRCS from the first SSRC Group with matching semantics. More...
 
(FMLiveSwitchSdpIcePasswordAttribute *) - icePasswordAttribute
 Gets the IcePasswordAttribute associated with this MediaDescription. More...
 
(FMLiveSwitchSdpIceUfragAttribute *) - iceUfragAttribute
 Gets the IceUfragAttribute associated with this MediaDescription. More...
 
(NSMutableArray *) - identicalCategoryAttributes
 Gets the attributes with Identical Multiplexing Category present in this description. More...
 
(instancetype) - initWithMedia:
 Initializes a new instance of the FMLiveSwitchSdpMediaDescription class. More...
 
(void) - insertMediaAttribute:index:
 DEPRECATED: Use AddMediaAttribute instead. More...
 
(bool) - isApplication
 Gets whether this media description represents an application stream (media type == "application"). More...
 
(bool) - isAudio
 Gets whether this media description represents an audio stream (media type == "audio"). More...
 
(bool) - isMessage
 Gets whether this media description represents a message stream (media type == "message"). More...
 
(bool) - isMuted
 Gets a value indicating whether this stream is muted. More...
 
(bool) - isText
 Gets whether this media description represents a text stream (media type == "text"). More...
 
(bool) - isVideo
 Gets whether this media description represents a video stream (media type == "video"). More...
 
(FMLiveSwitchSdpMedia *) - media
 Gets the media name and transport address. More...
 
(NSMutableArray *) - mediaAttributes
 Gets the array of media-level attributes. More...
 
(NSString *) - mediaTitle
 Gets the media title. More...
 
(bool) - orderFormatsWithNames:
 Orders the formats in preference order. More...
 
(bool) - purgeFormatWithName:
 Removes a format by name. More...
 
(bool) - purgeFormatWithName:clockRate:
 Removes a format by name and clock rate. More...
 
(bool) - purgeFormatWithName:clockRate:channelCount:
 Removes a format by name, clock rate, and channel count. More...
 
(FMLiveSwitchSdpQualityAttribute *) - qualityAttribute
 Gets the QualityAttribute associated with this MediaDescription. More...
 
(bool) - removeBandwidth:
 Removes a proposed bandwidth. More...
 
(void) - removeBundleCategoryAttributes
 Removes Bundle (i.e. More...
 
(bool) - removeMediaAttribute:
 Removes a media-level attribute. More...
 
(FMLiveSwitchSdpRtcpAttribute *) - rtcpAttribute
 Gets Rtcp Attributes associated with this media description. More...
 
(bool) - rtcpMultiplexingSupported
 Gets a value indicating support for RTCP Multiplexing. More...
 
(FMLiveSwitchSdpSctpMapAttribute *) - sctpMapAttribute
 Gets the Sctp Map Attribute, if it is present in the Media Description. More...
 
(FMLiveSwitchSdpSctpMaxMessageSizeAttribute *) - sctpMaxMessageSizeAttribute
 Gets the Sctp Max Message Size Attribute, if it is present in the Media Description. More...
 
(FMLiveSwitchSdpSctpPortAttribute *) - sctpPortAttribute
 Gets the Sctp Port Attribute, if it is present in the Media Description. More...
 
(void) - setConnectionData:
 Sets media-level connection data. More...
 
(void) - setEncryptionKey:
 Sets the media-level encryption key. More...
 
(bool) - setFormatParameterValueWithPayloadType:formatParameterName:formatParameterValue:
 Sets a format parameter value. More...
 
(void) - setIsMuted:
 Sets a value indicating whether this stream is muted. More...
 
(void) - setMediaTitle:
 Sets the media title. More...
 
(void) - setQualityAttribute:
 Sets the QualityAttribute associated with this MediaDescription. More...
 
(void) - setRtcpAttribute:
 Sets Rtcp Attributes associated with this media description. More...
 
(void) - setRtcpMultiplexingSupported:
 Sets a value indicating support for RTCP Multiplexing. More...
 
(void) - setSetupAttribute:
 Sets the SetupAttribute associated with this MediaDescription. More...
 
(void) - setStreamDirection:
 Sets the stream direction indicated in Media Description. More...
 
(FMLiveSwitchSdpSetupAttribute *) - setupAttribute
 Gets the SetupAttribute associated with this MediaDescription. More...
 
(FMLiveSwitchStreamDirection) - streamDirection
 Gets the stream direction indicated in Media Description. More...
 
(bool) - supportsIce
 Gets a value indicating whether this SDP MediaDescription suggests support for ICE. More...
 
(NSMutableArray *) - transportCategoryAttributes
 Gets the attributes with Transport Multiplexing Category present in this description. More...
 
(bool) - tryAddContentAttribute:
 Adds a content attribute if not already present. More...
 
(void) - updateQualityAttributeValueWithQuality:
 Updates SDP Quality Attribute associated with this media description if one is present. More...
 

Class Methods

(FMLiveSwitchSdpMediaDescription *) + mediaDescriptionWithMedia:
 Initializes a new instance of the FMLiveSwitchSdpMediaDescription class. More...
 
(FMLiveSwitchSdpMediaDescription *) + parseWithS:
 Creates an FMLiveSwitchSdpMediaDescription instance from a string. More...
 

Detailed Description

An SDP media description element.

Method Documentation

◆ addBandwidth:

- (void) addBandwidth: (FMLiveSwitchSdpBandwidth *)  bandwidth

Adds a proposed bandwidth.

Parameters
bandwidthThe proposed bandwidth to add.

◆ addMediaAttribute:

- (void) addMediaAttribute: (FMLiveSwitchSdpAttribute *)  attribute

Adds a media-level attribute.

Parameters
attributeThe session-level attribute to add.

◆ bandwidths

- (NSMutableArray*) bandwidths

Gets the array of proposed bandwidths to be used by the media.

◆ bundleOnly

- (bool) bundleOnly

Gets a value indicating whether this media description has been marked as bundle-only.

◆ connectionData

- (FMLiveSwitchSdpConnectionData*) connectionData

Gets media-level connection data.

◆ cryptoAttributes

- (NSMutableArray*) cryptoAttributes

Gets CryptoAttributes associated with this MediaDescription.

◆ description

- (NSString*) description

Converts this instance to a string.

◆ encryptionKey

- (FMLiveSwitchSdpEncryptionKey*) encryptionKey

Gets the media-level encryption key.

◆ fingerprintAttribute

- (FMLiveSwitchSdpIceFingerprintAttribute*) fingerprintAttribute

Gets the Fingerprint Attribute from this MediaDescription.

◆ getCandidateAttributes

- (NSMutableArray*) getCandidateAttributes

Obtains Ice Candidate attributes associated with this media description.

◆ getCcmFirFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getCcmFirFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "ccm fir" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getCcmLrrFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getCcmLrrFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "ccm lrr" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getContentAttribute

- (FMLiveSwitchSdpContentAttribute*) getContentAttribute

Obtains the content attribute.

◆ getFormatParametersAttributeWithPayloadType:

- (FMLiveSwitchSdpFormatParametersAttribute*) getFormatParametersAttributeWithPayloadType: (int)  payloadType

Gets the format parameters attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getFormatParameterValueWithPayloadType:formatParameterName:

- (NSString*) getFormatParameterValueWithPayloadType: (int)  payloadType
formatParameterName: (NSString *)  formatParameterName 

Sets a format parameter value.

◆ getIceOptionAttributes

- (NSMutableArray*) getIceOptionAttributes

Obtains Ice Options attributes associated with this media description.

◆ getMaxPacketTimeAttribute

- (FMLiveSwitchSdpMaxPacketTimeAttribute*) getMaxPacketTimeAttribute

Obtains the maximum packet time attribute.

◆ getMediaStreamIdentifierAttribute

- (FMLiveSwitchSdpMediaStreamIdAttribute*) getMediaStreamIdentifierAttribute

Obtains the media stream identifier attribute.

◆ getNackFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getNackFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "nack" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getNackPliFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getNackPliFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "nack pli" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getNackRpsiFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getNackRpsiFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "nack rpsi" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getNackSliFeedbackAttributeWithPayloadType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getNackSliFeedbackAttributeWithPayloadType: (int)  payloadType

Gets the RTCP "nack sli" feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.

◆ getPacketTimeAttribute

- (FMLiveSwitchSdpPacketTimeAttribute*) getPacketTimeAttribute

Obtains the packet time attribute.

◆ getPreferredRtpMapAttributes

- (NSMutableArray*) getPreferredRtpMapAttributes

Obtains the RTP map attributes in preference order.

◆ getRidAttributes

- (NSMutableArray*) getRidAttributes

Obtains the RID attributes.

◆ getRidAttributesWithDirection:

- (NSMutableArray*) getRidAttributesWithDirection: (NSString *)  direction

Obtains the RID attributes.

Parameters
directionThe RID attribute direction.

◆ getRidAttributeWithRid:

- (FMLiveSwitchSdpRtpRidAttribute*) getRidAttributeWithRid: (NSString *)  rid

Obtains an RID attribute by its RID.

◆ getRtcpFeedbackAttributeWithPayloadType:type:subType:

- (FMLiveSwitchSdpRtcpFeedbackAttribute*) getRtcpFeedbackAttributeWithPayloadType: (int)  payloadType
type: (NSString *)  type
subType: (NSString *)  subType 

Gets the RTCP feedback attribute for the given payload type.

Parameters
payloadTypeThe payload type.
typeThe type.
subTypeThe sub-type.

◆ getRtpExtMapAttributes

- (NSMutableArray*) getRtpExtMapAttributes

Obtains the RTP ext-map attributes.

◆ getRtpMapAttributes

- (NSMutableArray*) getRtpMapAttributes

Obtains the RTP map attributes.

◆ getRtpMapAttributesWithFormatName:clockRate:formatParameters:

- (NSMutableArray*) getRtpMapAttributesWithFormatName: (NSString *)  formatName
clockRate: (int)  clockRate
formatParameters: (NSString *)  formatParameters 

Obtains the RTP map attributes for a given format.

Parameters
formatNameFormat name.
clockRateClock rate.
formatParametersFormat parameters.

◆ getRtpMapAttributesWithFormatName:clockRate:formatParameters:rtpMapAttributeIndices:

- (NSMutableArray*) getRtpMapAttributesWithFormatName: (NSString *)  formatName
clockRate: (int)  clockRate
formatParameters: (NSString *)  formatParameters
rtpMapAttributeIndices: (NSMutableArray **)  rtpMapAttributeIndices 

Obtains the RTP map attributes for a given format.

Parameters
formatNameFormat name.
clockRateClock rate.
formatParametersFormat parameters.
rtpMapAttributeIndicesThe indeces of the FMLiveSwitchSdpRtpMapAttribute.

◆ getRtpMapAttributeWithFormatName:clockRate:

- (FMLiveSwitchSdpRtpMapAttribute*) getRtpMapAttributeWithFormatName: (NSString *)  formatName
clockRate: (int)  clockRate 

Obtains the RTP map attribute for a given format.

Parameters
formatNameFormat name.
clockRateClock rate.

◆ getRtpMapAttributeWithFormatName:clockRate:formatParameters:

- (FMLiveSwitchSdpRtpMapAttribute*) getRtpMapAttributeWithFormatName: (NSString *)  formatName
clockRate: (int)  clockRate
formatParameters: (NSString *)  formatParameters 

Obtains the RTP map attribute for a given format.

Parameters
formatNameFormat name.
clockRateClock rate.
formatParametersFormat parameters.

◆ getRtpMapAttributeWithFormatName:clockRate:formatParameters:rtpMapAttributeIndex:

- (FMLiveSwitchSdpRtpMapAttribute*) getRtpMapAttributeWithFormatName: (NSString *)  formatName
clockRate: (int)  clockRate
formatParameters: (NSString *)  formatParameters
rtpMapAttributeIndex: (int *)  rtpMapAttributeIndex 

Obtains the RTP map attribute for a given format.

Parameters
formatNameFormat name.
clockRateClock rate.
formatParametersFormat parameters.
rtpMapAttributeIndexThe index of the FMLiveSwitchSdpRtpMapAttribute.

◆ getRtpMapAttributeWithPayloadType:

- (FMLiveSwitchSdpRtpMapAttribute*) getRtpMapAttributeWithPayloadType: (int)  payloadType

Obtains the RTP map attribute for a given payload type.

Parameters
payloadTypeThe payload type.

◆ getRtpMapAttributeWithPayloadType:rtpMapAttributeIndex:

- (FMLiveSwitchSdpRtpMapAttribute*) getRtpMapAttributeWithPayloadType: (int)  payloadType
rtpMapAttributeIndex: (int *)  rtpMapAttributeIndex 

Obtains the RTP map attribute for a given payload type.

Parameters
payloadTypeThe payload type.
rtpMapAttributeIndexThe index of the FMLiveSwitchSdpRtpMapAttribute.

◆ getSimulcastAttribute

- (FMLiveSwitchSdpRtpSimulcastAttribute*) getSimulcastAttribute

Obtains the simulcast attribute.

◆ getSsrcAttributes

- (NSMutableArray*) getSsrcAttributes

Obtains the SSRC attributes.

◆ getSsrcAttributesWithName:

- (NSMutableArray*) getSsrcAttributesWithName: (NSString *)  name

Obtains the SSRC attributes.

Parameters
nameThe SSRC attribute name.

◆ getSsrcAttributesWithSsrc:

- (NSMutableArray*) getSsrcAttributesWithSsrc: (long long)  ssrc

Obtains the SSRC attributes matching a given synchronization source.

Parameters
ssrcThe synchronization source.

◆ getSsrcAttributesWithSsrc:name:

- (NSMutableArray*) getSsrcAttributesWithSsrc: (long long)  ssrc
name: (NSString *)  name 

Obtains the SSRC attributes matching a given synchronization source and name.

Parameters
ssrcThe synchronization source.
nameThe attribute name.

◆ getSsrcAttributeWithSsrc:name:

- (FMLiveSwitchSdpRtpSsrcAttribute*) getSsrcAttributeWithSsrc: (long long)  ssrc
name: (NSString *)  name 

Obtains the first SSRC attribute matching a given synchronization source and name.

Parameters
ssrcThe synchronization source.
nameThe attribute name.

◆ getSsrcAttributeWithSsrc:name:value:

- (FMLiveSwitchSdpRtpSsrcAttribute*) getSsrcAttributeWithSsrc: (long long)  ssrc
name: (NSString *)  name
value: (NSString *)  value 

Obtains the SSRC attribute matching a given synchronization source, name, and value.

Parameters
ssrcThe synchronization source.
nameThe attribute name.
valueThe attribute value.

◆ getSsrcGroupAttributes

- (NSMutableArray*) getSsrcGroupAttributes

Obtains the SSRC Group attributes.

◆ getSsrcGroupSsrcsWithSemantics:

- (NSMutableArray*) getSsrcGroupSsrcsWithSemantics: (NSString *)  semantics

Obtains the SSRCS from the first SSRC Group with matching semantics.

◆ icePasswordAttribute

- (FMLiveSwitchSdpIcePasswordAttribute*) icePasswordAttribute

Gets the IcePasswordAttribute associated with this MediaDescription.

◆ iceUfragAttribute

- (FMLiveSwitchSdpIceUfragAttribute*) iceUfragAttribute

Gets the IceUfragAttribute associated with this MediaDescription.

◆ identicalCategoryAttributes

- (NSMutableArray*) identicalCategoryAttributes

Gets the attributes with Identical Multiplexing Category present in this description.

Returns
Attributes with Identical Multiplexing Category present in this description.

◆ initWithMedia:

- (instancetype) initWithMedia: (FMLiveSwitchSdpMedia *)  media

Initializes a new instance of the FMLiveSwitchSdpMediaDescription class.

Parameters
mediaThe media name and transport address.

◆ insertMediaAttribute:index:

- (void) insertMediaAttribute: (FMLiveSwitchSdpAttribute *)  attribute
index: (int)  index 

DEPRECATED: Use AddMediaAttribute instead.

Inserts a media-level attribute at the given index.

Parameters
attributeThe session-level attribute to add.
indexThe index.

◆ isApplication

- (bool) isApplication

Gets whether this media description represents an application stream (media type == "application").

◆ isAudio

- (bool) isAudio

Gets whether this media description represents an audio stream (media type == "audio").

◆ isMessage

- (bool) isMessage

Gets whether this media description represents a message stream (media type == "message").

◆ isMuted

- (bool) isMuted

Gets a value indicating whether this stream is muted.

Applies to only media streams.

◆ isText

- (bool) isText

Gets whether this media description represents a text stream (media type == "text").

◆ isVideo

- (bool) isVideo

Gets whether this media description represents a video stream (media type == "video").

◆ media

Gets the media name and transport address.

◆ mediaAttributes

- (NSMutableArray*) mediaAttributes

Gets the array of media-level attributes.

◆ mediaDescriptionWithMedia:

+ (FMLiveSwitchSdpMediaDescription*) mediaDescriptionWithMedia: (FMLiveSwitchSdpMedia *)  media

Initializes a new instance of the FMLiveSwitchSdpMediaDescription class.

Parameters
mediaThe media name and transport address.

◆ mediaTitle

- (NSString*) mediaTitle

Gets the media title.

◆ orderFormatsWithNames:

- (bool) orderFormatsWithNames: (NSMutableArray *)  names

Orders the formats in preference order.

Parameters
namesThe format names.
Returns
false if a media element does not exist; otherwise true.

◆ parseWithS:

+ (FMLiveSwitchSdpMediaDescription*) parseWithS: (NSString *)  s

Creates an FMLiveSwitchSdpMediaDescription instance from a string.

Parameters
sThe string to parse.

◆ purgeFormatWithName:

- (bool) purgeFormatWithName: (NSString *)  name

Removes a format by name.

Parameters
nameThe format name.
Returns
true if the format was found and removed; otherwise, false

◆ purgeFormatWithName:clockRate:

- (bool) purgeFormatWithName: (NSString *)  name
clockRate: (int)  clockRate 

Removes a format by name and clock rate.

Parameters
nameThe format name.
clockRateThe clock rate.
Returns
true if the format was found and removed; otherwise, false

◆ purgeFormatWithName:clockRate:channelCount:

- (bool) purgeFormatWithName: (NSString *)  name
clockRate: (int)  clockRate
channelCount: (int)  channelCount 

Removes a format by name, clock rate, and channel count.

Parameters
nameThe format name.
clockRateThe clock rate.
channelCountThe channel count.
Returns
true if the format was found and removed; otherwise, false

◆ qualityAttribute

- (FMLiveSwitchSdpQualityAttribute*) qualityAttribute

Gets the QualityAttribute associated with this MediaDescription.

◆ removeBandwidth:

- (bool) removeBandwidth: (FMLiveSwitchSdpBandwidth *)  bandwidth

Removes a proposed bandwidth.

Parameters
bandwidthThe proposed bandwidth to remove.

◆ removeBundleCategoryAttributes

- (void) removeBundleCategoryAttributes

Removes Bundle (i.e.

Transport and Identical) Category Attributes.

◆ removeMediaAttribute:

- (bool) removeMediaAttribute: (FMLiveSwitchSdpAttribute *)  attribute

Removes a media-level attribute.

Parameters
attributeThe session-level attribute to remove.

◆ rtcpAttribute

- (FMLiveSwitchSdpRtcpAttribute*) rtcpAttribute

Gets Rtcp Attributes associated with this media description.

◆ rtcpMultiplexingSupported

- (bool) rtcpMultiplexingSupported

Gets a value indicating support for RTCP Multiplexing.

◆ sctpMapAttribute

- (FMLiveSwitchSdpSctpMapAttribute*) sctpMapAttribute

Gets the Sctp Map Attribute, if it is present in the Media Description.

◆ sctpMaxMessageSizeAttribute

- (FMLiveSwitchSdpSctpMaxMessageSizeAttribute*) sctpMaxMessageSizeAttribute

Gets the Sctp Max Message Size Attribute, if it is present in the Media Description.

◆ sctpPortAttribute

- (FMLiveSwitchSdpSctpPortAttribute*) sctpPortAttribute

Gets the Sctp Port Attribute, if it is present in the Media Description.

◆ setConnectionData:

- (void) setConnectionData: (FMLiveSwitchSdpConnectionData *)  value

Sets media-level connection data.

◆ setEncryptionKey:

- (void) setEncryptionKey: (FMLiveSwitchSdpEncryptionKey *)  value

Sets the media-level encryption key.

◆ setFormatParameterValueWithPayloadType:formatParameterName:formatParameterValue:

- (bool) setFormatParameterValueWithPayloadType: (int)  payloadType
formatParameterName: (NSString *)  formatParameterName
formatParameterValue: (NSString *)  formatParameterValue 

Sets a format parameter value.

◆ setIsMuted:

- (void) setIsMuted: (bool)  value

Sets a value indicating whether this stream is muted.

Applies to only media streams.

◆ setMediaTitle:

- (void) setMediaTitle: (NSString *)  value

Sets the media title.

◆ setQualityAttribute:

- (void) setQualityAttribute: (FMLiveSwitchSdpQualityAttribute *)  value

Sets the QualityAttribute associated with this MediaDescription.

◆ setRtcpAttribute:

- (void) setRtcpAttribute: (FMLiveSwitchSdpRtcpAttribute *)  value

Sets Rtcp Attributes associated with this media description.

◆ setRtcpMultiplexingSupported:

- (void) setRtcpMultiplexingSupported: (bool)  value

Sets a value indicating support for RTCP Multiplexing.

◆ setSetupAttribute:

- (void) setSetupAttribute: (FMLiveSwitchSdpSetupAttribute *)  value

Sets the SetupAttribute associated with this MediaDescription.

◆ setStreamDirection:

- (void) setStreamDirection: (FMLiveSwitchStreamDirection)  value

Sets the stream direction indicated in Media Description.

Getter returns StreamDirection if DirectionAttribute is present; otherwise, returns StreamDirection.Unset.

◆ setupAttribute

- (FMLiveSwitchSdpSetupAttribute*) setupAttribute

Gets the SetupAttribute associated with this MediaDescription.

◆ streamDirection

- (FMLiveSwitchStreamDirection) streamDirection

Gets the stream direction indicated in Media Description.

Getter returns StreamDirection if DirectionAttribute is present; otherwise, returns StreamDirection.Unset.

◆ supportsIce

- (bool) supportsIce

Gets a value indicating whether this SDP MediaDescription suggests support for ICE.

◆ transportCategoryAttributes

- (NSMutableArray*) transportCategoryAttributes

Gets the attributes with Transport Multiplexing Category present in this description.

Returns
Attributes with Transport Multiplexing Category present in this description.

◆ tryAddContentAttribute:

- (bool) tryAddContentAttribute: (FMLiveSwitchSdpContentAttribute *)  contentAttribute

Adds a content attribute if not already present.

Parameters
contentAttributeThe content attribute.

◆ updateQualityAttributeValueWithQuality:

- (void) updateQualityAttributeValueWithQuality: (int)  quality

Updates SDP Quality Attribute associated with this media description if one is present.

Otherwise, creates a new one and inserts it into this media description.

Parameters
quality