RTSP協議學習筆記

2021-03-04 01:13:06 字數 4032 閱讀 1562

目錄rtsp協議學習筆記 1

第一部分:rtsp協議 3

一、 rtsp協議概述 3

二、 rtsp協議與http協議區別 3

三、 rtsp重要術語 4

1. 集合控制(aggregate control ): 4

2. 實體(entity): 4

3. 容器檔案(container file): 4

4. rtsp會話(rtsp session ): 4

四、 rtsp請求訊息 4

1. 訊息格式: 4

五、 rtsp回應訊息 5

1. 訊息格式: 5

六、 rtsp 重要方法 5

1. options: 6

2. describe: 6

3. setup: 7

4. play: 8

5. pause: 9

6. teardown: 10

七、 rtsp重要頭欄位引數 10

1. accept: 10

2. bandwidth: 10

3. cseq: 11

4. rang: 11

5. session: 11

6. transport: 11

八、 簡單的rtsp訊息互動過程 11

1. 第一步:查詢伺服器端可用方法 11

2. 第二步:得到**描述資訊 11

3. 第三步:建立rtsp會話 12

4. 第四步:請求開始傳送資料 12

5. 第五步:資料傳送**中 12

6. 第六步:關閉會話,退出 12

第二部分:sdp協議 12

一、 sdp協議概述 12

二、 sdp格式 13

三、 sdp示例 14

第三部分:mms協議 14

一、 mms協議概述 14

一、 rtsp協議概述

rtsp(real-time stream protocol )是一種基於文字的應用層協議,在語法及一些訊息引數等方面,rtsp協議與http協議類似。

rtsp被用於建立的***體流的傳輸,它為多**服務扮演「網路遠端控制」的角色。儘管有時可以把rtsp控制資訊和**資料流交織在一起傳送,但一般情況rtsp本身並不用於轉送**流資料。**資料的傳送可通過rtp/rtcp等協議來完成。

一次基本的rtsp操作過程是:首先,客戶端連線到流伺服器並傳送乙個rtsp描述命令(describe)。流伺服器通過乙個sdp描述來進行反饋,反饋資訊包括流數量、**型別等資訊。

客戶端再分析該sdp描述,並為會話中的每乙個流傳送乙個rtsp建立命令(setup),rtsp建立命令告訴伺服器客戶端用於接收**資料的埠。流**連線建立完成後,客戶端傳送乙個**命令(play),伺服器就開始在udp上傳送**流(rtp包)到客戶端。 在**過程中客戶端還可以向伺服器傳送命令來控制快進、快退和暫停等。

最後,客戶端可傳送乙個終止命令(teradown)來結束流**會話

二、 rtsp協議與http協議區別

1. rtsp引入了幾種新的方法,比如describe、play、setup 等,並且有不同的協議識別符號,rtsp為rtsp 1.0,http為http 1.1;

2. http是無狀態的協議,而rtsp為每個會話保持狀態;

3. rtsp協議的客戶端和伺服器端都可以傳送request請求,而在httpf 協議中,只有客戶端能傳送request請求。

4. 在rtsp協議中,載荷資料一般是通過帶外方式來傳送的(除了交織的情況),及通過rtp協議在不同的通道中來傳送載荷資料。而http協議的載荷資料都是通過帶內方式傳送的,比如請求的網頁資料是在回應的訊息體中攜帶的。

5. 使用iso 10646(utf-8) 而不是iso 8859-1,以配合當前html的國際化;

6. rtsp使用uri請求時包含絕對uri。而由於歷史原因造成的向後相容性問題,http/1.1只在請求中包含絕對路徑,把主機名放入單獨的標題域中;

三、 rtsp重要術語

1. 集合控制(aggregate control ):

對多個流的同時控制。對音訊/**來講,客戶端僅需傳送一條**或者暫停訊息就可同時控制音訊流和**流。

2. 實體(entity):

作為請求或者回應的有效負荷傳輸的資訊。由以實體標題域(entity-header field)形式存在的元資訊和以實體主體(entity body)形式存在的內容組成

3. 容器檔案(container file):

可以容納多個**流的檔案。rtsp伺服器可以為這些容器檔案提供集合控制。

4. rtsp會話(rtsp session ):

rtsp互動的全過程。對乙個電影的**過程,會話(session)包括由客戶端建立**流傳輸機制(setup),使用**(play)或錄製(record)開始傳送流,用停止(teardown)關閉流。

四、 rtsp請求訊息

1. 訊息格式:

方法urirtsp版本 cr lf

訊息頭cr lf cr lf

訊息體cr lf

其中方法包括opions、describe、setup、play、teardown等,uri是接受方的位址,例如:rtsp://192.

168.0.1/video1.

3gp。

rtsp版本一般都是 rtsp/1.0。每行後面的cr lf表示回車換行,需要接受端有相應的解析,最後乙個訊息頭需要有兩個cr lf

訊息體是可選的,有的request訊息並不帶訊息體。

五、 rtsp回應訊息

1. 訊息格式:

rtsp版本狀態碼解釋 cr lf

訊息頭cr lf cr lf

訊息體cr lf

其中rtsp版本一般都是rtsp/1.0,狀態碼是乙個數值,用於表示request訊息的執行結果,比如200表示成功,解釋是與狀態碼對應的文字解釋.

六、 rtsp 重要方法

1. options:

用於得到伺服器提供的可用方法;

如:options rtsp://192.168.20.136:5000/***666 rtsp/1.0

cseq: 1

伺服器的回應資訊會在public欄位列出提供的方法。如:

rtsp/1.0 200 ok

cseq: 1 //每個回應訊息的cseq數值和請求訊息的cseq相對應

public: options, describe, setup, teardown, play, pause

2. describe:

客戶端向伺服器端傳送describe,用於得到uri所指定的**描述資訊,一般是sdp資訊。客戶端通過accept頭指定客戶端可以接受的**述資訊型別。

如:c->s: describe rtsp: rtsp/1.0

cseq: 312

accept: application/sdp, application/rtsl, application/mheg)

伺服器回應uri指定**的描述資訊:

如:s->c: rtsp/1.0 200 ok

cseq: 312

date: 23 jan 1997 15:35:06 gmt

content-type: application/sdp //表示回應為sdp資訊

content-length: 376

//這裡為乙個空行

//以下為具體的sdp資訊

v=0o=mhandley 2890844526 2890842807 in ip4 126.16.64.4

s=sdp seminar

i=a seminar on the session description protocol

u=e= (mark handley)

通訊協議學習筆記

在 unity pro 中,800 系列 i o 模組遵循平面位址對映系統。為確保正常工作,每個模組都需要確定位和 或 字的數量。iec 定址系統等效於 984ll 暫存器定址。請按以下方式指定 0x 現對應於 mx 1x 現對應於 ix 3x 現對應於 iwx 4x 現對應於 mwx 下表顯示了 ...

RFC2326中文版實時流協議RTSP

實時流協議 rtsp real time streaming protocol rtsp 備忘錄的狀態 本文件講述了一種inter 社群的inter 標準跟蹤協議,它需要進一步進行討論和建議以得到改進。請參考最新版的 inter 正式協議標準 std1 來獲得本協議的標準化程度和狀態。本備忘錄的發布...

師德學習筆記

教師的道德,是教育文化的深層內涵,也是乙個民族在教育活動中表現出來的富有強大生命力的優秀思想 崇高品德和堅定行動,是提高民族素質 培育民族精力的動力之源。青少年的健康成長是一項要全社會共同努力的體系工程,高素質的教師隊伍是這一工程順利實現的根本保證。教育心理學表明,任何學生身上都有閃光點,只是在於教...