{"id":10,"date":"2008-08-05T12:33:28","date_gmt":"2008-08-05T10:33:28","guid":{"rendered":"http:\/\/touk.pl\/blog\/?p=10"},"modified":"2023-03-16T14:28:22","modified_gmt":"2023-03-16T13:28:22","slug":"sip-sdp-session-description-protocol","status":"publish","type":"post","link":"https:\/\/touk.pl\/blog\/2008\/08\/05\/sip-sdp-session-description-protocol\/","title":{"rendered":"SIP &amp; SDP &#8211; Session Description Protocol"},"content":{"rendered":"<p>Protoko\u0142u SIP jest protoko\u0142em sygnalizacyjnym u\u017cywanym do inicjowania sesji multimedialnych. SIP umo\u017cliwiaj\u0105 realizacje negocjacji charakterystyki sesji oraz jej aktualizacje ale sam w sobie nie zawiera mechanizm\u00f3w do opisu kszta\u0142tu sesji, przenoszonej za pomoc\u0105 protko\u0142u RTP. W tym celu SIP wykorzystuje protok\u00f3\u0142 SDP (<em>Session Descriptions Protocol<\/em>)<br \/>\nwchodz\u0105cy bezpo\u015brednio w sk\u0142ad komunikatu. SDP zawiera informacje o rodzaju<br \/>\nmedi\u00f3w, kodekach i ich parametrach, adresach IP, kierunku strumieni\u00f3w, dost\u0119pnym pasmie itp.<\/p>\n<div>\n<h3 id=\"opis-sesji\">Opis sesji:<\/h3>\n<ul>\n<li> v=  (protocol version) \u2013 wersja protoko\u0142u -> \u201c0\u201d<\/li>\n<li>o= (originator and session identifier) \u2013 zrodlo i identyfikator sesji -> \u201cdowolna_nazwa id_sesji wersja_sesji IN (IP4|IP6) adresIP_zr\u00f3d\u0142a_sesji\u201d<\/li>\n<li> s=  (session subject) \u2013 temat sesjii -> \u201c-\u201c<\/li>\n<li> i=* (session information) \u2013 opis sesji -> nie u\u017cywany<\/li>\n<li> u=* (URI of description) \u2013 uri dodatkowe opisu sesji -> nie u\u017cywany<\/li>\n<li> e=* (email address) \u2013 adres email osoby odpowiedzialnej za sesje -> nie u\u017cywany<\/li>\n<li> p=* (phone number) \u2013 numer telefoniczny osoby odpowiedzialnej za sesje -> nie u\u017cywany<\/li>\n<li> c=* (connection information) \u2013 opis po\u0142aczenia, nie wymagany je\u015bli obecny dla ka\u017cdego strumienia medi\u00f3w -> \u201cIN (IP4|IP6) adresIP\u201d<\/li>\n<li> b=* (zero or more bandwidth information lines) \u2013 sugerowane pasmo -> nie u\u017cywany<\/li>\n<li> One or more time descriptions<\/li>\n<li> z=* (time zone adjustments)- definicja strefy czasu -> nie u\u017cywany<\/li>\n<li> k=* (encryption key) \u2013 klucz szyfruj\u0105cy -> nie u\u017cywane<\/li>\n<li> a=* (zero or more session attribute lines) \u2013 atrybuty: sendonly \u2013 je\u015bli strona tylko chce wysy\u0142a\u0107 media, recvonly \u2013 je\u015bli strona chce tylko odbiera\u0107 media, inactive \u2013 bez medi\u00f3w, sendrecv \u2013 je\u015bli strona chce wysy\u0142a\u0107 i odbiera\u0107 media<\/li>\n<li> Zero or more media descriptions<\/li>\n<\/ul>\n<h3 id=\"opis-czasu\">Opis Czasu:<\/h3>\n<ul>\n<li> t=  (time the session is active) \u2013 czas sesji -> \u201c0 0\u201d<\/li>\n<li> r=* (zero or more repeat times) \u2013 cykliczno\u015b\u0107 sesji -> nie u\u017cywany<\/li>\n<\/ul>\n<h3 id=\"opis-mediow\">Opis Medi\u00f3w:<\/h3>\n<ul>\n<li>m=  (media name and transport address) \u2013 opis medi\u00f3w -> \u201c(audio|video|text) RTP\/AVP opis danych medialnych\u201d<\/li>\n<li> i=* (media title) \u2013 opis medi\u00f3w -> nie u\u017cywany<\/li>\n<li> c=* (connection information) \u2013 opis po\u0142aczenia, nie wymagany je\u015bli obecny w opisie sesji, nadpisuje warto\u015b\u0107 z opisu sesji -> \u201cIN (IP4|IP6) AdresIP\u201d<\/li>\n<li> b=* (zero or more bandwidth information lines) \u2013 sugerowane pasmo -> nie u\u017cywany<\/li>\n<li> k=* (encryption key) \u2013 klucz szyfruj\u0105cy -> nie u\u017cywane<\/li>\n<li> a=* (zero or more media attribute lines)\u00a0 \u2013 atrybuty strumienia, nadpisuj\u0105 atrybuty zdefiniowane w opisie sesji: sendonly \u2013 je\u015bli strona tylko chce wysy\u0142a\u0107 media, recvonly<br \/>\n\u2013 je\u015bli strona chce tylko odbiera\u0107 media, inactive \u2013 bez medi\u00f3w,<br \/>\nsendrecv \u2013 je\u015bli strona chce wysy\u0142a\u0107 i odbiera\u0107 media, rtcp \u2013 port dla rtcp jesli nie, ptime \u2013 dlugosc medi\u00f3w w sekunadach w przesylanym pakiecie, rtpmap \u2013 mapuje numer typu zawartosci do konkretnego kodeka i jego czestotliwosci, fmtp \u2013 umo\u017cliwia mapowanie parametrow tak aby sdp nie musialo tego rozumiec<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"Protoko\u0142u SIP jest protoko\u0142em sygnalizacyjnym u\u017cywanym do inicjowania sesji multimedialnych. SIP umo\u017cliwiaj\u0105 realizacje negocjacji charakterystyki sesji oraz jej&hellip;\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":{"0":"post-10","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-development-design"},"_links":{"self":[{"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/posts\/10","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/comments?post=10"}],"version-history":[{"count":8,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/posts\/10\/revisions"}],"predecessor-version":[{"id":15287,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/posts\/10\/revisions\/15287"}],"wp:attachment":[{"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/media?parent=10"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/categories?post=10"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/touk.pl\/blog\/wp-json\/wp\/v2\/tags?post=10"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}