SDP格式:
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
以上帶"*"號的是可選的,其余的是必須的。一般順序也按照上面的順序來排列。
a=*是sdp協議擴展屬性定義,除上面以外的,分解時其它的都可以扔掉。
a=charset屬性指定協議使用的字符集。一般的是ISO-10646。
示例:
v=<username><sess-id><sess-version><nettype><addrtype><unicast-address>
?
?
e=123@126.com 或 p=+1 616555-6011
對于一個任務只能兩者之中的一個,表示會議控制者的聯系方式。郵件地址可以是[email]j.doe@example.com[/email](Jane Doe)形式,括號里面的是描述聯系人的名稱,或者Jane Doe<[email]j.doe@example.com[/email]>,前面的是聯系人的名稱。
c=<nettype><addrtype><connection-address>
這個連接數據,可以是傳話級別的連接數據,或者是單獨一個媒體數據的連接數據。在是多播時,connection-address就該是一個多播組地址,當是單播時,connection-address就該是一個單播地址。對于addrtype是IP4的情況下,connection-address不僅包含IP地址,并且還要包含a time to live value(TTL 0-255),如:c=IN IP4224.2.36.42/128,IP6沒有這個TTL值。還允許象這樣的<base multicastaddress>[/<ttl>]/<numberof addresses>格式的connection-address。如:c=IN IP4224.2.1.1/127/3等同于包含c=IN IP4 224.2.1.1/127, c=IN IP4 224.2.1.2/127,c=IN IP4 224.2.1.3/127三行內容。
b=<bwtype>:<bandwidth>bwtype可以是CT或AS,CT方式是設置整個會議的帶寬,AS是設置單個會話的帶寬。缺省帶寬是千比特每秒。
t=<start-time><stop-time>,這個可以有行,指定多個不規則時間段,如果是規則的時間段,則r=屬性可以使用。start-time和stop-time都遵從NTP(Network TimeProtocol),是以秒為單位,自從1900以來的時間。要轉換為UNIX時間,減去2208988800。如果stop-time設置為0,則會話沒有時間限制。如果start-time也設置為0,則會話被認為是永久的。
r=<repeat-interval><active duration><offsets fromstart-time>重復次數在時間表示里面可以如下表示:
?
?
?
?
z=<adjustment time><offset> <adjustmenttime> <offset>....
k=<method>
k=<method>:<encryptionkey>
a=<attribute>
a=<attribute>:<value>
m=<media><port><proto><fmt> ...
m=<media><port>/<number ofports> <proto><fmt> ...
其 中:<media>可以是,"audio","video","text", "application" and"message"。<port>是媒體傳送的端口號,它依賴于c=和<proto>。<proto>可以是,udp,RTP/AVP和RTP/SAVP。
a=cat:<category>分類,根據分類接收者隔離相應的會話
a=keywds:<keywords>關鍵字,根據關鍵字隔離相應的會話
a=tool:<name and version oftool>創建任務描述的工具的名稱及版本號
a=ptime:<packettime>在一個包里面的以毫秒為單位的媒體長度
a=maxptime:<maximum packettime>以毫秒為單位,能夠壓縮進一個包的媒體量。
a=rtpmap:<payload type><encoding name>/<clockrate> [/<encoding?
a=recvonly
a=sendrecv
a=sendonly
a=inactive,
a=orient:<orientation>其可能的值,"portrait","landscape" and "seascape" 。
a=type:<conferencetype>,建議值是,"broadcast", "meeting", "moderated","test" and "H332"。
a=charset:<character set>
a=sdplang:<languagetag>指定會話或者是媒體級別使用的語言
a=framerate:<framerate>設置最大視頻幀速率
a=quality:<quality>值是0-10
a=fmtp:<format><format specific parameters>
在SIP協議的包含的內容是SDP時,應該把Content-Type設置成application/sdp。