版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、RealTimeStreamingProtocol或者RTSP(實(shí)時(shí)流媒體協(xié)議),是由Realnetwork和Netscape共同提出的如何有效地在IP網(wǎng)絡(luò)上傳輸流媒體數(shù)據(jù)的應(yīng)用層協(xié)議。RTSP提供一種可擴(kuò)展的框架,使能夠提供能控制的,按需傳輸實(shí)時(shí)數(shù)據(jù),比如音頻和視頻文件。源數(shù)據(jù)可以包括現(xiàn)場(chǎng)數(shù)據(jù)的反饋和存貯的文件。rtsp對(duì)流媒體提供了諸如暫停,快進(jìn)等控制,而它本身并不傳輸數(shù)據(jù),rtsp作用相當(dāng)于流媒體服務(wù)器的遠(yuǎn)程控制。傳輸數(shù)據(jù)可以通過(guò)傳輸層的tcp,udp協(xié)議,rtsp也提供了基于rtp傳輸機(jī)制的一些有效的方法。RTSP消息格式:RTSP的消息有兩大類,一是請(qǐng)求消息(request),一是回
2、應(yīng)消息(response),兩種消息的格式不同.請(qǐng)求消息:方法URIRTSP版本CRLF消息頭CRLFCRLF消息體CRLF其中方法包括OPTION回應(yīng)中所有的命令,URI是接受方的地址,例如:rtsp:/36RTSP版本一般都是RTSP/1.0.每行后面的CRLF表示回車換行,需要接受端有相應(yīng)的解析,最后一個(gè)消息頭需要有兩個(gè)CRLF回應(yīng)消息:RTSP版本狀態(tài)碼解釋CRLF消息頭CRLFCRLF消息體CRLF其中RTSP版本一般都是RTSP/1.0,狀態(tài)碼是一個(gè)數(shù)值,200表示成功,解釋是與狀態(tài)碼對(duì)應(yīng)的文本解釋.簡(jiǎn)單的rtsp交互過(guò)程:C表示rtsp客戶端,S表示rts
3、p服務(wù)端1.C->S:OPTIONrequest詢問(wèn)S有哪些方法可用1.S->C:OPTIONresponse/S回應(yīng)信息中包括提供的所有可用方法2 .C->S:DESCRIBErequest2.5- >C:DESCRIBEresponse3 .C->S:SETUPrequest3.5- >C:SETUPresponse/要求彳#到S提供的媒體初始化描述信息/S回應(yīng)媒體初始化描述信息,主要是sdp設(shè)置會(huì)話的屬性,以及傳輸模式,提醒S建立會(huì)話/S建立會(huì)話,返回會(huì)話標(biāo)識(shí)符,以及會(huì)話相關(guān)信息4.C->S:PLAYrequest4.S->C:PLAYre
4、sponseS->C:發(fā)送流媒體數(shù)據(jù)/C請(qǐng)求播放/S回應(yīng)該請(qǐng)求的信息5.C->S:TEARDOWNrequest/C請(qǐng)求關(guān)閉會(huì)話5.5- >C:TEARDOWNresponse/S回應(yīng)該請(qǐng)求上述的過(guò)程是標(biāo)準(zhǔn)的、友好的rtsp流程,但實(shí)際的需求中并不一定按部就班來(lái)。其中第3和4步是必需的!第一步,只要服務(wù)器客戶端約定好,有哪些方法可用,則option請(qǐng)求可以不要。第二步,如果我們有其他途徑得到媒體初始化描述信息(比如http請(qǐng)求等等),則我們也不需要通過(guò)rtsp中的describe請(qǐng)求來(lái)完成。第五步,可以根據(jù)系統(tǒng)需求的設(shè)計(jì)來(lái)決定是否需要。rtsp中常用方法:1.OPTION目的
5、是得到服務(wù)器提供的可用方法:OPTIONSrtsp:/36:5000/xxx666RTSP/1.0CSeq:1/每個(gè)消息都有序號(hào)來(lái)標(biāo)記,第一個(gè)包通常是option請(qǐng)求消息User-Agent:VLCmediaplayer(LIVE555StreamingMediav2005.11.10)服務(wù)器的回應(yīng)信息包括提供的一些方法,例如:RTSP/1.0200OKServer:UServer0.9.7_rc1Cseq:1每個(gè)回應(yīng)消息的cseq數(shù)值和請(qǐng)求消息的cseq相對(duì)應(yīng)Public:OPTIONS,DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE,SCALE
6、,GET_PARAMETER/服務(wù)器提供的可用的方法2.DESCRIBEC向S發(fā)起DESCRIBE請(qǐng)求,為了得到會(huì)話描述信息(SDP):DESCRIBErtsp:/36:5000/xxx666RTSP/1.0CSeq:2token:Accept:application/sdpUser-Agent:VLCmediaplayer(LIVE555StreamingMediav2005.11.10)服務(wù)器回應(yīng)一些對(duì)此會(huì)話的描述信息(sdp):RTSP/1.0200OKServer:UServer0.9.7_rc1Cseq:2x-prev-url:rtsp:/192.168.20
7、.136:5000x-next-url:rtsp:/36:5000x-Accept-Retransmit:our-retransmitx-Accept-Dynamic-Rate:1Cache-Control:must-revalidateLast-Modified:Fri,10Nov200612:34:38GMTDate:Fri,10Nov200612:34:38GMTExpires:Fri,10Nov200612:34:38GMTContent-Base:rtsp:/36:5000/xxx666/Content-Length:344Conten
8、t-Type:application/sdpv=0以下都是sdp信息o=OnewaveUServerNG14515164021025358037INIP436s=/xxx666u=http:/e=adminc=INIPt=00a=isma-compliance:1,1.0,1a=range:npt=0-m=video0RTP/AVP96/m表示媒體描述,下面是對(duì)會(huì)話中視頻通道的媒體描述a=rtpmap:96MP4V-ES/90000a=fmtp:96profile-level-id=245;config=000001B0F5000001B50900000
9、1000000012000c888B0E0E0FA62D089028307a=control:trackID=0/trackID=0表示視頻流用的是通道03.SETUP客戶端提醒服務(wù)器建立會(huì)tg,并確定傳輸模式:SETUPrtsp:/36:5000/xxx666/trackID=0RTSP/1.0CSeq:3Transport:RTP/AVP/TCP;unicast;interleaved=0-1User-Agent:VLCmediaplayer(LIVE555StreamingMediav2005.11.10)/uri中帶有trackID=0,表示對(duì)該通道進(jìn)行設(shè)置。T
10、ransport參數(shù)設(shè)置了傳輸模式,包的結(jié)構(gòu)。接下來(lái)的數(shù)據(jù)包頭部第二個(gè)字節(jié)位置就是interleaved,它的值是每個(gè)通道都不同的,trackID=0的interleaved值有兩個(gè)0或1,0表示rtp包,1表示rtcp包,接受端根據(jù)interleaved的值來(lái)區(qū)別是哪種數(shù)據(jù)包。服務(wù)器回應(yīng)信息:RTSP/1.0200OKServer:UServer0.9.7_rc1Cseq:3Session:6310936469860791894服務(wù)器回應(yīng)的會(huì)話標(biāo)識(shí)符Cache-Control:no-cacheTransport:RTP/AVP/TCP;unicast;interleaved=0-1;ssrc
11、=6B8B45674.PLAY客戶端發(fā)送播放請(qǐng)求:PLAYrtsp:/36:5000/xxx666RTSP/1.0CSeq:4Session:6310936469860791894Range:npt=0.000-/設(shè)置播放時(shí)間的范圍User-Agent:VLCmediaplayer(LIVE555StreamingMediav2005.11.10)服務(wù)器回應(yīng)信息:RTSP/1.0200OKServer:UServer0.9.7_rc1Cseq:4Session:6310936469860791894Range:npt=0.000000-RTP-Info:url=trac
12、kID=0;seq=17040;rtptime=1467265309/seq和rtptime都是rtp包中的信息5.TEARDOWN客戶端發(fā)起關(guān)閉請(qǐng)求:TEARDOWNrtsp:/36:5000/xxx666RTSP/1.0CSeq:5Session:6310936469860791894User-Agent:VLCmediaplayer(LIVE555StreamingMediav2005.11.10)服務(wù)器回應(yīng):RTSP/1.0200OKServer:UServer0.9.7_rc1Cseq:5Session:6310936469860791894Connectio
13、n:Close以上方法都是交互過(guò)程中最為常用的,其它還有一些重要的方法如get/set_parameter,pause,redirect等等ps:sdp的格式v=<version>o=<username><sessionid><version><networktype><addresstype><address>s=<sessionname>i=<sessiondescription>u=<URI>e=<emailaddress>p=<phonenumber
14、>c=<networktype><addresstype><connectionaddress>b=<modifier>:<bandwidth-value>t=<starttime><stoptime>r=<repeatinterval><activeduration><listofoffsetsfromstart-time>z=<adjustmenttime><offset><adjustmenttime><offset>
15、;.k=<method>k=<method>:<encryptionkey>a=<attribute>a=<attribute>:<value>m=<media><port><transport><fmtlist>v=(協(xié)議版本)o=(所有者/創(chuàng)建者和會(huì)話標(biāo)識(shí)符)s=(會(huì)話名稱)i=*(會(huì)話信息)u=*(URI描述)e=*(Email地址)p=*(電話號(hào)碼)c=*(連接信息)b=*(帶寬信息)z=*(時(shí)間區(qū)域調(diào)整)k=*(加密密鑰)a=*(0個(gè)或多個(gè)會(huì)話屬性行)時(shí)間描述:t=
16、(會(huì)話活動(dòng)時(shí)間)r=*(0或多次重復(fù)次數(shù))媒體描述:m=(媒體名稱和傳輸?shù)刂罚﹊=*(媒體標(biāo)題)c=*(連接信息一如果包含在會(huì)話層則該字段可選)b=*(帶寬信息)k=*(加密密鑰)a=*(0個(gè)或多個(gè)媒體屬性行)源5e723f6.html10方法定義方法表征(methodtoken)表示了對(duì)請(qǐng)求統(tǒng)一資源標(biāo)志符(Request-URI)識(shí)別的資源所執(zhí)行的操作。方法名區(qū)分大小寫(xiě)。將來(lái)可能定義新的方法。方法名可能不以美元符$'(十進(jìn)制數(shù)24)開(kāi)頭,但必須具有表征意義(mustbeatoken)。表格2是對(duì)方法的一個(gè)小結(jié)。methoddirectionobjectrequirementDESCR
17、IBEC->SP,SrecommendedANNOUNCEC->S,S->CP,SoptionalGETPARAMETERC->S,S->CP,SoptionalOPTIONSC->S,S->CP,Srequired(S!C:optional)PAUSEC->SP,SrecommendedPLAYC->SP,SrequiredRECORDC->SP,SoptionalREDIRECTS->CP,SoptionalSETUPC->SSrequiredSETPARAMETERC->S,S->CP,Soptional
18、TEARDOWNC->SP,Srequired表2:對(duì)RTSP方法,和其操作方向及所操作對(duì)象(P:表示,S:媒體流)的一個(gè)概覽注意:PAUSE方法是推薦的,但在構(gòu)建一個(gè)全功能的服務(wù)器(fullyfunctionalserver)時(shí)可能不支持此方法,這時(shí)就不需要它,比如對(duì)于livefeeds。如果服務(wù)器不支持某個(gè)特殊方法,它必將返回"501NotImplemented",并且客戶端應(yīng)該不再向該服務(wù)器請(qǐng)求該方法。(注:Presentation是一個(gè)以完整的mediafeed呈現(xiàn)給client的一個(gè)或多個(gè)媒體流的集合,暫且翻譯成表示)10.1 OPTIONS其行為與H9.2
19、中描述的等同。OPTIONS請(qǐng)求可能在任何時(shí)候發(fā)出,例如客戶端將要發(fā)出一個(gè)非標(biāo)準(zhǔn)的請(qǐng)求時(shí)。它不影響服務(wù)器狀態(tài)。示例:C->S:OPTIONS*RTSP/1.0CSeq:1Require:implicit-playProxy-Require:gzipped-messagesS->C:RTSP/1.0200OKCSeq:1Public:DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE注意:這些都是必要的構(gòu)造特征(necessarilyfictionalfeatures)。(你可能不希望我們?nèi)ビ幸夂雎阅切?shí)際上有用的特征,因此在這一部分中我們將給出一個(gè)詳細(xì)的例子)。1
20、0.2 DESCRIBEDESCRIBE方法從服務(wù)器檢索表示的描述或媒體對(duì)象,這些資源通過(guò)請(qǐng)求統(tǒng)一資源定位符(therequestURL)識(shí)別。此方法可能結(jié)合使用Accept首部域來(lái)指定客戶端理解的描述格式。服務(wù)器端用被請(qǐng)求資源的描述對(duì)客戶端作出響應(yīng)。DESCRIBE的答復(fù)-響應(yīng)對(duì)(reply-responsepair)組成了RTSP的媒體初始化階段。示例:C->S:DESCRIBErtsp:/CSeq:312Accept:application/sdp,application/rtsl,application/mhegS->C:RTSP/1.0200OKCSeq:312Date:
21、23Jan199715:35:06GMTContent-Type:application/sdpContent-Length:376v=0o=mhandley28908445262890842807INIP4s=SDPSeminari=ASeminaronthesessiondescriptionprotocolu=http:www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.pse=(MarkHandley)c=INIP42/127t=28733974962873404696a=recvonlym=au
22、dio3456RTP/AVP0m=video2232RTP/AVP31m=whiteboard32416UDPWBa=orient:portraitDESCRIBE響應(yīng)必須包含它所描述資源的所有媒體初始化信息。如果媒體客戶端從一個(gè)數(shù)據(jù)源獲得表示描述,而非通過(guò)DESCRIBE,并且該描述包含了一個(gè)媒體初始化參數(shù)的全集,那么客戶端就應(yīng)該使用這些參數(shù),而不是再通過(guò)RTSP請(qǐng)求相同媒體的描述。再有,服務(wù)器不應(yīng)該(SHOULDNOT)使用DESCRIBE響應(yīng)作為mediaindirection的方法。需要建立基本的規(guī)則,使得客戶端有明確的方法了解何時(shí)通過(guò)DESCRIBE請(qǐng)求媒體初始化信息,何時(shí)不請(qǐng)求。強(qiáng)
23、制DESCRIBE響應(yīng)包含它所描述媒體流集合的所有初始化信息,不鼓勵(lì)將DESCRIBE用作mediaindirection的方法,通過(guò)這兩點(diǎn)避免了使用其他方法可能會(huì)引起的循環(huán)問(wèn)題(loopingproblems)。媒體初始化是任何基于RTSP系統(tǒng)的必要條件,但RTSP規(guī)范并沒(méi)有規(guī)定它必須通過(guò)DESCRIBE方法完成。RTSP客戶端可以通過(guò)3種方法來(lái)接收媒體初始化信息:.DESCRIBE方法;.其它一些協(xié)議(HTTP,email附件,等);.命令行或標(biāo)準(zhǔn)輸入(同一個(gè)SDP或其它媒體初始化格式的文件一起啟動(dòng),工作方式類似于瀏覽器的幫助程序)。為了實(shí)際協(xié)同工作,嚴(yán)重()推薦最精簡(jiǎn)的服務(wù)器也支持DES
24、CRIBE方法,最精簡(jiǎn)的客戶端也支持從標(biāo)準(zhǔn)輸入,命令行和/或其它對(duì)于客戶端操作環(huán)境合適的方法來(lái)接收媒體初始化文件的能力。10.3 ANNOUNCEANNOUNCE方法有兩個(gè)用途:當(dāng)客戶端向服務(wù)器發(fā)送時(shí),ANNOUNCE將通過(guò)請(qǐng)求URL識(shí)別的表示描述或者媒體對(duì)象提交給服務(wù)器;當(dāng)服務(wù)器向客戶端發(fā)送時(shí),ANNOUNCE實(shí)時(shí)更新會(huì)話描述。如果有新的媒體流加到表示中(比如在一個(gè)現(xiàn)場(chǎng)表示中),整個(gè)表示描述應(yīng)該重發(fā);而不只是增加組件,如果這樣做的話,組件也可以被刪除了。示例:C->S:ANNOUNCErtsp:/CSeq:312Date:23Jan199715:35:06GMTSession:4711
25、2344Content-Type:application/sdpContent-Length:332v=0o=mhandley28908445262890845468INIP4s=SDPSeminari=ASeminaronthesessiondescriptionprotocolu=http:www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.pse=(MarkHandley)c=INIP42/127t=28733974962873404696a=recvonlym=audio3456RTP/AVP0m
26、=video2232RTP/AVP31S->C:RTSP/1.0200OKCSeq:31210.4SETUPSETUP請(qǐng)求為URI指定流式媒體的傳輸機(jī)制??蛻舳四軌虬l(fā)出一個(gè)SETUP請(qǐng)求為正在播放的媒體流改變傳輸參數(shù),服務(wù)器可能同意這些參數(shù)的改變。若是不同意,它必須響應(yīng)錯(cuò)誤"455MethodNotValidInThisState"。為了盡量繞開(kāi)防火墻干涉,即使它不會(huì)影響參數(shù),客戶端也必須指出傳輸參數(shù),例如,指出服務(wù)器向外發(fā)布的固定的廣播地址。由于SETUP包括了所有傳輸初始化信息,防火墻和其他中間的網(wǎng)絡(luò)設(shè)備(它們需要這些信息)分讓了解析DESCRIBE響應(yīng)的繁瑣任務(wù)
27、,這些任務(wù)留給了媒體初始化。Transport首部域指定了客戶端數(shù)據(jù)傳輸時(shí)可接受的傳輸參數(shù);響應(yīng)包含了由服務(wù)器選出的傳輸參數(shù)。C->S:SETUPrtsp:RTSP/1.0CSeq:302Transport:RTP/AVP;unicast;client_port=4588-4589S->C:RTSP/1.0200OKCSeq:302Date:23Jan199715:35:06GMTSession:47112344Transport:RTP/AVP;unicast;client_port=4588-4589;server_port=6256-6257作為對(duì)SETUP請(qǐng)求的響應(yīng),服務(wù)器
28、產(chǎn)生了會(huì)話標(biāo)志符。如果對(duì)服務(wù)器的請(qǐng)求中包含了會(huì)話標(biāo)志符,服務(wù)器必須將此setup請(qǐng)求捆綁到一個(gè)存在的會(huì)話,或者返回"459AggregateOperationNotAllowed"。10.5 PLAYPLAY方法告知服務(wù)器通過(guò)SETUP中指定的機(jī)制開(kāi)始發(fā)送數(shù)據(jù)。在尚未收到SETUP請(qǐng)求的成功應(yīng)答之前,客戶端不可以發(fā)出PLAY請(qǐng)求。PLAY請(qǐng)求將正常播放時(shí)間(normalplaytime)定位到指定范圍的起始處,并且傳輸數(shù)據(jù)流直到播放范圍結(jié)束。PLAY請(qǐng)求可能被管道化(pipelined),即放入隊(duì)列中(queued);服務(wù)器必須將PLAY請(qǐng)求放到隊(duì)列中有序執(zhí)行。也就是說(shuō),后
29、一個(gè)PLAY請(qǐng)求需要等待前一個(gè)PLAY請(qǐng)求完成才能得到執(zhí)行。比如,在下例中,不管到達(dá)的兩個(gè)PLAY請(qǐng)求之間有多緊湊,服務(wù)器首先play第10到15秒,然后立即第20到25秒,最后是第30秒直到結(jié)束。C->S:PLAYrtsp:/CSeq:835Session:12345678Range:npt=10-15C->S:PLAYrtsp:/CSeq:836Session:12345678Range:npt=20-25C->S:PLAYrtsp:/CSeq:837Session:12345678Range:npt=30-結(jié)合PAUSE請(qǐng)求的描述,看更深一層的示例。不含Range首部域
30、的PLAY請(qǐng)求也是合法的。它從媒體流開(kāi)頭開(kāi)始播放,直到媒體流被暫停。如果媒體流通過(guò)PAUSE暫停,媒體流傳輸將在暫停點(diǎn)(thepausepoint)重新開(kāi)始。如果媒體流正在播放,那么這樣一個(gè)PLAY請(qǐng)求將不起更多的作用,只是客戶端可以用此來(lái)測(cè)試服務(wù)器是否存活。Range首部域可能包含一個(gè)時(shí)間參數(shù)。該參數(shù)以UTC格式指定了播放(palayback)開(kāi)始的時(shí)間。如果在這個(gè)指定時(shí)間后收到消息,那么播放立即開(kāi)始。時(shí)間參數(shù)可能用來(lái)幫助同步從不同數(shù)據(jù)源獲取的數(shù)據(jù)流。對(duì)于一個(gè)點(diǎn)播(On-demand)媒體流,服務(wù)器用播放(playback)的實(shí)際范圍答復(fù)請(qǐng)求。Thismaydifferfromtherequ
31、estedrangeifalignmentoftherequestedrangetovalidframeboundariesisrequiredforthemediasource.如果在請(qǐng)求中沒(méi)有指定范圍,當(dāng)前位置將在答復(fù)中返回。答復(fù)中播放范圍的單位與請(qǐng)求中相同。在播放完被要求的范圍后,表示將自動(dòng)暫停,就好像發(fā)出了一個(gè)PAUSE請(qǐng)求。下面的示例在play整個(gè)表示時(shí)從SMPTE時(shí)間0:10:20直到剪輯(clip)結(jié)束。播放開(kāi)始于1997年1月23號(hào),15點(diǎn)36分C->S:PLAYrtsp:/CSeq:833Session:12345678Range:smpte=0:10:20-;time
32、=19970123T153600ZS->C:RTSP/1.0200OKCSeq:833Date:23Jan199715:35:06GMTRange:smpte=0:10:22-;time=19970123T153600ZForplayingbackarecordingofalivepresentation,itmaybedesirabletouseclockunits:C->S:PLAYrtsp:CSeq:835Session:12345678Range:clock=19961108T142300Z-19961108T143520ZS->C:RTSP/1.0200OKCSeq
33、:835Date:23Jan199715:35:06GMT只有播放的媒體服務(wù)器必須支持npt時(shí)間格式,可能支持clock和smpte格式。10.6 PAUSEPAUSE請(qǐng)求引起媒體流傳輸?shù)臅簳r(shí)中斷。如果請(qǐng)求URL中指定了具體的媒體流,那么只有該媒體流的播放和記錄被暫停(halt)。比如,指定暫停音頻,播放將會(huì)無(wú)聲。如果請(qǐng)求URL指定了一個(gè)表示或者媒體流已成組,那么在該表示或組中的所有當(dāng)前活動(dòng)流的傳輸將被暫停。在重啟播放或記錄后,必須維護(hù)不同媒體軌跡(track)的同步。盡管服務(wù)器可能在暫停后,在timeout的時(shí)間內(nèi)關(guān)閉會(huì)話,釋放資源,但是任何資源都必須保存,其中timeout參數(shù)位于SETU
34、P消息的會(huì)話頭中。示例:C->S:PAUSErtsp:/CSeq:834Session:12345678S->C:RTSP/1.0200OKCSeq:834Date:23Jan199715:35:06GMTPAUSE請(qǐng)求中可能包含一個(gè)Range首部域用來(lái)指定何時(shí)媒體流或表示暫停,我們稱這個(gè)時(shí)刻為暫停點(diǎn)(pausepoint)。該首部域必須包含一個(gè)精確的值,而不是一個(gè)時(shí)間范圍。媒體流的正常播放時(shí)間設(shè)置成暫停點(diǎn)。當(dāng)服務(wù)器遇到在任何當(dāng)前掛起(pending)的PLAY請(qǐng)求中指定的時(shí)間點(diǎn)后,暫停請(qǐng)求生效。如果Range首部域指定了一個(gè)時(shí)間超出了任何一個(gè)當(dāng)前掛起的PLAY請(qǐng)求,將返回錯(cuò)誤&q
35、uot;457InvalidRange"。如果一個(gè)媒體單元(比如一個(gè)音頻或視頻正好在一個(gè)暫停點(diǎn)開(kāi)始,那么表示將不會(huì)被播放或記錄。如果Range首部域缺失,那么在收到暫停消息后媒體流傳輸立即中斷,并且暫停點(diǎn)設(shè)置成當(dāng)前正常播放時(shí)間。利用PAUSE請(qǐng)求可忽視所有排隊(duì)的PLAY請(qǐng)求,但必須維護(hù)媒體流中的暫停點(diǎn)。不帶Range首部域的后繼PLAY請(qǐng)求從暫停點(diǎn)重啟播放。比如,如果服務(wù)器有兩個(gè)掛起的播放請(qǐng)求,播放范圍(range)分別是10到15和20到29,這時(shí)收到一個(gè)暫停請(qǐng)求,暫停點(diǎn)是NPT21,那么它將會(huì)開(kāi)始播放第二個(gè)范圍,并且在NPT21處停止。如果服務(wù)器正在服務(wù)第一個(gè)請(qǐng)求播放到NPT13
36、位置,收到暫停請(qǐng)求,暫停點(diǎn)NPT12,那么它將立即停止。如果請(qǐng)求在NPT16暫停,那么服務(wù)器在完成第一個(gè)播放請(qǐng)求后停止,放棄了第二個(gè)播放請(qǐng)求。再如,服務(wù)器收到播放請(qǐng)求,播放范圍從10到15和13到20(即之間有重疊),PAUSE暫停點(diǎn)是NPT14,則當(dāng)服務(wù)器播放第一段范圍時(shí),PAUSE請(qǐng)求將生效,而第二個(gè)PLAY請(qǐng)求會(huì)被忽略重疊部分,就好像服務(wù)器在開(kāi)始播放第二段前收到PAUSE請(qǐng)求。不管PAUSE請(qǐng)求何時(shí)到達(dá),它總是設(shè)置NPT到14。/?如果服務(wù)器已經(jīng)在Range首部域指定的時(shí)間外發(fā)送了數(shù)據(jù),后繼的PLAY仍會(huì)在暫停點(diǎn)及時(shí)重啟,因?yàn)樗J(rèn)為客戶端會(huì)丟棄在暫停點(diǎn)后收到的數(shù)據(jù)。這就確保了連續(xù)、無(wú)隙的
37、暫停/播放循環(huán)。10.7 TEARDOWNTEARDOWN請(qǐng)求終止了給定URI的媒體流傳輸,并釋放了與該媒體流相關(guān)的資源。如果該URI是對(duì)此表示白表示URI,那么任何與此會(huì)話相關(guān)的任何RTSP會(huì)話標(biāo)志符將不再有效。除非所有傳輸參數(shù)由會(huì)話描述符定義,否則SETUP請(qǐng)求必須在會(huì)話能被再次播放之前發(fā)出。示例:C->S:TEARDOWNrtsp:CSeq:892Session:12345678S->C:RTSP/1.0200OKCSeq:89210.8 GETPARAMETERGETPARAMETER請(qǐng)求檢索URI指定的表示或媒體流的參數(shù)值。答復(fù)和響應(yīng)的內(nèi)容留給了實(shí)現(xiàn)。不帶實(shí)體主體的GET
38、PARAMETER可用來(lái)測(cè)試客戶端或服務(wù)器是否存活("Ping")。示例:S->C:GET_PARAMETERrtsp:/CSeq:431Content-Type:text/parametersSession:12345678Content-Length:15packets_receivedjitterC->S:RTSP/1.0200OKCSeq:431Content-Length:46Content-Type:text/parameterspackets_received:10jitter:0.3838"text/parameters"段只
39、是參數(shù)類型的一個(gè)例子。對(duì)此方法有意的進(jìn)行了松散的定義,對(duì)于答復(fù)和響應(yīng)的內(nèi)容將在更深一層的實(shí)驗(yàn)中給出定義。10.9 SETPARAMETER此方法給URI指定的表示或媒體流設(shè)置參數(shù)值。幫助客戶端檢查某個(gè)特殊的請(qǐng)求為何失敗的請(qǐng)求(暈)應(yīng)該只附帶一個(gè)參數(shù)。當(dāng)請(qǐng)求附帶多個(gè)參數(shù)時(shí),服務(wù)器只有在這些參數(shù)全都設(shè)置正確時(shí)才作出響應(yīng)。服務(wù)器必須允許某個(gè)參數(shù)被重復(fù)設(shè)置成相同的值,但可能不允許改變參數(shù)值。注意:必須只能使用SETUP命令來(lái)給媒體流設(shè)置傳輸參數(shù)。限制只有SETUP能設(shè)置傳輸參數(shù)有利于防火墻設(shè)計(jì)。示例:C->S:SET_PARAMETERrtsp:/CSeq:421Content-length:2
40、0Content-type:text/parametersbarparam:barstuffS->C:RTSP/1.0451InvalidParameterCSeq:421Content-length:10Content-type:text/parametersbarparam"text/parameters"段只是參數(shù)類型的一個(gè)例子。對(duì)此方法有意的進(jìn)行了松散的定義,對(duì)于答復(fù)和響應(yīng)的內(nèi)容將在更深一層的實(shí)驗(yàn)中給出定義。10.10 REDIRECTREDIRECT請(qǐng)求告知客戶端連接到另一個(gè)服務(wù)器位置。它包含首部域Location,該域指出了客戶端應(yīng)該發(fā)出請(qǐng)求的URL。它可能包含參數(shù)Range,在重定向生效時(shí),該域指明了媒體流的范圍。如果客戶端希望繼續(xù)發(fā)送或接收其URI指定的媒體,它必須發(fā)出一個(gè)TEARDOWN請(qǐng)求來(lái)關(guān)閉當(dāng)前會(huì)話,并向委派的主機(jī)發(fā)送SETUP以建立新的會(huì)話。本例中,在給定的播放時(shí)間將URI請(qǐng)求重定向到新的服務(wù)器:S->C:REDIRECTrtsp:/CSeq:732Locati
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度體育賽事直播版權(quán)授權(quán)合同4篇
- 2025年度工程承包代簽合同授權(quán)委托書(shū)4篇
- 2025年度廚房設(shè)備租賃與保險(xiǎn)服務(wù)合同7篇
- 2025年度影視劇本創(chuàng)作策劃合同模板4篇
- 二零二五年度高層建筑沉降監(jiān)測(cè)與評(píng)估服務(wù)合同4篇
- 2025年虛擬偶像形象授權(quán)及運(yùn)營(yíng)合同3篇
- 二零二五年度水電工程環(huán)保驗(yàn)收與整改承包合同匯編4篇
- 二零二五年度美容院加盟連鎖品牌使用許可協(xié)議3篇
- 2025年度大米種植基地灌溉系統(tǒng)改造與水資源利用合同3篇
- 二零二五年度美容院超聲刀銷售與產(chǎn)品創(chuàng)新研發(fā)協(xié)議4篇
- 物業(yè)民法典知識(shí)培訓(xùn)課件
- 2023年初中畢業(yè)生信息技術(shù)中考知識(shí)點(diǎn)詳解
- 2024-2025學(xué)年山東省德州市高中五校高二上學(xué)期期中考試地理試題(解析版)
- 《萬(wàn)方數(shù)據(jù)資源介紹》課件
- 麻風(fēng)病病情分析
- 《急診科建設(shè)與設(shè)備配置標(biāo)準(zhǔn)》
- 第一章-地震工程學(xué)概論
- JJF(陜) 063-2021 漆膜沖擊器校準(zhǔn)規(guī)范
- 《中國(guó)糖尿病防治指南(2024版)》更新要點(diǎn)解讀
- TSGD7002-2023-壓力管道元件型式試驗(yàn)規(guī)則
- 2024年度家庭醫(yī)生簽約服務(wù)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論