FMLiveSwitchSdpMediaStreamIdSemanticAttribute Class Reference

https://tools.ietf.org/html/draft-ietf-mmusic-msid-08 - NB: Removed in subsequent drafts, most likely will not be used eventually. More...

Instance Methods

(NSString *) - getAttributeValue
 Gets the internal value of the attribute. More...
 
(instancetype) - initWithSemanticToken:
 Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class. More...
 
(instancetype) - initWithSemanticToken:msidList:
 Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class. More...
 
(NSString *) - msIdList
 Gets the space-delimited list of msids for which a given semantic is used. More...
 
(void) - setMsIdList:
 Sets the space-delimited list of msids for which a given semantic is used. More...
 
- Instance Methods inherited from FMLiveSwitchSdpAttribute
(FMLiveSwitchSdpAttributeType) - attributeType
 Gets this Attribute's Type. More...
 
(NSString *) - description
 Converts this instance to a string. More...
 
(instancetype) - init
 
(FMLiveSwitchSdpAttributeCategory) - multiplexingCategory
 Gets the Multiplexing Category of this Attribute. More...
 
(void) - setAttributeType:
 Sets this Attribute's Type. More...
 
(void) - setMultiplexingCategory:
 Sets the Multiplexing Category of this Attribute. More...
 

Class Methods

(FMLiveSwitchSdpMediaStreamIdSemanticAttribute *) + fromAttributeValue:
 Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class. More...
 
(FMLiveSwitchSdpMediaStreamIdSemanticAttribute *) + mediaStreamIdSemanticAttributeWithSemanticToken:
 Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class. More...
 
(FMLiveSwitchSdpMediaStreamIdSemanticAttribute *) + mediaStreamIdSemanticAttributeWithSemanticToken:msidList:
 Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class. More...
 
- Class Methods inherited from FMLiveSwitchSdpAttribute
(FMLiveSwitchSdpAttribute *) + attribute
 
(FMLiveSwitchSdpAttribute *) + createAttributeWithName:value:
 Creates an attribute. More...
 
(NSString *) + getTypeNameWithType:
 Gets the name of the attribute type. More...
 
(bool) + isMediaLevelWithType:
 Determines whether the type applies to media streams. More...
 
(bool) + isSessionLevelWithType:
 Determines whether the type applies to sessions. More...
 
(FMLiveSwitchSdpAttribute *) + parseWithS:
 Creates an FMLiveSwitchSdpConnectionData instance from a string. More...
 

Detailed Description

https://tools.ietf.org/html/draft-ietf-mmusic-msid-08 - NB: Removed in subsequent drafts, most likely will not be used eventually.

Used here for compatibility with Google Chrome and Mozilla Firefox.

A session-level attribute is defined for signalling the semantics associated with an msid grouping.This allows msid groupings with different semantics to coexist.

This OPTIONAL attribute gives the group identifier and its group semantic; it carries the same meaning as the ssrc-group-attr of RFC 5576 section 4.2, but uses the identifier of the group rather than a list of SSRC values.

This attribute MUST be present if "a=msid" is used.

An empty list of identifiers is an indication that the sender supports the indicated semantic, but has no msid groupings of the given type in the present SDP.

An identifier of "*" is an indication that all "a=msid" lines in the SDP have this specific semantic. If "*" is not used, each msid-id in the SDP MUST appear in one and only one "msid-semantic" line. The name of the attribute is "msid-semantic". The value of the attribute is given by the following ABNF:

msid-semantic-value = msid - semantic msid-list msid-semantic = token ; see RFC 4566 msid-list = *(" " msid-id) / " *"

The semantic field holds values from the IANA registriy "Semantics for the msid-semantic SDP attribute" (which is defined in Section 6 of https://tools.ietf.org/html/draft-ietf-mmusic-msid-08 ).

An example msid-semantic might look like this, if a semantic LS was registered by IANA for the same purpose as the existing LS grouping semantic:

a= msid-semantic:LS xyzzy forolow

This means that the SDP description has two lip sync groups, with the group identifiers xyzzy and forolow, respectively.

The msid-semantic attribute can occur more than once, but MUST NOT occur more than once with the same msid-semantic value.

Method Documentation

◆ fromAttributeValue:

+ (FMLiveSwitchSdpMediaStreamIdSemanticAttribute*) fromAttributeValue: (NSString *)  value

Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class.

Parameters
valueThe attribute value.

◆ getAttributeValue

- (NSString*) getAttributeValue

Gets the internal value of the attribute.

Implements FMLiveSwitchSdpAttribute.

◆ initWithSemanticToken:

- (instancetype) initWithSemanticToken: (FMLiveSwitchSdpMediaStreamIdSemanticToken)  semanticToken

Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class.

Parameters
semanticTokenThe semantic token.

◆ initWithSemanticToken:msidList:

- (instancetype) initWithSemanticToken: (FMLiveSwitchSdpMediaStreamIdSemanticToken)  semanticToken
msidList: (NSString *)  msidList 

Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class.

Parameters
semanticTokenThe semantic token.
msidListThe msid list for the given semantic token.

◆ mediaStreamIdSemanticAttributeWithSemanticToken:

+ (FMLiveSwitchSdpMediaStreamIdSemanticAttribute*) mediaStreamIdSemanticAttributeWithSemanticToken: (FMLiveSwitchSdpMediaStreamIdSemanticToken)  semanticToken

Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class.

Parameters
semanticTokenThe semantic token.

◆ mediaStreamIdSemanticAttributeWithSemanticToken:msidList:

+ (FMLiveSwitchSdpMediaStreamIdSemanticAttribute*) mediaStreamIdSemanticAttributeWithSemanticToken: (FMLiveSwitchSdpMediaStreamIdSemanticToken)  semanticToken
msidList: (NSString *)  msidList 

Initializes a new instance of the FMLiveSwitchSdpMediaStreamIdSemanticAttribute class.

Parameters
semanticTokenThe semantic token.
msidListThe msid list for the given semantic token.

◆ msIdList

- (NSString*) msIdList

Gets the space-delimited list of msids for which a given semantic is used.

An empty list of identifiers is an indication that the sender supports the indicated semantic, but has no msid groupings of the given type in the present SDP.

An identifier of "*" is an indication that all "a=msid" lines in the SDP have this specific semantic. If "*" is not used, each msid-id in the SDP MUST appear in one and only one "msid-semantic" line.

◆ setMsIdList:

- (void) setMsIdList: (NSString *)  value

Sets the space-delimited list of msids for which a given semantic is used.

An empty list of identifiers is an indication that the sender supports the indicated semantic, but has no msid groupings of the given type in the present SDP.

An identifier of "*" is an indication that all "a=msid" lines in the SDP have this specific semantic. If "*" is not used, each msid-id in the SDP MUST appear in one and only one "msid-semantic" line.