專利名稱:一種實現(xiàn)錄制業(yè)務(wù)的方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種實現(xiàn)錄制業(yè)務(wù)的方法、裝置及系統(tǒng)。
背景技術(shù):
隨著多i某體技術(shù)的發(fā)展,業(yè)界提出了網(wǎng)絡(luò)側(cè)錄制的概念,指的是由網(wǎng)絡(luò)來 記錄用戶要錄制的々某體內(nèi)容。其中,要錄制的媒體內(nèi)容的來源,可以是廣播節(jié) 目,也可以是點播節(jié)目,甚至是用戶自己的視頻等。該技術(shù)對于用戶來說,可
以為用戶帶來;f艮多好處,如減少錄制業(yè)務(wù)對用戶終端的依賴,擴展存儲空間等。 但現(xiàn)有的錄制4支術(shù),沒有在客戶端和服務(wù)器端架構(gòu)下實現(xiàn)網(wǎng)絡(luò)側(cè)錄制的方案。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種實現(xiàn)錄制業(yè)務(wù)的方法、裝置及系統(tǒng),能夠在客戶端 和服務(wù)器端架構(gòu)下實現(xiàn)網(wǎng)絡(luò)側(cè)錄制。
本發(fā)明實施例所提供的實現(xiàn)錄制業(yè)務(wù)的方法,包括
服務(wù)器端接收客戶端發(fā)送的錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求攜帶錄制功 能信息;
服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作。 本發(fā)明實施例所提供的一種服務(wù)器,包括
第一接收單元,用于接收客戶端發(fā)送的錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求 攜帶錄制功能信息;
錄制單元,用于纟艮據(jù)所述錄制功能信息進行錄制業(yè)務(wù)纟喿作。 本發(fā)明實施例所提供的一種實現(xiàn)錄制業(yè)務(wù)的系統(tǒng),包括客戶端,用于向服務(wù)器端發(fā)送錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求攜帶錄制 功能信息;
服務(wù)器端,用于接收所述錄制業(yè)務(wù)請求,根據(jù)所述錄制功能信息進行錄制 業(yè)務(wù)操作。
本發(fā)明實施例提供的實現(xiàn)錄制業(yè)務(wù)的方法、系統(tǒng)及裝置,在接收到客戶端 發(fā)送的攜帶錄制功能信息的錄制業(yè)務(wù)請求后,服務(wù)器端根據(jù)該錄制功能信息進 行錄制業(yè)務(wù)操作,從而實現(xiàn)了在客戶端和服務(wù)器端架構(gòu)下的網(wǎng)絡(luò)側(cè)錄制。
圖1為本發(fā)明一個實施例中實現(xiàn)錄制業(yè)務(wù)方法的示例性流程圖2為本發(fā)明一個實施例中的方法流程圖3為本發(fā)明另一個實施例的方法流程圖4為本發(fā)明再一個實施例的方法流程圖5為本發(fā)明實施例實現(xiàn)錄制業(yè)務(wù)的系統(tǒng)的結(jié)構(gòu)示意圖6為本發(fā)明實施例中服務(wù)器端的結(jié)構(gòu)示意圖。
具體實施例方式
下面先介紹本發(fā)明實施例的一個應(yīng)用場景,實時流協(xié)議(RTSP, Real Time Streaming Protocol)是應(yīng)用層協(xié)議,控制實時數(shù)據(jù)的傳送。它提供了一個可擴 展框架,實現(xiàn)實時數(shù)據(jù)(如音頻與視頻文件)的受控和按需傳送。
該協(xié)議可以用于在客戶端和服務(wù)器端建立和協(xié)商實時流會話。根據(jù)該協(xié)議 的要求,客戶端的任務(wù)是將用戶的請求提交給服務(wù)器端,并將服務(wù)器端返回的 結(jié)果以特定的形式顯示給用戶;而服務(wù)器端則負責接收客戶端提出的服務(wù)請 求,進行相應(yīng)的處理,再將結(jié)果返回給客戶端。基于該模型,客戶端和服務(wù)器 端都可以發(fā)出請求,實現(xiàn)了雙向的數(shù)據(jù)傳輸。
參見圖1,圖1為本發(fā)明一個實施例中實現(xiàn)錄制業(yè)務(wù)的方法的示例性流程圖。如圖1所示,該流程包括如下步驟
步驟IOI、服務(wù)器端接^lt^戶端發(fā)送的錄制業(yè)務(wù)請求,該錄制業(yè)務(wù)請求攜
帶錄制功能信息。
錄制功能信息可以包括以下信息之一或其組合錄制內(nèi)容標識、錄制模式 信息、請求錄制時長、請求錄制容量及錄制文件存^^各式。其中,錄制內(nèi)容標 識用來指示被錄制內(nèi)容的物理存放位置;錄制模式信息表示對于指定的錄制內(nèi) 容進行錄制時的保存方式,如,可以是覆蓋之前的錄制內(nèi)容,也可以是追加在 之前的錄制內(nèi)容的后面;請求錄制時長表示本次錄制請求錄制的時間長短;請 求錄制容量表示本次錄制請求錄制的容量大小;錄制文件存儲格式表示文件的 存儲格式,如3gp格式、wav才各式等。
可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)上述對錄制功能信息的表示, 當然也可以通過其他方式來達到這種表示效果。需要說明的是,本發(fā)明的實施 例中對協(xié)議的擴展只是一個具體的示例,其中提到的消息名及參數(shù)名等亦可取 其他名稱。以下是RTSP header及錄制功能信息參數(shù)的擴展。
擴展一個動作信息頭Action-info,可以包含下面的錄制功能信息描述
1、 錄制內(nèi)容的標識RecURL,該標識可以由客戶端指定,也可以由月l務(wù)器 端分配。在客戶端發(fā)送的錄制業(yè)務(wù)請求中,如果RecURI^空標識(如$ )時(當 然也可以設(shè)定為其他特殊標識,只要是客戶端和服務(wù)器約定好的即可),表明 該標識將由服務(wù)器端進行分配,正常開始錄制時需要包含該參數(shù),恢復錄制、 重新開始錄制時該參數(shù)可選。
2、 錄制模式mode:取值可以為overwrite或append等,分別表示覆蓋方 式禾口追力口方式,示例mode-,overwrite"/,,append"。 i亥參凄史可選。
3、 請求錄制的時長recdur:該參數(shù)為可選。
4、 請求錄制的容量recsize:該參凄t可選。
5、 錄制文件的存儲格式format:如3gp格式、wav格式等。示例 format=,,wav,,,該參數(shù)可選。下面是錄制業(yè)務(wù)請求中采用上述擴展方法攜帶錄制功能信息的 一個示例
Action-info: RecURL=,,http:〃foo.com/test.wav,,; recdur=3000; mode=,,overwrite,,; format=,,wav,,
步驟102、服務(wù)器端根據(jù)錄制業(yè)務(wù)請求攜帶的錄制功能信息進行錄制業(yè)務(wù) 操作。
根據(jù)錄制業(yè)務(wù)請求中攜帶的錄制功能信息不同,服務(wù)器可以進行不同的操
作
1、 正常開始錄制指一般的錄制開始,錄制功能信息可以包括錄制內(nèi) 容標識,也可進一步包括請求錄制時長、請求錄制容量及錄制文件存儲格式中 一個或組合。
對于正常開始錄制,服務(wù)器端在接收到錄制業(yè)務(wù)請求后,服務(wù)器端開始錄 制,將獲取到的所要錄制的媒體內(nèi)容保存在錄制內(nèi)容標識所指定的位置。如果 客戶端發(fā)送的錄制業(yè)務(wù)請求中的錄制內(nèi)容標識為空標識,則服務(wù)器端在接收到 請求后,為會話分配錄制內(nèi)容標識,并可以在向客戶端返回的開始錄制請求響 應(yīng)消息中攜帶服務(wù)器端所分配的錄制內(nèi)容標識。當然,對于不是服務(wù)器端分配 錄制內(nèi)容標識情況下,也可以在服務(wù)器的響應(yīng)消息中攜帶錄制內(nèi)容標識表示確 認。
2、 重新開始錄制指停止正在進行的錄制,已經(jīng)錄制的內(nèi)容將被重新錄 制的內(nèi)容覆蓋。錄制功能信息可以包括錄制模式信息,還可進一步包括錄 制內(nèi)容標識、請求錄制時長、請求錄制容量及錄制文件存儲格式中一個或組合。 錄制模式信息具體可以為覆蓋方式。
對于重新開始錄制,在接收到所述錄制業(yè)務(wù)請求后,服務(wù)器端停止正在進 行的錄制操作,從當前時間點開始重新錄制,將獲取到的所要錄制的媒體內(nèi)容 保存在在前錄制的錄制位置,覆蓋原有的錄制內(nèi)容。
3、 恢復錄制該操作將錄制業(yè)務(wù)的狀態(tài)由暫停轉(zhuǎn)換為錄制,恢復錄制后錄制的內(nèi)容將追加存儲在暫停時保存的內(nèi)容之后。錄制功能信息可以包括錄 制模式信息,還可進一步包括錄制內(nèi)容標識、請求錄制時長、請求錄制容量 及錄制文件存儲格式中一個或組合。錄制模式信息具體可以為追加方式。
對于恢復錄制,在接收到所述錄制業(yè)務(wù)請求后,服務(wù)器端從當前時間點開 始恢復錄制,將獲取到的所要錄制的媒體內(nèi)容追加保存在在前錄制內(nèi)容之后。
對于重新開始錄制和恢復錄制而言,在錄制業(yè)務(wù)請求中錄制內(nèi)容標識不是 必須攜帶的。由于在RTSP會話建立時,系統(tǒng)即分配了會話標識sessionID,標 識一個唯一的會話。錄制過程中,服務(wù)器端保持該sessionID狀態(tài),每次的錄 制控制操:作都和該ID關(guān)聯(lián),所以對于重新開始錄制,在不重新聲明后續(xù)錄制 的內(nèi)容覆蓋在哪里時,服務(wù)器可以根據(jù)sessionID將錄制的內(nèi)容覆蓋保存在之 前錄制操作中的錄制內(nèi)容標識所指定的位置,本次錄制與之前的錄制操作應(yīng)屬 于同一會話;同理,對于恢復錄制,在不重新聲明后續(xù)錄制的內(nèi)容追加在哪里 時,服務(wù)器端可以根據(jù)sessionID將錄制的內(nèi)容追加保存之前錄制操作中的錄 制內(nèi)容標識所指定的位置,本次錄制與之前的錄制才喿作應(yīng)屬于在同一會話。當 然如果錄制業(yè)務(wù)請求中攜帶錄制內(nèi)容標識,也是可以的對于重新開始錄制, 服務(wù)器端將把獲取到的所要錄制的媒體內(nèi)容保存在該錄制內(nèi)容標識所指定的 錄制位置,覆蓋原有的錄制內(nèi)容;對于恢復錄制,服務(wù)器端將把獲取到的所要 錄制的媒體內(nèi)容追加保存在該錄制內(nèi)容標識所指定的錄制位置,追加在之前錄 制的內(nèi)容之后。
以上幾種錄制中,如果錄制功能信息進一步包括請求錄制時長、請求錄制 容量及錄制文件存儲格式中一個或其組合,則服務(wù)器端在收到錄制業(yè)務(wù)請求 后,有以下操作
當錄制功能信息包括請求錄制時長時,服務(wù)器端在錄制的時間長度達到該 請求錄制時長時,停止錄制操作;
當錄制功能信息包括請求錄制容量時,服務(wù)器端在錄制的存儲容量達到該 請求錄制容量時,停止錄制操作;當錄制功能信息包括所述錄制文件存儲格式時,服務(wù)器端將獲取到的所要 錄制的々某體內(nèi)容按照該錄制文件存儲格式保存。
可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)錄制操作
擴展錄制方法record,通過攜帶不同的參&信息,完成不同的錄制操作。 如使用錄制模式參數(shù)mode可以實現(xiàn)重新開始錄制或恢復錄制操作的指示。 如前所述,錄制過程中,客戶端發(fā)起重新開始錄制請求時,可以通過record方 法攜帶錄制模式參數(shù)進行指示,此時錄制模式參數(shù)的取值為覆蓋。對于暫停后 進行恢復錄制的操作,可以通過record方法攜帶錄制模式參數(shù)進行指示,此時 錄制才莫式參數(shù)的取值為追加。
在服務(wù)器端完成錄制后,J良務(wù)器端可以向客戶端發(fā)送錄制完成請求,該請 求包括錄制結(jié)果。錄制結(jié)果可以是錄制成功完成,也可以是錄制失敗完成。錄 制成功完成,指服務(wù)器端錄制達到請求錄制的時長,和/或達到請求錄制的容量 等。錄制失敗完成,指服務(wù)器端內(nèi)部錯誤,和/或服務(wù)器端存儲空間不足等。當 錄制結(jié)果為錄制成功完成時,該錄制完成請求包括錄制完成相關(guān)信息,如, 實際錄制時長和/或?qū)嶋H錄制容量;當錄制結(jié)果為錄制失敗完成時,該錄制完成 請求包括錄制失敗的原因。
可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)上報完成情況的功能
1、對于錄制結(jié)果的上報,可以通過對RTSP ANNOUNCE方法中的事件 進行擴展實現(xiàn),如擴展事件類型4001 Record-success Completed表示錄制成功 完成,4002 Record-fail Completed表示錄制失敗完成,這樣在錄制完成時,月良 務(wù)器端便可通告錄制完成事件。
錄制成功完成時,事件類型為4001 Record-success Completed,具體示例 可以如下描述
Event-type: 4001 Record-success Completed
Statistics-info: actualdur: 3000 actualsize: 2000錄制失敗完成時,事件類型為4002 Record-fail Completed,可以擴展以下 錯誤碼用以說明失敗的原因
0 服務(wù)器端空間不足
1 服務(wù)器端內(nèi)部錯誤
示例Event-type:4002 Record-fail Completed 0
以上表示錄制失敗完成,失敗的原因是服務(wù)器端空間不足。 2、對于在錄制成功時,錄制完成相關(guān)信息的表示方法有4艮多,這里舉兩 種擴展方法
1) 擴展參數(shù)描述,用于錄制成功完成時服務(wù)器端對于實際錄制的時長(s) actualdur和/或?qū)嶋H錄制的容量actualsize(KB)信息的指示。以上參數(shù)可包含在 RTSP消息的實體部分。在使用時,需要先指定RTSP消息中的Content-type和 Content-length頭信息,然后以文本形式描述參數(shù)信息。
2) 擴展一個統(tǒng)計信息頭statistics-info:在錄制成功完成時,指示實際錄制 的時長(s) actualdur和/或?qū)嶋H錄制的容量actualsize(KB)信息。示例描述如下
Statistics-info: actualdur: 3000 actualsize: 2000
對于服務(wù)器端根據(jù)錄制業(yè)務(wù)請求開始錄制后,可以取消正在進行的錄制。 服務(wù)器端接收到客戶端發(fā)送的取消錄制請求,停止正在進行的錄制操作,并刪 除已經(jīng)錄制的內(nèi)容。
可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)取消錄制功能擴展取消錄制 的方法cancel,該方法可以實現(xiàn)停止正在進行的錄制,刪除已經(jīng)錄制的J 某體內(nèi) 容。
對于服務(wù)器端根據(jù)錄制業(yè)務(wù)請求開始錄制后,可以暫停正在進行的錄制。 服務(wù)器端接收到客戶端發(fā)送的暫停錄制請求,暫停正在進行的錄制操作。同樣, 可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)暫停錄制功能擴展暫停錄制的方法halt,該方法可以實現(xiàn)暫停正在進行的錄制操:作。例如,為了節(jié)省網(wǎng)絡(luò)空間, 可以在有廣告內(nèi)容時,進行錄制的暫停,廣告過后,進行錄制的恢復。暫停后, 錄制的恢復可以參見上述的恢復錄制操作。
對于服務(wù)器端根據(jù)錄制業(yè)務(wù)請求開始錄制后,可以停止正在進行的錄制。 服務(wù)器端接收到客戶端發(fā)送的停止錄制請求,停止正在進行的錄制操作,服務(wù) 器端可以向客戶端發(fā)送停止錄制請求響應(yīng)消息,該消息中可以攜帶錄制統(tǒng)計相 關(guān)信息,即實際錄制時長和/或?qū)嶋H錄制容量。
可以通過對現(xiàn)有的RTSP協(xié)議的擴展來實現(xiàn)停止錄制功能擴展停止錄制 的方法stop,該方法可以實現(xiàn)停止正在進行的錄制操作。停止錄制時,已經(jīng)錄 制的內(nèi)容保存在錄制業(yè)務(wù)請求中指定的或服務(wù)器端分配的錄制內(nèi)容標識所指 定的位置。錄制完成相關(guān)信息的表示方法,可以參考前面錄制成功完成時的相 關(guān)十辦i義擴展方法。
可見,由于在接收到客戶端發(fā)送的攜帶錄制功能信息的錄制業(yè)務(wù)請求后, 服務(wù)器端根據(jù)該錄制功能信息進行錄制業(yè)務(wù)操作,從而實現(xiàn)了在客戶端和服務(wù) 器端架構(gòu)下的網(wǎng)絡(luò)側(cè)錄制,進一步,可以實現(xiàn)COV業(yè)務(wù)(Consumer Originated Video )、網(wǎng)絡(luò)側(cè)個人錄制業(yè)務(wù)(N-PVR, Network Personal Video Recorder)等 需要網(wǎng)絡(luò)側(cè)錄制技術(shù)的各種新興業(yè)務(wù),滿足用戶對于各種錄制業(yè)務(wù)的需求。
下面通過具體實施例對上述方案作進一步詳細說明。需要說明的是以下 實施例中的Client即RTSP的客戶端,Server即RTSP的服務(wù)器端。
本發(fā)明 一個具體實施例
本實施例中,在Client和Server之間已經(jīng)建立了 RTSP會話,并且Server 已經(jīng)獲取到所要錄制的媒體內(nèi)容。用戶先請求開始正常錄制,在錄制過程中發(fā) 現(xiàn)錄制內(nèi)容不合其要求,取消錄制。
如圖2所示,為本實施例的方法流程圖。
步驟201、 Client向Server發(fā)送錄制業(yè)務(wù)請求消息,指示開始錄制。 通過擴展的RTSP RECORD方法以及Action-info頭信息,客戶端請求服務(wù)器端開始錄制操作。其中攜帶了一些錄制功能信息錄制內(nèi)容標識信息
http:〃Mserver/record/aa.wav,表示將把指定錄制內(nèi)容存4渚在該位置。同時還攜 帶了請求錄制的時長3000s,當然也可攜帶請求錄制的容量和錄制文件存儲格 式參數(shù)信息,這里沒有示出。 具體的消息可以如下所示
Client->Server: RECORD rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 455 Session: 12345678
Action-info: RecURL="http:〃Mserver/record/aa.wav"; recdur=3000
如果Action-i&o頭中的錄制內(nèi)容的標識RecURL="$",那么該標識將由服 務(wù)器端進行分配,然后上報給客戶端。
步驟202、 Server收到錄制業(yè)務(wù)請求消息,開始錄制。
根據(jù)錄制業(yè)務(wù)請求消息中攜帶的錄制功能信息,Sever判斷出為正常開始 錄制操作,便開始錄制。Server可以發(fā)送開始錄制的響應(yīng)消息給Client。
本步驟中也可以在響應(yīng)消息中攜帶錄制內(nèi)容標識,該標識和請求消息中指 定的相同。響應(yīng)消息的^f各式具體可以為
SERVER -> CLIENT: RTSP/2.0 200 OK CSeq: 455
RecURL: "http:〃Mserver/record/aa.wav" 如果步驟201中錄制內(nèi)容標識RecURL ,S"時,則由Sever分配錄制內(nèi)容 標識,并通過響應(yīng)消息中的RecURL頭上報給Client。相應(yīng)的步驟202的消息 格式示例為
SERVER畫> CL正NT: RTSP/2.0 200 OK CSeq: 455
RecURL: "http:〃Mserver/record/bb.wav" 上述響應(yīng)消息表明服務(wù)器端完成了錄制內(nèi)容標識的分配,錄制的內(nèi)容將保存在"http:〃Mserver/record/bb. wa v,,才旨定的4立置。
在錄制業(yè)務(wù)請求消息中也可以指定錄制開始的時間點,Server將在該時間 點開始錄制。
在開始錄制后,用戶發(fā)現(xiàn)錄制的內(nèi)容不符合其要求,決定取消錄制。 步驟203、 Client發(fā)送取消錄制請求消息給Server,指示取消錄制。 相應(yīng)的消息格式示例為
CLIENT隱〉SERVER: CANCEL rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 1
Session: 12345678
通過擴展的RTSP cancel方法,客戶端請求服務(wù)器端取消正在進行的錄制。 步驟204、 Server停止錄制,并刪除已經(jīng)錄制的部分內(nèi)容。 Server可以發(fā)送取消錄制請求的響應(yīng)消息給Client。 具體的消息格式可以為 SERVER畫〉CLIENT: RTSP/2.0 200 OK CSeq: 1
可以看到,對于用戶的正常開始錄制及取消錄制的請求,通過本實施例的 流程可以有效地進行操作,實現(xiàn)各種錄制業(yè)務(wù)。 本發(fā)明另 一個具體實施例
本實施例中,在Client和Server之間已經(jīng)建立了 RTSP會話,并且Server 已經(jīng)獲取到所要錄制的媒體內(nèi)容。用戶先請求開始正常錄制,為了避開節(jié)目中 的廣告,暫停了錄制,廣告結(jié)束后又恢復了錄制,網(wǎng)絡(luò)側(cè)錄制完成后,反饋錄 制結(jié)果。錄制結(jié)果可能為錄制成功完成,如在達到請求錄制的時長3000s后, 網(wǎng)絡(luò)側(cè)停止了錄制,并反饋錄制完成相關(guān)信息,如,實際錄制時長和/或?qū)嶋H錄 制容量;錄制結(jié)果可能為錄制失敗完成,這時網(wǎng)絡(luò)側(cè)反4貴錄制失敗的原因。
如圖3所示,為本實施例的方法流程圖。
步驟301、 Client向Server發(fā)送錄制業(yè)務(wù)請求消息,指示開始錄制。 通過擴展的RTSP RECORD方法以及Action-info頭信息,客戶端請求服務(wù)器端開始錄制操作。其中攜帶了一些錄制功能信息錄制內(nèi)容標識信息
http:〃Mserver/record/aa週v,表示將把指定錄制內(nèi)容存儲在該位置。同時還攜 帶了請求錄制的時長3000s,當然也可攜帶請求錄制的容量和錄制文件存儲格 式參數(shù)信息,這里沒有示出。 具體的消息可以如下所示
Client-〉Server: RECORD rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 455 Session: 12345678
Action-info: RecURL^"http:〃Mserver/record/aa.wav": recdur=3000
步驟302、 Server收到錄制業(yè)務(wù)請求消息,開始錄制。
才艮據(jù)錄制業(yè)務(wù)請求消息中攜帶的錄制功能信息,Sever判斷出為正常開始 錄制操作,便開始錄制。Server可以發(fā)送開始錄制的響應(yīng)消息給Client。
本步驟中也可以在響應(yīng)消息中攜帶錄制內(nèi)容標識,該標識和請求消息中指 定的相同。響應(yīng)消息的格式具體可以為
SERVER -> CLIENT: RTSP/2.0 200 OK CSeq: 455
RecURL: "http:〃Mserver/record/aa.wav,,。 在錄制業(yè)務(wù)請求消息中也可以指定錄制開始的時間點,Server將在該時間 點開始錄制。
步驟303、 Client發(fā)送暫停錄制請求消息給Server,指示暫停錄制。 消息的格式具體可以為
CLIENT-〉SERVER:HALT rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 4
Session: 12345678
通過擴展的RTSPhalt方法,客戶端請求服務(wù)器端進行暫停錄制的操作。 步驟304、 Server暫停了正在進行的錄制。Server可以發(fā)送暫停錄制請求的響應(yīng)消息給Client。 消息的格式具體可以為 SERVER-〉CLIENT: RTSP/2.0 200 OK CSeq: 4
步驟305、Client發(fā)送錄制業(yè)務(wù)請求消息給Server,指示從當前時間點開始,
繼續(xù)錄制。
通過擴展的RTSP record方法及Action-info頭信息中攜帶的錄制模式參數(shù) 信息指示進行暫停后的恢復錄制l喿作。具體的消息格式可以為
CLIENT-〉SERVER: RECORD rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 5
Session: 12345678 Action-info: mode="append,, 通過擴展的RTSP record方法攜帶的錄制模式信息指示恢復錄制。 Action-info頭信息中的錄制模式mode取值為追力口"append",表示接下來要錄 制的內(nèi)容將追加在之前錄制的內(nèi)容后面進行存儲。
步驟306、 Server收到錄制業(yè)務(wù)請求消息,從當前時間點開始進行恢復錄 制操作。
根據(jù)錄制業(yè)務(wù)請求消息中攜帶的錄制功能信息錄制才莫式mode取值為追 加"append", Sever判斷出為恢復錄制操作。
由于錄制業(yè)務(wù)請求消息中沒有攜帶錄制內(nèi)容標識,服務(wù)器端可以根據(jù)在 RTSP會話建立時分配的會話標識sessionID將錄制的內(nèi)容追加保存在同 一會話 的之前錄制操作(也就是步驟301 ~步驟302的錄制操作)中的錄制內(nèi)容標識 所指定的位置。
Server可以發(fā)送恢復錄制的響應(yīng)消息給Client。具體的消息格式為 SERVER->CLIENT: RTSP/2.0 200 OK CSeq: 5
步驟307、錄制完成,Server向Client發(fā)送錄制完成的請求消息。如前所述,該請求通過擴展的RTSP ANNOUNCE方法來實現(xiàn)。 當實際錄制的時長達到請求錄制的時長3000s時,錄制成功完成,錄制完 成的請求消息中包含錄制完成相關(guān)信息,即實際錄制時長和/或?qū)嶋H錄制容量。 對于實際錄制的相關(guān)信息的上報,如上所述,可以有兩種實現(xiàn)方法
1) 擴展statistics-info頭,用于Server在錄制成功完成時,報告如實際錄 制的時長/容量信息。具體的消息;格式可以為
SERVER-〉CLIENT:A麗OUNCE rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 457 Session: 12345678
Event-Type: 4001 Record-success Completed Statistics-info: actualdur: 3000 actualsize: 2000
通過擴展事件類型4001錄制成功完成事件,Server通告錄制完成,并且 根據(jù)Statistics-info頭信息,指示實際錄制了 3000s的媒體內(nèi)容,大小為2000KB。
2) 擴展參數(shù)描述,通過在消息的實體部分攜帶文本參數(shù)描述信息,上報 實際錄制的時長/容量。具體的消息才各式可以為
SERVER-〉CLIENT:A麗OUNCE rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 457 Session: 12345678
Event-Type: 4001 Record-success Completed Content-Type: text/parameters Content-Length: 1000 Actualdur: 3000 Actualsize: 2000
同樣,通過擴展事件類型4001錄制成功完成事件,Server通告錄制完成, 通過擴展的文本參數(shù)信息,實際錄制的時長、實際錄制的容量在實體部分進行 描述,報告Client錄制成功完成時,錄制了 3000s的々某體內(nèi)容,大小為2000KB。
當由于服務(wù)器端內(nèi)部錯誤或服務(wù)器端存儲空間不足等原因致使錄制失敗完成,錄制完成的請求消息具體可以如下
SERVER-〉CLIENT:A麗OUNCE rtsp:〃mediaserver/rec/exaServerle.3gp RTSP/2.0
CSeq: 457 Session: 12345678
Event-Type: 4002 Record-fail Completed 1 事件類型為4002錄制失敗完成事件,'T,可以指示本次錄制失敗的原因 是服務(wù)器端內(nèi)部的錯誤。
步驟308、 Client接收到錄制完成的請求消息后,可以發(fā)送錄制完成的響 應(yīng)消息給Server。具體的消息格式可以如下所述 CLIENT-〉SERVER: RTSP/2.0 200 OK CSeq: 457
可以看到,對于錄制過程中的正常開始錄制、暫停、恢復錄制及錄制完成, 通過本實施例的流程可以有效地進行操作,實現(xiàn)各種錄制業(yè)務(wù)。 本發(fā)明的再一個實施例
本實施例中,在Client和Server之間已經(jīng)建立了 RTSP會話,并且Server 已經(jīng)獲取到所要錄制的媒體內(nèi)容。用戶先請求開始正常錄制,錄制過程中用戶 重新開始了錄制,并在錄制到需要的內(nèi)容后停止了錄制。
如圖4所示,為本實施例的方法流程圖。
步驟401、 Client向Server發(fā)送錄制業(yè)務(wù)請求消息,指示開始錄制。 通過擴展的RTSP RECORD方法以及Action-info頭信息,客戶端請求服務(wù) 器端開始錄制操作。其中攜帶了一些錄制功能信息錄制內(nèi)容標識信息 h加:〃Mserver/record/aa駕v,表示將把指定錄制內(nèi)容存儲在該位置。同時還攜 帶了請求錄制的容量2000KB。 具體的消息可以如下所示
Client-〉Server: RECORD rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 455Session: 12345678
Action-info: RecURL=,,http:〃Mserver/record/aa.wav,,: recsize=2000
步驟402、 Server收到錄制業(yè)務(wù)請求消息,開始錄制。
根據(jù)錄制業(yè)務(wù)請求消息中攜帶的錄制功能信息,Sever判斷出為正常開始 錄制操作,便開始錄制。Server可以發(fā)送開始錄制的響應(yīng)消息給Client。
本步驟中也可以在響應(yīng)消息中攜帶錄制內(nèi)容標識,該標識和請求消息中指 定的相同。響應(yīng)消息的格式具體可以為
SERVER -> CLIENT: RTSP/2.0 200 OK CSeq: 455
RecURL: "h加:〃Mserver/record/aa.wav" 在錄制業(yè)務(wù)請求消息中也可以指定錄制開始的時間點,Server將在該時間 點開始錄制。
步驟403、Client發(fā)送錄制業(yè)務(wù)請求消息給Server,指示從當前時間點開始, 重新開始錄制。
通過擴展的RTSP record方法及Action-info頭信息中攜帶的錄制模式參數(shù) 信息指示進行重新開始錄制操作。具體的消息格式可以為
CLIENT-〉SERVER: RECORD rtsp:〃server.example.com/movie RTSP/2.0
CSeq: 6
Session: 12345678 Action-info: mode=,,overwrite,, 正在錄制的過程中,客戶端可以發(fā)起重新開始錄制的請求。
通過擴展的RTSP record方法攜帶錄制模式參數(shù)信息,客戶端請求服務(wù)器 端重新開始錄制。Action-info頭信息中的錄制模式mode取值為覆蓋 "overwrite",表示新的錄制內(nèi)容將以覆蓋原有的錄制內(nèi)容的方式進行存儲。
步驟404、 Server收到錄制業(yè)務(wù)請求消息,停止正在進行的錄制,從當前 時間點重新開始錄制。
21根據(jù)錄制業(yè)務(wù)請求消息中攜帶的錄制功能信息錄制模式mode取值為覆 蓋"overwrite", Sever判斷出為重新開始錄制操:作。
當然,該錄制業(yè)務(wù)請求消息中還可以攜帶其他錄制功能信息,如錄制內(nèi)容 標識、請求錄制時長、請求錄制容量及錄制文件存儲格式等。
當錄制業(yè)務(wù)請求消息中沒有攜帶錄制內(nèi)容標識,服務(wù)器端可以根據(jù)在 RTSP會話建立時分配的會話標識sessionID將錄制的內(nèi)容覆蓋保存在同一會話 之前的錄制操作(也就是步驟401 步驟402的錄制操作)中的錄制內(nèi)容標識 所指定的位置。
Server可以發(fā)送重新開始錄制的響應(yīng)消息給Client。具體的消息格式為 SERVER-〉CLIENT: RTSP/2.0 200 OK CSeq: 6
步驟405、 Client發(fā)送停止錄制請求消息給Server,指示停止錄制。 具體的消息格式可以為
CLIENT-〉SERVER:STOP rtsp:〃server. example .com/movie RTSP/2.0 CSeq: 2
Session: 12345678
通過擴展的RTSPstop方法,客戶端請求服務(wù)器端停止正在進行的錄制。 步驟406、 Server接收到停止錄制請求消息后,停止正在進行的錄制。 Server可以統(tǒng)計錄制的相關(guān)信息,即實際錄制的時長和/或?qū)嶋H錄制容量。 Server可以向Client發(fā)送停止錄制請求消息的響應(yīng)消息給Client,同時報
告實際錄制的相關(guān)信息。如前所述,該信息的上報可以有兩種實現(xiàn)方法
1)擴展statistics-info頭,報告實際錄制的時長和實際錄制容量。具體的
消息格式可以為
SERVER-〉CLIENT: RTSP/2.0 200 OK CSeq:2
Statistics-info: actualdur: 3000 actualsize: 2000
22停止錄制時,根據(jù)Statistics-info頭信息的指示,實際錄制了 3000s的媒體 內(nèi)容,大小為2000KB。
2)擴展參數(shù)描述,通過在實體部分攜帶文本參數(shù)描述信息,上報實際錄 制的時長和實際錄制容量。具體的消息格式可以為
SERVER-〉CLIENT: RTSP/2.0 200 OK CSeq:2
Content-Type: text/parameters Content-Length: 40 Actualdur: 3000 Actualsize: 2000 停止錄制時,實際錄制了 3000s的i某體內(nèi)容,大小為2000KB。 可以看到,對于錄制過程中的正常開始錄制、重新開始錄制及停止錄制, 通過本實施例的流程可以有效地進行操作,實現(xiàn)各種錄制業(yè)務(wù)。
下面介紹本發(fā)明實施例中的系統(tǒng)及裝置實施例,請參閱圖5,為本發(fā)明實 施例實現(xiàn)錄制業(yè)務(wù)的系統(tǒng)的結(jié)構(gòu)示意圖,該系統(tǒng)可以包括
客戶端501,用于向服務(wù)器端發(fā)送錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求攜帶 錄制功能信息;
服務(wù)器端502,用于接收所述錄制業(yè)務(wù)請求,根據(jù)所述錄制功能信息進行 錄制業(yè)務(wù)操作。
圖6為本發(fā)明實施例中服務(wù)器端502的結(jié)構(gòu)示意圖,如圖6所示,該服務(wù) 器502可以包括
第一接收單元601,用于接收客戶端501發(fā)送的錄制業(yè)務(wù)請求,該錄制業(yè) 務(wù)請求攜帶錄制功能信息;
錄制單元602,用于根據(jù)該錄制功能信息進行錄制業(yè)務(wù)操作。
錄制單元進一步可以包括第一錄制單元6021、第二錄制單元6022及第三 錄制單元6023中至少一個。
當錄制功能信息包括錄制內(nèi)容標識時,第一錄制單元6021用于在接收到錄制業(yè)務(wù)請求后,開始錄制,將獲取到的所要錄制的媒體內(nèi)容保存在該錄制內(nèi) 容標識所指定的位置。
當錄制功能信息包括錄制模式信息,且該錄制模式信息為覆蓋方式時,第 二錄制單元6022用于在接收到錄制業(yè)務(wù)請求后,停止正在進行的錄制操作, 從當前時間點開始重新錄制,將獲取到的所要錄制的媒體內(nèi)容保存在在前的錄 制位置,覆蓋原有的錄制內(nèi)容。
當錄制功能信息包括錄制模式信息,且該錄制模式信息為追加方式時,第
三錄制單元6023用于在接收到錄制業(yè)務(wù)請求后,從當前時間點開始恢復錄制,
將獲取到的所要錄制的媒體內(nèi)容追加保存在在前錄制內(nèi)容之后。
該服務(wù)器502進一步可以包括以下單元
上才艮單元603,用于在錄制單元錄制完成后,向客戶端發(fā)送錄制完成請求, 該請求包括錄制結(jié)果。
第二接收單元604,用于接收客戶端發(fā)送的取消錄制請求;取消單元605, 用于在接收到該取消錄制請求,停止錄制單元正在進行的錄制操作,并刪除已 經(jīng)錄制的內(nèi)容。
第三接收單元606,用于接收客戶端發(fā)送的暫停錄制請求;暫停單元607, 用于在接收到該暫停錄制請求,暫停錄制單元正在進行的錄制操作。
第四接收單元608,用于接收客戶端發(fā)送的停止錄制請求;停止單元609, 用于在接收到該停止錄制請求,停止錄制單元正在進行的錄制操作。
通過本發(fā)明上述實施例提供的實現(xiàn)錄制業(yè)務(wù)的方法、系統(tǒng)及裝置,在接收 到客戶端發(fā)送的攜帶錄制功能信息的錄制業(yè)務(wù)請求后,服務(wù)器端根據(jù)該錄制功 能信息進行錄制業(yè)務(wù)操作,從而實現(xiàn)了在客戶端和服務(wù)器端架構(gòu)下的網(wǎng)絡(luò)側(cè)錄 制,進一步,可以實現(xiàn)COV業(yè)務(wù)、網(wǎng)絡(luò)側(cè)個人錄制業(yè)務(wù)等需要網(wǎng)絡(luò)側(cè)錄制技 術(shù)的各種新興業(yè)務(wù),滿足用戶對于各種錄制業(yè)務(wù)的需求。
須
是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中。上述提到的存儲介質(zhì)可以是只讀存儲器,i茲盤或光盤等。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā) 明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及 其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1、一種實現(xiàn)錄制業(yè)務(wù)的方法,其特征在于,該方法包括服務(wù)器端接收客戶端發(fā)送的錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求攜帶錄制功能信息;服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作。
2、 如權(quán)利要求l所述的方法,其特征在于,所述錄制功能信息包括錄制內(nèi)容標識;所述服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作包括在接收到所 述錄制業(yè)務(wù)請求后,服務(wù)器端開始錄制,將獲取到的所要錄制的媒體內(nèi)容保存 在所述錄制內(nèi)容標識所指定的位置。
3、 如權(quán)利要求2所述的方法,其特征在于,所述錄制內(nèi)容標識為空標識; 所述在接收到所述錄制業(yè)務(wù)請求后進一步包括服務(wù)器端為會話分配錄制內(nèi)容標識。
4、 如權(quán)利要求2或3所述的方法,其特征在于,所述服務(wù)器端開始錄制 之后進一步包括服務(wù)器端向客戶端返回錄制業(yè)務(wù)請求響應(yīng)消息,所述消息攜 帶所述錄制內(nèi)容標識。
5、 如權(quán)利要求1或2所述的方法,其特征在于,所述錄制功能信息包括 錄制模式信息。
6、 如權(quán)利要求5所述的方法,其特征在于,所述錄制模式信息為覆蓋方式;所述服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作包括在接收到所 述錄制業(yè)務(wù)請求后,服務(wù)器端停止正在進行的錄制操作,從當前時間點開始重 新錄制,將獲取到的所要錄制的々某體內(nèi)容保存在在前錄制的錄制位置,覆蓋原 有的錄制內(nèi)容。
7、 如權(quán)利要求5所述的方法,其特征在于,所述錄制模式信息為追加方式;所述服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作包括在接收到所述錄制業(yè)務(wù)請求后,服務(wù)器端從當前時間點開始恢復錄制,將獲取到的所要錄 制的媒體內(nèi)容追加保存在在前錄制內(nèi)容之后。
8、 如權(quán)利要求2、 3或6所述的方法,其特征在于,所述錄制功能信息進 一步包括以下信息中的至少一個請求錄制時長、請求錄制容量及錄制文件存 儲格式;當錄制功能信息包括所述請求錄制時長時,所述服務(wù)器端才艮據(jù)所述錄制功 能信息進行錄制業(yè)務(wù)操作包括服務(wù)器端在錄制的時間長度達到所述請求錄制 時長時,停止錄制操作;當錄制功能信息包括所述請求錄制容量時,所述服務(wù)器端根據(jù)所述錄制功 能信息進行錄制業(yè)務(wù)操作包括服務(wù)器端在錄制的存儲容量達到所述請求錄制 容量時,停止錄制操作;當錄制功能信息包括所述錄制文件存儲格式時,所述服務(wù)器端根據(jù)所述錄 制功能信息進行錄制業(yè)務(wù)操作包括服務(wù)器端將獲取到的所要錄制的媒體內(nèi)容 按照所述錄制文件存儲格式保存。
9、 如權(quán)利要求1至3或6至7任意一項所述的方法,其特征在于,所述 服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作之后進一步包括錄制完 成,所述服務(wù)器端向客戶端發(fā)送錄制完成請求,所述請求包括錄制結(jié)果。
10、 如權(quán)利要求9所述的方法,其特征在于,所述錄制結(jié)果包括錄制成功 完成,所述錄制完成請求包括錄制完成相關(guān)信息,所述錄制完成相關(guān)信息包 括實際錄制時長和/或?qū)嶋H錄制容量。
11、 如權(quán)利要求9所述的方法,其特征在于,所述錄制結(jié)果包括錄制失敗 完成,所述錄制完成請求包括錄制失敗的原因。
12、 如權(quán)利要求1至3或6至7任意一項所述的方法,其特征在于,所述 服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作之后進一步包括服務(wù)器端接收到客戶端發(fā)送的取消錄制請求,停止正在進行的錄制操作,并刪除已經(jīng)錄 制的內(nèi)容。
13、 如權(quán)利要求1至3或6至7任意一項所述的方法,其特征在于,所述 服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作之后進一步包括服務(wù)器端 接收到客戶端發(fā)送的暫停錄制請求,暫停正在進行的錄制操作。
14、 如權(quán)利要求1至3或6至7任意一項所述的方法,其特征在于,所述 服務(wù)器端根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作之后進一步包括服務(wù)器端 接收到客戶端發(fā)送的停止錄制請求,停止正在進行的錄制操作。
15、 如權(quán)利要求14所述的方法,其特征在于,所述服務(wù)器端接收到客戶 端發(fā)送的停止錄制請求之后進一步包括服務(wù)器端向客戶端發(fā)送停止錄制請求 響應(yīng)消息,所述消息攜帶錄制統(tǒng)計相關(guān)信息,所述錄制統(tǒng)計相關(guān)信息包括實 際錄制時長和/或?qū)嶋H錄制容量。
16、 一種服務(wù)器,其特征在于,所述服務(wù)器包括第一接收單元,用于接收客戶端發(fā)送的錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求 攜帶錄制功能信息;錄制單元,用于根據(jù)所述錄制功能信息進行錄制業(yè)務(wù)操作。
17、 如權(quán)利要求16所述的服務(wù)器,其特征在于,所述錄制功能信息包括 錄制內(nèi)容標識;所述錄制單元包括第一錄制單元,用于在接收到所述錄制業(yè)務(wù)請求后,開始錄制,將獲取到 的所要錄制的々某體內(nèi)容保存在所述錄制內(nèi)容標識所指定的位置。
18、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述錄制功能信息 包括錄制模式信息,且所述錄制才莫式信息為覆蓋方式;所述錄制單元包括第二錄制單元,用于在接收到所述錄制業(yè)務(wù)請求后,停止正在進行的錄制 操作,從當前時間點開始重新錄制,將獲取到的所要錄制的媒體內(nèi)容保存在在 前的錄制位置,覆蓋原有的錄制內(nèi)容。
19、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述錄制功能信息 包括錄制模式信息,且所述錄制模式信息為追加方式;所述錄制單元包括第三錄制單元,用于在接收到所述錄制業(yè)務(wù)請求后,從當前時間點開始恢 復錄制,將獲取到的所要錄制的媒體內(nèi)容追加保存在在前錄制內(nèi)容之后。
20、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述服務(wù)器進一步 包括上報單元,用于在所述錄制單元錄制完成后,向客戶端發(fā)送錄制完成請求, 所述請求包括錄制結(jié)果。
21、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述服務(wù)器進一步 包括第二接收單元,用于接收客戶端發(fā)送的取消錄制請求; 取消單元,用于在接收到所述取消錄制請求,停止所述錄制單元正在進行 的錄制操作,并刪除已經(jīng)錄制的內(nèi)容。
22、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述服務(wù)器進一步 包括第三接收單元,用于接收客戶端發(fā)送的暫停錄制請求; 暫停單元,用于在接收到所述暫停錄制請求,暫停所述錄制單元正在進行 的錄制才喿作。
23、 如權(quán)利要求16或17所述的服務(wù)器,其特征在于,所述服務(wù)器進一步 包括第四接收單元,用于接收客戶端發(fā)送的停止錄制請求; 停止單元,用于在接收到所述停止錄制請求,停止所述錄制單元正在進行 的錄制操作。
24、 一種實現(xiàn)錄制業(yè)務(wù)的系統(tǒng),其特征在于,該系統(tǒng)包括客戶端,用于向服務(wù)器端發(fā)送錄制業(yè)務(wù)請求,所述錄制業(yè)務(wù)請求攜帶錄制 功能信息;服務(wù)器端,用于接收所述錄制業(yè)務(wù)請求,根據(jù)所述錄制功能信息進行錄制 業(yè)務(wù)操作。
全文摘要
本發(fā)明實施例公開了一種實現(xiàn)錄制業(yè)務(wù)的方法,包括服務(wù)器端接收客戶端發(fā)送的錄制業(yè)務(wù)請求,該錄制業(yè)務(wù)請求攜帶錄制功能信息;服務(wù)器端根據(jù)該錄制功能信息進行錄制業(yè)務(wù)操作。本發(fā)明實施例還公開了一種服務(wù)器及一種實現(xiàn)錄制業(yè)務(wù)的系統(tǒng)。通過本發(fā)明實施例提供的方法、裝置及系統(tǒng),實現(xiàn)了在客戶端和服務(wù)器端架構(gòu)下的網(wǎng)絡(luò)側(cè)錄制業(yè)務(wù)。
文檔編號H04L29/06GK101588342SQ20081006717
公開日2009年11月25日 申請日期2008年5月19日 優(yōu)先權(quán)日2008年5月19日
發(fā)明者馮江平, 毅 張, 誠 陳 申請人:華為技術(shù)有限公司