{"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) &#8211; wersja protoko\u0142u -&gt; &#8220;0&#8221;<\/li>\n<li>o= (originator and session identifier) &#8211; zrodlo i identyfikator sesji -&gt; &#8220;dowolna_nazwa id_sesji wersja_sesji IN (IP4|IP6) adresIP_zr\u00f3d\u0142a_sesji&#8221;<\/li>\n<li> s=  (session subject) &#8211; temat sesjii -&gt; &#8220;-&#8220;<\/li>\n<li> i=* (session information) &#8211; opis sesji -&gt; nie u\u017cywany<\/li>\n<li> u=* (URI of description) &#8211; uri dodatkowe opisu sesji -&gt; nie u\u017cywany<\/li>\n<li> e=* (email address) &#8211; adres email osoby odpowiedzialnej za sesje -&gt; nie u\u017cywany<\/li>\n<li> p=* (phone number) &#8211; numer telefoniczny osoby odpowiedzialnej za sesje -&gt; nie u\u017cywany<\/li>\n<li> c=* (connection information) &#8211; opis po\u0142aczenia, nie wymagany je\u015bli obecny dla ka\u017cdego strumienia medi\u00f3w -&gt; &#8220;IN (IP4|IP6) adresIP&#8221;<\/li>\n<li> b=* (zero or more bandwidth information lines) &#8211; sugerowane pasmo -&gt; nie u\u017cywany<\/li>\n<li> One or more time descriptions<\/li>\n<li> z=* (time zone adjustments)- definicja strefy czasu -&gt; nie u\u017cywany<\/li>\n<li> k=* (encryption key) &#8211; klucz szyfruj\u0105cy -&gt; nie u\u017cywane<\/li>\n<li> a=* (zero or more session attribute lines) &#8211; atrybuty: sendonly &#8211; je\u015bli strona tylko chce wysy\u0142a\u0107 media, recvonly &#8211; je\u015bli strona chce tylko odbiera\u0107 media, inactive &#8211; bez medi\u00f3w, sendrecv &#8211; 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) &#8211; czas sesji -&gt; &#8220;0 0&#8221;<\/li>\n<li> r=* (zero or more repeat times) &#8211; cykliczno\u015b\u0107 sesji -&gt; 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) &#8211; opis medi\u00f3w -&gt; &#8220;(audio|video|text) RTP\/AVP opis danych medialnych&#8221;<\/li>\n<li> i=* (media title) &#8211; opis medi\u00f3w -&gt; nie u\u017cywany<\/li>\n<li> c=* (connection information) &#8211; opis po\u0142aczenia, nie wymagany je\u015bli obecny w opisie sesji, nadpisuje warto\u015b\u0107 z opisu sesji -&gt; &#8220;IN (IP4|IP6) AdresIP&#8221;<\/li>\n<li> b=* (zero or more bandwidth information lines) &#8211; sugerowane pasmo -&gt; nie u\u017cywany<\/li>\n<li> k=* (encryption key) &#8211; klucz szyfruj\u0105cy -&gt; nie u\u017cywane<\/li>\n<li> a=* (zero or more media attribute lines)\u00a0 &#8211; atrybuty strumienia, nadpisuj\u0105 atrybuty zdefiniowane w opisie sesji: sendonly &#8211; je\u015bli strona tylko chce wysy\u0142a\u0107 media, recvonly<br \/>\n&#8211; je\u015bli strona chce tylko odbiera\u0107 media, inactive &#8211; bez medi\u00f3w,<br \/>\nsendrecv &#8211; je\u015bli strona chce wysy\u0142a\u0107 i odbiera\u0107 media, rtcp &#8211; port dla rtcp jesli nie, ptime &#8211; dlugosc medi\u00f3w w sekunadach w przesylanym pakiecie, rtpmap &#8211; mapuje numer typu zawartosci do konkretnego kodeka i jego czestotliwosci, fmtp &#8211; 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}]}}