RTSP協議詳解

2021-10-10 23:42:57 字數 1472 閱讀 9138

1.rtsp協議簡介

2、rtsp特點

rtsp是有狀態的,rtsp的命令總是按照順序來傳送,某個命令總在另外乙個命令之前要傳送。rtsp不管處於什麼狀態都不會去斷掉連線。rtsp協議使用554埠。

rtsp負責建立和控制會話,rtp負責多**的傳輸,rtcp配合rtp做控制和流量統計,他們是合作的關係。

rtsp訊息格式:

rtsp的訊息有兩大類,一是請求訊息(request),一是回應訊息(response),兩種訊息的格式不同。

1).請求訊息:

方法 uri rtsp版本 cr lf

訊息頭 cr lf cr lf

訊息體 cr lf

其中方法包括options、setup、play、teardown等待,uri是接收方(服務端)的位址,例如:rtsp:版本一般都是rtsp/1.0。每行後面的cr lf表示回車換行,需要接收端有相應的解析,最後乙個訊息頭需要有兩個cr lf。

2).回應訊息:

rtsp版本 狀態碼 解釋 cr lf

訊息頭 cr lf cr lf

訊息體 cr lf

其中rtsp版本一般都是rtsp/1.0,狀態碼是乙個數值,200表示成功,解釋是與狀態碼對應的文字解釋。

狀態碼由三位數組成,表示方法執行的結果,定義如下:

1xx:保留,將來使用;

2xx:成功,操作被接收、理解、接受(received,understand,accepted);

3xx:重定向,要完成操作必須進行進一步操作;

4xx:客戶端出錯,請求有語法錯誤或無法實現;

5xx:伺服器出錯,伺服器無法實現合法的請求。

3、簡單的rtsp互動過程

c表示rtsp客戶端,s表示rtsp服務端

1.c->s:options request //詢問s有哪些方法可用

1.s->c:options response //s回應資訊中包括提供的所有可用方法

2.c->s:describe request //要求得到s提供的**初始化描述資訊

2.s->c:describe response //s回應**初始化描述資訊,主要是sdp

4.s->c:play response //s回應該請求的資訊

s->c:傳送流**資料

5.c->s:teardown request //c請求關閉會話

5.s->c:teardown response //s回應該請求

上述的過程是標準的、友好的rtsp流程,但實際的需求中並不一定按部就班來。其中第3和4步是必需的!第一步,只要伺服器客戶端約定好,有哪些方法可 用,則options請求可以不要。第二步,如果我們有其他途徑得到**初始化描述資訊(比如http請求等等),則我們也不需要通過rtsp中的 describe請求來完成。第五步,可以根據系統需求的設計來決定是否需要。

RTSP協議詳解 一

1.overview rtsp real time streaming protocol rfc2326 實時流 傳輸協議 是tcp ip 協議體系中的乙個 應用層協議,該協議定義了一對多應用程式如何有效地通過 ip網路 傳送多 資料。圖1 rtsp的主要結構 圖1中第一層是rtsp協議的主要構成部...

RTSP協議介紹

圖1 rtsp與rtp和rtcp的關係 rtsp有兩類報文 請求報文和響應報文。請求報文是指從客戶向伺服器傳送請求報文,響應報文是指從伺服器到客戶的回答。由於 rtsp 是面向正文的 text oriented 因此在報文中的每乙個欄位都是一些 ascii 碼串,因而每個欄位的長度都是不確定的。rt...

RTSP協議介紹

圖1 rtsp與rtp和rtcp的關係 rtsp有兩類報文 請求報文和響應報文。請求報文是指從客戶向伺服器傳送請求報文,響應報文是指從伺服器到客戶的回答。由於 rtsp 是面向正文的 text oriented 因此在報文中的每乙個欄位都是一些 ascii 碼串,因而每個欄位的長度都是不確定的。rt...