Skip to main content

6. SDP Attributes

Attributes are the primary means for extending SDP. Attributes may be defined to be used as "session-level" attributes, "media-level" attributes, or both.

A media description may contain any number of attributes ("a=" fields) that are media specific. These are referred to as "media-level" attributes and add information about the media stream. Attribute fields can also be added before the first media field; these "session-level" attributes convey additional information that applies to the conference as a whole rather than to individual media.

Attribute fields may be of two forms:

  • A property attribute is simply of the form "a=<flag>". These are binary attributes, and the presence of the attribute conveys that the attribute is a property of the session. An example might be "a=recvonly".
  • A value attribute is of the form "a=<attribute>:<value>". For example, a whiteboard could have the value attribute "a=orient:landscape".

Attribute interpretation depends on the media tool being invoked. Thus receivers of session descriptions should be configurable in their interpretation of session descriptions in general and of attributes in particular.

Attribute names MUST use the US-ASCII subset of UTF-8, but attribute values are octet strings, and MAY use any octet value except 0x00 (Nul), 0x0A (LF), and 0x0D (CR).

6.1. cat (Category)

a=cat:<category>

This attribute gives the dot-separated hierarchical category of the session.

6.2. keywds (Keywords)

a=keywds:<keywords>

This attribute provides a comma-separated list of keywords describing the session.

6.3. tool

a=tool:<name and version of tool>

This attribute gives the name and version number of the tool used to create the session description.

6.4. ptime (Packet Time)

a=ptime:<packet time>

This attribute gives the length of time in milliseconds represented by the media in a packet.

6.5. maxptime (Maximum Packet Time)

a=maxptime:<maximum packet time>

This attribute gives the maximum amount of media that can be encapsulated in each packet, expressed as time in milliseconds.

6.6. rtpmap (RTP Payload Type Mapping)

a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>]

This attribute maps from an RTP payload type number to an encoding name denoting the payload format to be used.

6.7. recvonly (Receive Only)

a=recvonly

This specifies that the tools should be started in receive-only mode.

6.8. sendrecv (Send and Receive)

a=sendrecv

This specifies that the tools should be started in send and receive mode. This is the default.

6.9. sendonly (Send Only)

a=sendonly

This specifies that the tools should be started in send-only mode.

6.10. inactive

a=inactive

This specifies that the tools should be started in inactive mode.

6.11. orient (Orientation)

a=orient:<orientation>

Normally this is only used for a whiteboard or presentation tool. It specifies the orientation of the workspace on the screen.

6.12. type (Conference Type)

a=type:<conference type>

This specifies the type of the conference.

6.13. charset (Character Set)

a=charset:<character set>

This specifies the character set to be used to display the session name and information data.

6.14. sdplang (SDP Language)

a=sdplang:<language tag>

This attribute specifies the language for the session description.

6.15. lang (Language)

a=lang:<language tag>

This attribute specifies the language for a media description.