SDP ใน JAIN-SIP Tutorial

ตัวอย่าง SDP ใน JAIN-SIP Tutorial

String sdpData = "v=0\r\n"
    + "o=4855 13760799956958020 13760799956958020"
    + " IN IP4  129.6.55.78\r\n" + "s=mysession session\r\n"
    + "p=+46 8 52018010\r\n" + "c=IN IP4  129.6.55.78\r\n"
    + "t=0 0\r\n" + "m=audio 6022 RTP/AVP 0 4 18\r\n"
    + "a=rtpmap:0 PCMU/8000\r\n" + "a=rtpmap:4 G723/8000\r\n"
    + "a=rtpmap:18 G729A/8000\r\n" + "a=ptime:20\r\n";

 v = version ของ SDP protocol ในที่นี้คือ version 0 ไม่มี minor version \r คือให้ชิดขวา \n คือ ขึ้นบรรทัดใหม่

o = ข้อมูลของผู้ส่งข้อความ SDP (4855 คือ username (ตั้งชื่อ user ได้เข้าใจยากจริง ๆ) , IN = INternet ครับ )
       ลองเทียบกันตามนี้นะครับ  o=<username> <session id> <version> <network type> <address type> <address>

s = หัวข้อการสนทนา ที่ต้องการคุยกัน

p = หมายเลขโทรศัพท์

c = ข้อมูลการต่อของ media session
       ลองเทียบกันตามนี้นะครับ  c=<network type> <address type> <connection address>

t = เวลา   
     t=<start time>  <stop time>
    ปรกติแล้ว t จะคำนวนโดยใช้รูปแบบของ timestamp เหมือนใน Unix แต่กรณีที่ระบุ เป็น  0 ทั้งหมด หมายความว่า
   session ที่สร้างขึ้นมานี้ จะเป็นลักษณะถาวร ก็คือ active ตลอดเวลาจนกว่าจะมีใคร terminate (โดยไม่ขึ้นกับเวลา)

m = port และ ชนิดการให้บริการ multimedia หรือเรียกอีกอย่างว่า  audio/video profile
     ในตัวอย่างนี้ 6022 เป็น udp port
  audio RTP/AVP ใช้ RTP สำหรับส่ง audio/video บน UDP
 0 4 18 เป็น parameter เพิ่มเติม ซึ่งจะอธิบาย โดย attribute a (ถัดไป)

a = เป็น attribute อธิบายข้อมูลเพิ่มเติม เช่น ข้อมูลการเข้ารหัสของ audio และ video
 a=rtpmap:<payload type> <encoding name>/<clock rate>[/<encoding parameters>]

ข้อมูลเพิ่มเติม: http://www.ietf.org/rfc/rfc2327.txt
ส่วนรายละเอียดพวก rtp อ่านที่ http://www.ietf.org/rfc/rfc3550.txt
(อ่านยากนิดนึง แต่พยายามนะครับ)