本申請涉及云存儲領域,尤其是涉及一種多媒體數據的云存儲、云下載方法及相關裝置。
背景技術:
隨著多媒體數據的存儲需求的快速增長,傳統的塊存儲等存儲技術已經不能滿足高并發、高吞吐以及高性能等特性需求。而云存儲技術由于其所具有的良好特性,應用范圍越來越廣泛。
如圖1所示,目前多媒體數據的云存儲方式包括:視頻采集設備等推送設備向服務器推送多媒體數據,服務器本地緩存該多媒體數據,并將緩存的多媒體數據存儲到云存儲設備中。云下載方式包括:用戶設備向服務器發送下載請求,服務器從云存儲設備中查找并本地緩存多媒體數據,將緩存的多媒體數據發送至用戶設備。
顯然,在從云存儲設備存儲或者下載多媒體數據時,都需要通過服務器進行本地緩存,占用了服務器的資源。尤其當多個推送設備同時向云存儲設備存儲多媒體數據,或者多個用戶設備同時從云存儲設備中下載多媒體數據時,服務器需要對大量的多媒體數據進行本地緩存,此時將會占用服務器大量的資源。對服務器的資源的占用,導致服務器的硬件成本較高。
技術實現要素:
本申請解決的技術問題在于提供一種多媒體數據的云存儲、云下載方法及相關裝置,以實現向云存儲設備存儲或者從云存儲設備下載多媒體數據時,不需要服務器進行本地緩存,減少占用的服務器的資源,從而節省硬件成本。
為此,本申請解決技術問題的技術方案是:
本申請提供了一種多媒體數據的云存儲方法,所述方法包括:
推送設備向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證;
所述推送設備接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的存儲權限信息;
所述推送設備對多媒體數據進行本地緩存;
所述推送設備利用所述存儲權限信息,將本地緩存的多媒體數據存儲在所述云存儲設備的所述指定地址。
可選的,所述方法還包括:
所述推送設備獲取所述多媒體數據的關鍵幀信息,根據所述關鍵幀信息生成索引文件;
所述推送設備利用所述存儲權限信息,將所述索引文件存儲在所述云存儲設備的所述指定地址。
可選的,所述方法還包括:
所述推送設備在將本地緩存的多媒體數據存儲在所述指定地址之前,對所述多媒體數據中的關鍵幀進行加密;
所述推送設備在將所述索引文件存儲在所述指定地址之前,在所述關鍵幀信息中添加用于表示所述關鍵幀已加密的信息。
可選的,所述方法還包括:
所述推送設備生成標簽信息,所述標簽信息用于描述所述多媒體數據的數據特征;
所述推送設備在將所述索引文件存儲在所述指定地址之前,在所述索引文件中添加所述標簽信息。
可選的,所述方法還包括:
所述推送設備生成簽名信息,所述簽名信息能夠唯一標識所述多媒體數據的關鍵幀;
所述推送設備在將本地緩存的多媒體數據存儲在所述指定地址之前,在所述多媒體數據的用戶自定義信息段中添加所述簽名信息。
可選的,所述推送設備對多媒體數據進行本地緩存,包括:
所述推送設備將多媒體數據依次緩存為多個切片數據;
所述推送設備將本地緩存的多媒體數據存儲在所述指定地址,包括:
所述推送設備將依次緩存的多個切片數據,利用追加式對象存儲方式存儲在所述指定地址。
本申請提供了一種權限驗證方法,用于云存儲過程中,所述方法包括:
服務器接收推送設備發送的驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證;
所述服務器驗證出所述推送設備具有所述存儲權限;
所述服務器生成對云存儲設備上的指定地址的存儲權限信息;
所述服務器向所述推送設備發送驗證成功消息,所述驗證成功消息中包括所述存儲權限信息。
可選的,所述驗證請求還指示出所述推送設備待存儲的多媒體數據;
在生成所述訪問權限信息之前,所述方法還包括:
若所述服務器確定出所述云存儲設備不存在所述多媒體數據,則在所述云存儲設備上生成指定文件夾,并將所述指定文件夾對應的地址作為所述指定地址;
若所述服務器確定出所述云存儲設備存在所述多媒體數據中的部分數據,則將所述部分數據所位于的地址作為所述指定地址。
可選的,所述多媒體數據的第一級目錄對應采集設備標識,第二級目錄對應存儲時間。
本申請提供了一種多媒體數據的云下載方法,所述方法包括:
用戶設備向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的下載權限進行驗證;
所述用戶設備接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的下載權限信息;
所述用戶設備利用所述下載權限信息,從所述指定地址中下載多媒體數據。
可選的,所述方法還包括:
所述用戶設備利用所述下載權限信息,從所述指定地址中下載索引文件,所述索引文件中包括所述多媒體數據的關鍵幀信息。
可選的,所述方法還包括:
所述用戶設備對所述索引文件進行解析獲得所述關鍵幀信息;
所述用戶設備根據所述關鍵幀信息播放所述多媒體數據。
可選的,所述方法還包括:
若所述用戶設備從關鍵幀信息中獲取到關鍵幀已加密的信息,所述用戶設備在根據所述關鍵幀信息播放所述多媒體數據之前,對所述關鍵幀進行解密。
本申請提供了一種權限驗證方法,用于云下載過程中,所述方法包括:
服務器接收用戶設備發送的驗證請求,所述驗證請求用于請求對所述用戶設備的下載權限進行驗證;
所述服務器驗證出所述用戶設備具有所述下載權限;
所述服務器生成對云存儲設備上的指定地址的下載權限信息;
所述服務器向所述用戶設備發送驗證成功消息,所述驗證成功消息中包括所述下載權限信息。
可選的,所述方法還包括:
若所述用戶設備處于直播狀態,所述服務器獲取存儲時間最新的多媒體數據,并將所述存儲時間最新的多媒體數據的地址作為所述指定地址;
若所述用戶設備處于點播狀態,所述服務器獲取所述用戶設備待點播數據的標識,將所述待點播數據的標識對應的存儲地址,作為所述指定地址。
本申請提供了一種推送設備,包括:發送單元、接收單元和緩存單元;
發送單元,用于向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證;
接收單元,用于接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的存儲權限信息;
緩存單元,用于對多媒體數據進行本地緩存;
所述發送單元還用于利用所述存儲權限信息,將本地緩存的多媒體數據存儲在所述云存儲設備的所述指定地址。
可選的,還包括:第一生成單元,用于獲取所述多媒體數據的關鍵幀信息,根據所述關鍵幀信息生成索引文件;
所述發送單元還用于利用所述存儲權限信息,將所述索引文件存儲在所述云存儲設備的所述指定地址。
可選的,還包括:
加密單元,用于在所述發送單元將本地緩存的多媒體數據存儲在所述指定地址之前,對所述多媒體數據中的關鍵幀進行加密;
第一添加單元,用于在所述發送單元將所述索引文件存儲在所述指定地址之前,在所述關鍵幀信息中添加用于表示所述關鍵幀已加密的信息。
可選的,還包括:
第二生成單元,用于生成標簽信息,所述標簽信息用于描述所述多媒體數據的數據特征;
第二添加單元,用于在所述發送單元將所述索引文件存儲在所述指定地址之前,在所述索引文件中添加所述標簽信息。
可選的,還包括:
第三生成單元,用于生成簽名信息,所述簽名信息能夠唯一標識所述多媒體數據的關鍵幀;
第三添加單元,用于在所述發送單元將本地緩存的多媒體數據存儲在所述指定地址之前,在所述多媒體數據的用戶自定義信息段中添加所述簽名信息。
可選的,所述緩存單元具體用于,將多媒體數據依次緩存為多個切片數據;
當將本地緩存的多媒體數據存儲在所述指定地址時,所述發送單元具體用于將依次緩存的多個切片數據,利用追加式對象存儲方式存儲在所述指定地址。
本申請提供了一種服務器,所述服務器包括:
接收單元,用于接收推送設備發送的驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證;
驗證單元,用于驗證出所述推送設備具有所述存儲權限;
生成單元,用于在所述驗證單元驗證出所述推送設備具有所述存儲權限之后,生成對云存儲設備上的指定地址的存儲權限信息;
發送單元,用于向所述推送設備發送驗證成功消息,所述驗證成功消息中包括所述存儲權限信息。
可選的,所述驗證請求還指示出所述推送設備待存儲的多媒體數據;所述服務器還包括:確定單元;
所述確定單元還用于,在所述生成單元生成所述訪問權限信息之前,若確定出所述云存儲設備不存在所述多媒體數據,則在所述云存儲設備上生成指定文件夾,并將所述指定文件夾對應的地址作為所述指定地址;若確定出所述云存儲設備存在所述多媒體數據中的部分數據,則將所述部分數據所位于的地址作為所述指定地址。
可選的,所述多媒體數據的第一級目錄對應采集設備標識,第二級目錄對應存儲時間。
本申請提供了一種用戶設備,包括:
發送單元,用于向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的下載權限進行驗證;
接收單元,用于接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的下載權限信息;
下載單元,用于利用所述下載權限信息,從所述指定地址中下載多媒體數據。
可選的,所述下載單元還用于,利用所述下載權限信息,從所述指定地址中下載索引文件,所述索引文件中包括所述多媒體數據的關鍵幀信息。
可選的,還包括:
解析單元,用于對所述索引文件進行解析獲得所述關鍵幀信息;
播放單元,用于根據所述關鍵幀信息播放所述多媒體數據。
可選的,還包括:解密單元,用于若從關鍵幀信息中獲取到關鍵幀已加密的信息,在根據所述關鍵幀信息播放所述多媒體數據之前,對所述關鍵幀進行解密。
本申請提供了一種服務器,所述方法包括:
接收單元,用于接收用戶設備發送的驗證請求,所述驗證請求用于請求對所述用戶設備的下載權限進行驗證;
驗證單元,用于驗證出所述用戶設備具有所述下載權限;
生成單元,用于在所述驗證單元驗證出所述用戶設備具有所述下載權限之后,生成對云存儲設備上的指定地址的下載權限信息;
發送單元,用于向所述用戶設備發送驗證成功消息,所述驗證成功消息中包括所述下載權限信息。
可選的,還包括:獲取單元,用于若所述用戶設備處于直播狀態,獲取存儲時間最新的多媒體數據,并將所述存儲時間最新的多媒體數據的地址作為所述指定地址;若所述用戶設備處于點播狀態,獲取所述用戶設備待點播數據的標識,將所述待點播數據的標識對應的存儲地址,作為所述指定地址。
通過上述技術方案可知,本申請實施例在進行云存儲時,由推送設備向服務器發送驗證請求,使得服務器對推送設備的存儲權限進行驗證,若服務器驗證出推送設備具有存儲權限,推送設備會接收到服務器發送的驗證成功消息,推送設備根據驗證成功消息中的存儲權限信息,將推送設備本地緩存的多媒體數據存儲在云存儲設備的指定地址。本申請實施例在進行云下載時,由用戶設備向服務器發送驗證請求,使得服務器對用戶設備的下載權限進行驗證,若服務器驗證出用戶設備具有下載權限,用戶設備會接收到服務器發送的驗證成功消息,用戶設備根據驗證成功消息中的下載權限信息,從云存儲設備的指定地址中下載多媒體數據。
可見,本申請實施例在對多媒體數據進行云存儲或者云下載時,不需要服務器進行數據中轉,即不需要服務器進行本地緩存,只需服務器進行權限驗證,由推送設備直接存儲多媒體數據或者由用戶設備直接下載多媒體數據,因此減少了占用的服務器的資源,從而節省了硬件成本。此外,本申請實施例雖然無需服務器進行數據中轉,但仍然會進行權限驗證,在減少占用資源 的同時還保證了云存儲或者云下載過程中的安全性。
附圖說明
為了更清楚地說明本申請實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對于本領域普通技術人員來講,還可以根據這些附圖獲得其它的附圖。
圖1為一種網絡系統的結構示意圖;
圖2為本申請提供的云存儲方法的一種實施例的信令交互圖;
圖3為本申請提供的云存儲設備上的一種存儲目錄的示意圖;
圖4為本申請提供的云存儲方法的另一種實施例的信令交互圖;
圖5為本申請提供的云下載方法的一種實施例的信令交互圖;
圖6為本申請提供的推送設備的一種實施例的結構示意圖;
圖7為本申請提供的服務器的一種實施例的結構示意圖;
圖8為本申請提供的用戶設備的一種實施例的結構示意圖;
圖9為本申請提供的服務器的另一種實施例的結構示意圖。
具體實施方式
圖1為一種常見的網絡系統,包括推送設備101、服務器102、云存儲設備103和用戶終端104。在本申請實施例中,多媒體數據包括音頻數據、視頻數據或者視頻描述數據等。推送設備101指的是用于獲取并推送多媒體數據的設備,例如可以具體為視頻采集設備,或者用于從視頻采集設備獲取采集到的視頻數據的設備。服務器102可以具體為流媒體服務器。云存儲設備103指的是用于進行云存儲的設備,例如可以具體為對象存儲系統(Object-Based Storage System)。用戶設備104可以具體為計算機、手機、PAD等電子設備。
目前,一種常見的多媒體數據的云存儲方式包括:推送設備101向服務器102推送多媒體數據,服務器102本地緩存該多媒體數據,并將緩存的多媒體數據存儲到云存儲設備103中。一種常見的多媒體數據的云下載 方式包括:用戶設備104向服務器102發送下載請求,服務器102從云存儲設備103中查找并本地緩存多媒體數據,將緩存的多媒體數據發送至用戶設備104。
上述云存儲或者云下載的方式具有以下缺點。
1、無論是對多媒體數據進行云存儲還是云下載的過程中,都需要通過服務器102進行本地緩存,占用了服務器的資源。尤其當多個推送設備同時向云存儲設備103存儲多媒體數據,或者多個用戶設備同時從云存儲設備103下載多媒體數據時,服務器102需要對大量的多媒體數據進行本地緩存,此時將會占用服務器大量的資源。對服務器的資源的占用,導致服務器的硬件成本較高。
2、在對多媒體數據進行云存儲或者云下載的過程中,多媒體數據很容易被盜取或者篡改,導致安全性較低。
3、在對多媒體數據進行云存儲或者云下載的過程中,若多媒體數據比較大,則需要將多媒體數據切分成多個切片數據,對多個切片數據進行依次存儲或者下載。而當所有的切片數據沒有全部存儲或者下載時,多媒體數據不能被訪問。
本申請實施例提供一種多媒體數據的云存儲、云下載方法及相關裝置,以實現向云存儲設備存儲或者從云存儲設備下載多媒體數據時,不需要服務器進行本地緩存,減少占用的服務器的資源,從而節省硬件成本。
此外,本申請實施例還具有以下優點:能夠提高多媒體數據的安全性;當多媒體數據被切分成多個切片數據后,可以對已存儲或者下載的切片數據進行訪問,即無需等到所有的切片數據全部存儲或者下載后,就能訪問多媒體數據。
為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基于本申請中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。
本申請實施例的核心思想包括但不僅限于:本申請實施例在云存儲或者 云下載的過程中,不需要通過服務器對多媒體數據進行數據中轉,而是由設備端(推送設備或者用戶設備)直接與云存儲設備交互,從而存儲或者下載多媒體數據,也就是將對多媒體數據的處理壓力從服務器分散到各個設備端。為了保證數據的安全性,設備端在與云存儲設備交互之前,需要設備端向服務器發送驗證請求,只有服務器對設備端的權限驗證成功之后,設備端才能夠根據服務器返回的權限信息存儲或者下載多媒體數據。
首先對本申請實施例提供的云存儲方法進行說明。
請參閱圖2,本申請提供了多媒體數據的云存儲方法的一種方法實施例。本實施例用于推送設備(例如圖1所示的推送設備101)中,所述推送設備可以為視頻采集設備。
本實施例的所述方法包括201、202、203、204和205,下面進行具體介紹。
201:推送設備向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證。
推送設備需要向云存儲設備存儲多媒體數據時,推送設備會向服務器發送所述驗證請求,所述驗證請求能夠使得所述服務器驗證所述推送設備是否具有在云存儲設備上存儲多媒體數據的權限。其中,驗證請求中一般包括推送設備的標識,使得服務器能夠識別所述推送設備。
本申請實施例中,服務器可以為流媒體服務器(例如圖1所示的服務器102),也可以為鑒權服務器。
301:所述服務器接收推送設備發送的驗證請求。
302:所述服務器驗證出所述推送設備具有所述存儲權限。
服務器在接收到所述驗證請求后,會根據驗證請求判斷所述推送設備是否具有所述存儲權限,如果有,則表示推送設備具有在云存儲設備上存儲多媒體數據的權限,因此執行303和304;如果否,則表示推送設備不具有在云存儲設備上存儲多媒體數據的權限,此時所述服務器可以向所述推送設備發送驗證失敗消息,所述推送設備可以重新發起驗證。
303:所述服務器生成對云存儲設備上的指定地址的存儲權限信息。
當所述服務器驗證出所述推送設備具有所述存儲權限,所述服務器會分配指定地址,生成所述存儲權限信息,所述存儲權限信息中包括所述指定地址、云存儲設備的標識以及操作動作類型為存儲操作的信息,使得所述推送設備能夠根據所述標識查找到所述云存儲設備,并根據所述指定地址和所述信息,在所述云存儲設備的所述指定地址存儲數據。
其中,所述存儲權限信息中還可以包括:所述推送設備的操作時間,用于限制所述推送設備對云存儲設備進行存儲操作的總時長。所述存儲權限信息可以具體為訪問令牌(token)。
在本申請實施例中,所述指定地址也可以理解為指定路徑。舉例說明,指定路徑可以為:E:\ID_01\8月1日。
304:所述服務器向所述推送設備發送驗證成功消息,所述驗證成功消息中包括所述存儲權限信息。
所述驗證成功消息用于表示所述服務器驗證出所述推送設備具有在云存儲設備上的存儲權限。
關于所述存儲權限信息的說明見步驟303,這里不再贅述。
202:所述推送設備接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的存儲權限信息。
關于所述驗證成功消息和存儲權限信息的說明見步驟303和304,這里不再贅述。
203:所述推送設備對多媒體數據進行本地緩存。
在本申請實施例中,由于不再通過服務器進行數據中轉,而是由推送設備直接向云存儲設備中存儲數據,因此在推送設備本地進行數據緩存。
其中,由于多媒體數據一般都比較大,因此所述推送設備在對所述多媒體數據進行本地緩存的大小可以小于多媒體數據的大小,從而將多媒體數據依次緩存為多個切片數據,即相當于切分成多個切片數據并進行緩存。
需要說明的是,203與201的執行順序不受限定,例如可以先執行201(即先向服務器驗證),再執行203(即再緩存數據);或者,也可以先執行203,再執行201。
204:所述推送設備利用所述存儲權限信息,將本地緩存的多媒體數據存儲在所述云存儲設備的所述指定地址。
本步驟在具體實現時,實際上是由推送設備將所述存儲權限信息和緩存的多媒體數據發送至云存儲設備,從而使得云存儲設備(例如圖1中的云存儲設備103)執行401,即利用存儲權限信息,將所述多媒體數據存儲在所述指定地址。
本申請實施例中,若多媒體數據被切分成多個切片數據并依次緩存在推送設備,為了解決“當所有的切片數據沒有全部存儲時,多媒體數據不能被訪問”的問題,推送設備可以將依次緩存的多個切片數據,利用追加式對象存儲方式存儲在所述指定地址。追加式對象存儲方式指的是,除第一個切片數據外,其他切片數據都追加在前一個切片數據的后面,形成流式存儲,直至達到多媒體數據的指定大小。追加式對象存儲方式可以使得,當多媒體數據被切分后,可以對已存儲的切片數據進行訪問,即無需等到所有的切片數據全部存儲后,就能訪問所述多媒體數據。
通過上述技術方案可知,本實施例在對多媒體數據進行云存儲時,不需要服務器進行數據中轉,即不需要服務器進行本地緩存,只需服務器進行權限驗證,由推送設備直接存儲多媒體數據,因此將對多媒體數據的處理壓力從服務器分散到各個推送設備,減少了占用的服務器的資源,從而節省了硬件成本。此外,本申請實施例雖然無需服務器進行數據中轉,但仍然會由服務器進行權限驗證,在減少占用資源的同時還保證了云存儲過程中的安全性。
當多媒體數據具體為視頻數據或其他具有關鍵幀的多媒體數據時,多媒體數據在解碼或者播放解碼時需要依賴于關鍵幀,例如,從關鍵幀開始播放或者其他幀在解碼時需要基于關鍵幀。因此本申請實施例中所述推送設備還可以獲取多媒體數據的關鍵幀信息,根據所述關鍵幀信息生成索引文件;并利用所述存儲權限信息,將所述索引文件存儲在所述云存儲設備的所述指定地址,實際上就是在步驟204時,將存儲權限信息、緩存的多媒體數據以及索引文件一并發送至服務器。從而能夠快速定位到關鍵幀,實現快速播放或者解碼多媒體數據。所述指定地址可以包括第一指定地址和第二指定地址,將所述多媒體數據存儲在所述第一指定地址,將所述索引文件存儲在所述第 二指定地址。
其中,所述關鍵幀信息可以包括關鍵幀的時間戳、關鍵幀的大小、以及關鍵幀在多媒體數據中的位置,使得其他設備(例如用戶設備)能夠根據所述關鍵幀信息定位關鍵幀。舉例說明,若多媒體數據具體為基于H.264視頻編碼技術進行編碼的視頻數據(也可稱為視頻碼流),關鍵幀信息中可以包括I幀(H.264的關鍵幀)的時間戳、I幀的大小、以及I幀在多媒體數據中的位置,用戶設備在獲取到關鍵幀信息后,可以定位到I幀,并從I幀開始播放該視頻數據。
其中,若多媒體數據被切分成多個切片數據,所述推送設備在依次緩存多個切片數據時,可以依次判斷當前緩存的切片數據中的每一幀是否為關鍵幀,如果是,則獲取到所述關鍵幀信息。
本申請實施例中,驗證請求中還可以指示出所述推送設備待存儲的多媒體數據,例如所述驗證請求中還包括推送設備待存儲的多媒體數據的名稱,從而使得服務器生成用于存儲所述多媒體數據的指定地址。下面說明服務器對指定地址的一種生成方式。
所述驗證請求還指示出所述推送設備待存儲的多媒體數據,在所述服務器生成所述訪問權限信息之前,若所述服務器確定出所述云存儲設備不存在所述多媒體數據,例如所述推送設備第一次訪問云存儲設備,或者所述推送設備不是第一次訪問云存儲設備,但之前未在云存儲設備中存儲所述多媒體數據,則所述服務器在所述云存儲設備上生成指定文件夾,并將所述指定文件夾的地址作為所述指定地址;若所述服務器確定出所述云存儲設備存在所述多媒體數據中的部分數據,例如,推送設備已經向云存儲設備中存儲了多媒體數據的多個切片數據,則所述服務器將所述部分數據所位于的地址作為所述指定地址。
在本申請實施例中,所述服務器能夠對云存儲設備上的各個文件夾,即云存儲設備上的文件目錄進行管理。其中,所述服務器在建立文件夾時,可以按照一定的規則逐級建立。例如圖3所示,所述多媒體數據的第一級目錄對應采集設備標識,第二級目錄對應存儲時間,第二級目錄下存儲有所述多媒體數據和所述索引文件,下面具體說明。
第一級目錄對應采集設備標識,指的是第一級目錄按照采集設備標識進行區分。其中,采集設備標識指的是采集到待存儲的多媒體數據的設備(即采集設備)的標識。例如采集設備具體為網絡攝像機,則采集設備標識為網絡攝像機的標識(IPC ID)。需要說明的是,采集設備與推送設備可以是同一設備,也可以是不同的設備。
第二級目錄對應存儲時間,指的是第二級目錄按照存儲多媒體數據的時間進行區分。其中該存儲時間可以以天為單位,也就是說,存儲時間位于不同天數(即不同日期)的多媒體數據所位于的第二級目錄也不同。例如圖3所示,存儲時間分別為8月1日和8月2日的多媒體數據,分別位于不同的第二級目錄。
第二級目錄下存儲有對應的所述多媒體數據和所述索引文件。例如圖3所示,在存儲時間為8月1日的第二級目錄下,存儲有多媒體數據01、索引文件01,……,多媒體數據10、和索引文件10。
其中,第二級目錄下的各個多媒體數據在命名時,命名方式可以為:保存天數+采集設備標識+開始時間+總時長。其中,開始時間指的是得到多媒體數據開始錄制的時間。
可見,這種文件建立方式,能夠更快地查找多媒體數據,從而能夠使得服務器端的管理軟件邏輯更加簡單,降低軟件開發成本。
在本申請實施例中,為了提高多媒體數據的安全性,還可以進一步對關鍵幀進行加密和/或簽名,下面分別說明。
首先說明加密方式。所述推送設備在將本地緩存的多媒體數據存儲在所述指定地址之前,對所述多媒體數據中的關鍵幀進行加密。也就是說,可以在本地緩存之前,或者在本地緩存之后,對所述關鍵幀進行加密,加密后再將緩存的多媒體數據發送至云存儲設備。并且,所述推送設備在將所述索引文件存儲在所述指定地址之前,在所述關鍵幀信息中添加用于表示所述關鍵幀已加密的信息,從而使得其他設備(例如用戶設備)能夠根據關鍵幀信息判斷出關鍵幀已加密。舉例說明,通用加密算法(例如DES加密算法)對所述關鍵幀進行加密,解密時由用戶設備輸入密鑰。
下面說明簽名方式。本實施例還可以包括:所述推送設備生成簽名信息,所述簽名信息能夠唯一標識所述多媒體數據的關鍵幀,從而能夠實現關鍵幀的防篡改;所述推送設備在將本地緩存的多媒體數據存儲在所述指定地址之前,在所述多媒體數據的用戶自定義信息段中添加所述簽名信息。舉例說明,若所述多媒體數據為視頻數據時,根據所述視頻數據的I幀生成MD5(消息摘要算法第五版)碼,在視頻數據的SEI(H.264的增強型信息)的用戶信息中添加該MD5碼。
可見,本申請實施例中可以通過對關鍵幀加密和/或簽名的方式,提高關鍵幀的安全性,從而提供了多媒體數據的安全性。
可選的,本申請實施例中還可以加入標簽信息,從而實現方便查找以及防篡改的功能。具體地,本實施例還可以包括:所述推送設備生成標簽信息,所述標簽信息用于描述所述多媒體數據的數據特征;所述推送設備將所述索引文件存儲在所述指定地址之前,在所述索引文件中添加所述標簽信息,例如將所述標簽信息添加在所述關鍵幀信息的后面。舉例說明,若所述多媒體數據為視頻數據,所述標簽信息可以包括以下信息中的至少一項:與人相關的信息(例如視頻數據中人為的個數、衣著顏色等特征)、與車相關的信息(例如視頻數據中車輛的個數、車牌號、顏色、車型等特征)、和其他相關信息(例如與動物、非機動車相關的信息)。
下面本申請將提供一種更具體的方法實施例。
請參閱圖4,本申請提供了多媒體數據的云存儲方法的另一種方法實施例。本實施例以推送設備具體為視頻采集設備,多媒體數據具體為視頻數據,并且云存儲設備具體為對象(object)存儲系統為例加以說明。可以理解的是,上述限定不會對本申請其他實施例造成限制。本實施例用于所述視頻采集設備中。
本實施例的所述方法包括5個階段:對時和鑒權階段、切分階段、生成索引階段、安全處理階段以及上傳階段,下面分別對這5個階段進行說明。
1、對時和鑒權階段包括步驟501至504。
501:視頻采集設備向服務器發起時間同步請求,服務器驗證該時間同步請求有效后返回當前時間給視頻采集設備,視頻采集設備收到時間后與服務 器時間進行同步。
其中視頻采集設備還可以判斷是否對時成功,如果是,執行502,如果否,則重新對時。
502:視頻采集設備判斷是否存在有效token,如果是,則表示已完成對時和鑒權階段,如果否,則執行503。
其中,該token指示出視頻采集設備可以操作的指定地址(也可以理解為可以操作的視頻object)、對象存儲系統的標識、操作動作類型為存儲操作的信息以及操作時間等。
503:視頻采集設備向服務器發送驗證請求,驗證請求用于請求對所述推送設備的存儲權限進行驗證。
504:視頻采集設備接收到服務器發送的驗證成功消息,該驗證成功消息包括服務器生成的token,接收到該token即相當于獲取了向對象存儲系統的指定地址存儲數據的權限。
2、切分階段包括505至508。
505:視頻采集設備緩存視頻數據中的一個視頻幀。
506:視頻采集設備判斷視頻數據是否被全部緩存,如果是,則執行508,如果否,則執行507。
507:視頻采集設備判斷當前緩存的視頻幀是否達到預設切片大小,如果是,則執行508,如果否,則返回執行505。其中,當判斷結果為是時,還可以返回執行505,繼續緩存下一個切片數據。
508:視頻采集設備根據當前緩存的視頻幀形成數據包。
通過上述步驟505至508,能夠將視頻數據切分成多個數據包。例如,預設切片大小為64k字節,本實施例可以將視頻數據切分成若干個64k字節的數據包,其中,最后一個數據包的大小可以小于64k字節。
3、生成索引階段包括509和510。
509:在切分階段中執行完505,即緩存一個視頻幀之后,視頻采集設備判斷該視頻幀是否為關鍵幀,例如判斷是否為I幀,如果是,則執行510,如果否,例如該視頻幀為B幀或者P幀,則不對該視頻幀進行處理。
510:視頻采集設備根據I幀生成索引對象(index object)。
在本實施例中,由于云存儲設備具體為對象存儲系統,因此視頻數據和索引文件都可以作為對象進行存儲,即分別作為視頻對象和索引對象。
4、安全處理階段包括511至514。
511:視頻采集設備判斷是否需要對I幀進行加密和/或簽名,如果是,執行512,如果否,執行513。
512:視頻采集設備對I幀進行加密和/或簽名。
513:視頻采集設備判斷是否需要加標簽信息,如果是,則執行514,如果否,則完成安全處理階段。
514:視頻采集設備在索引對象中加入標簽信息,標簽信息用于描述視頻數據的數據特征。
5、上傳階段包括515至517。
515:當執行完除上傳階段外的其余4個階段后,視頻采集設備上傳數據包、索引對象(如果有)和token,即,向對象存儲系統發送上述數據。
其中,數據包按照追加式對象存儲方式上傳,出第一個數據包外的其他數據包都追加在前一個數據包的后面,形成視頻流式存儲,直至達到視頻數據的指定大小。其中,完整的視頻數據(即相當于一個視頻對象)對應一個索引對象。
516:視頻采集設備判斷是否上傳成功,如果是,則執行517,如果否,則返回執行515即重新上傳數據。
其中,若上傳失敗,視頻采集設備還可以檢測是鑒權超時還是網絡超時,如果是鑒權超時,則通過執行502至504重新鑒權,如果是網絡超時,則重新上傳數據。
517:結束流程。之后可以對其他視頻數據進行存儲。
上面從推送設備的角度,介紹了本申請提供的云存儲方法。下面將從服務器的角度,介紹本申請對應提供的權限驗證方法。
請參閱圖2,本申請提供了權限驗證方法的一種方法實施例,本實施例用于云存儲過程中。
本實施例的所述方法包括:
301:所述服務器接收推送設備發送的驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證。
302:所述服務器驗證出所述推送設備具有所述存儲權限。
303:所述服務器生成對云存儲設備上的指定地址的存儲權限信息。
304:所述服務器向所述推送設備發送驗證成功消息,所述驗證成功消息中包括所述存儲權限信息。
上述步驟301至304,已在云存儲方法的實施例中進行了詳細說明,因此這里不再贅述。
下面對本申請實施例提供的云下載方法進行說明。
請參閱圖5,本申請提供了多媒體數據的云下載方法的一種方法實施例。本實施例用于用戶設備(例如圖1所示的用戶設備104)中。
本實施例的所述方法包括601、602和603,下面進行具體介紹。
601:用戶設備向服務器發送驗證請求,所述驗證請求用于請求對所述用戶設備的下載權限進行驗證。
用戶設備需要從云存儲設備下載多媒體數據時,用戶設備會向服務器發送所述驗證請求,所述驗證請求能夠使得所述服務器驗證所述用戶設備是否具有從云存儲設備下載多媒體數據的權限。其中,驗證請求中一般包括用戶設備的標識,使得服務器能夠識別所述用戶設備。
701:所述服務器接收用戶設備發送的驗證請求。
702:所述服務器驗證出所述用戶設備具有所述下載權限。
服務器在接收到所述驗證請求后,會根據驗證請求判斷所述用戶設備是否具有所述下載權限,如果有,則表示用戶設備具有在云存儲設備上下載多媒體數據的權限,因此執行703;如果否,則表示用戶設備不具有在云存儲設備下載多媒體數據的權限,此時所述服務器可以向所述用戶設備發送驗證失敗消息,所述用戶設備可以重新發起驗證。
其中,由于用戶設備一般只對其對應的推送設備存儲的數據具有下載權限,因此,所述服務器具體驗證出的是,所述用戶設備對該用戶設備對應的 推送設備存儲的數據具有下載權限。
703:所述服務器生成對云存儲設備上的指定地址的下載權限信息。
當所述服務器驗證出所述用戶設備具有所述下載權限,所述服務器會獲取指定地址(該指定地址一般為該用戶設備對應的推送設備存儲的數據的地址),并生成所述下載權限信息,所述下載權限信息中包括所述指定地址、云存儲設備的標識以及操作動作類型為下載操作的信息,使得所述用戶設備能夠根據所述標識查找到所述云存儲設備,并根據所述指定地址和所述信息,從所述云存儲設備的所述指定地址下載數據。
其中,所述下載權限信息中還可以包括:所述用戶設備的操作時間,用于限制所述用戶設備對云存儲設備進行下載操作的總時長。所述下載權限信息可以具體為訪問令牌(token)。
704:所述服務器向所述用戶設備發送驗證成功消息,所述驗證成功消息中包括所述下載權限信息。
所述驗證成功消息用于表示所述服務器驗證出所述用戶設備具有在云存儲設備上的下載權限。
關于所述下載權限信息的說明見步驟703,這里不再贅述。
602:所述用戶設備接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的下載權限信息。
關于所述驗證成功消息和下載權限信息的說明見步驟703和704,這里不再贅述。
603:所述用戶設備利用所述下載權限信息,從所述指定地址中下載多媒體數據。本實施例還可以包括:所述用戶設備利用所述下載權限信息,從所述指定地址中下載索引文件,所述索引文件中包括所述多媒體數據的關鍵幀信息。所述關鍵幀信息可以包括關鍵幀的時間戳、大小、以及關鍵幀在多媒體數據中的位置,使得用戶設備能夠根據所述關鍵幀信息定位關鍵幀
其中,603具體包括603A和603B。
603A:所述用戶設備將所述下載權限信息發送給云存儲設備。
云存儲設備會根據該下載權限信息查找到所述指定地址對應存儲的多媒 體數據件,并執行801,即,將該多媒體數據發送至所述用戶設備。
603B:所述用戶設備接收所述云存儲設備發送的所述多媒體數據。
本申請實施例中,若多媒體數據被切分成多個切片數據并依次從云存儲設備下載時,為了解決“當所有的切片數據沒有全部下載時,多媒體數據不能被訪問”的問題,用戶設備可以將依次下載的多個切片數據,利用追加式對象存儲方式下載在所述用戶設備。該追加式對象存儲方式可以使得,當多媒體數據被切分后,可以對已下載的切片數據進行訪問,即無需等到所有的切片數據全部下載后,就能訪問所述多媒體數據。
通過上述技術方案可知,本實施例在對多媒體數據進行云下載時,不需要服務器進行數據中轉,即不需要服務器進行本地緩存,只需服務器進行權限驗證,由用戶設備直接下載多媒體數據,因此將對多媒體數據的處理壓力從服務器分散到各個用戶設備,減少了占用的服務器的資源,從而節省了硬件成本。此外,本申請實施例雖然無需服務器進行數據中轉,但仍然會由服務器進行權限驗證,在減少占用資源的同時還保證了云下載過程中的安全性。
可選的,本實施例還可以包括:所述用戶設備對所述索引文件進行解析獲得所述關鍵幀信息;所述用戶設備根據所述關鍵幀信息播放所述多媒體數據。例如,用戶設備可以通過索引文件中的關鍵幀信息,獲取到關鍵幀在多媒體數據中的位置,并根據該位置播放多媒體數據。
可選的,所述方法還可以包括:若所述用戶設備從關鍵幀信息中獲取到關鍵幀已加密的信息,所述用戶設備在根據所述關鍵幀信息播放所述多媒體數據之前,對所述關鍵幀進行解密。其中,所述用戶設備可以提示用戶輸入密鑰以進行解密。
在本申請實施例中,用戶設備可以直播或者點播多媒體數據。下面分別說明。
若所述用戶設備處于直播狀態,所述服務器獲取存儲時間最新的多媒體數據,并將所述存儲時間最新的多媒體數據的地址作為所述指定地址。
以按照圖3所示的方式存儲多媒體數據為例,服務器根據要訪問的視頻采集設備的標識以及當前日期,查找到對應的全部視頻數據和索引文件,通過關鍵幀信息記錄的時間信息并對比當前時間,查找到時間最新的關鍵幀信 息,并查找到該時間最新的關鍵幀信息對應的視頻數據和索引文件,將該對應的視頻數據和索引文件所位于的地址作為所述指定地址,從而生成下載權限信息。
若所述用戶設備處于點播狀態,所述服務器獲取所述用戶設備待點播數據的標識,將所述待點播數據的標識對應的存儲地址,作為所述指定地址。其中所述待點播數據的標識可以包括采集設備標識和存儲時間。
例如,用戶設備可以根據要訪問的視頻采集設備的標識和待點播視頻的時間,查找到對應的全部視頻數據和索引文件,通過關鍵幀信息記錄的時間信息查找到待點播視頻的時間所對應的關鍵幀信息,并查找該對應的關鍵幀信息對應的視頻數據和索引文件,將該對應的視頻數據和索引文件所位于的地址作為所述指定地址,從而生成下載權限信息。
上面從用戶設備的角度,介紹了本申請提供的云下載方法。下面將從服務器的角度,介紹本申請對應提供的權限驗證方法。
請參閱圖5,本申請提供了權限驗證方法的另一種方法實施例,本實施例用于云下載過程中。
本實施例的所述方法包括:
701:所述服務器接收用戶設備發送的驗證請求,所述驗證請求用于請求對所述用戶設備的下載權限進行驗證。
702:所述服務器驗證出所述用戶設備具有所述下載權限。
703:所述服務器生成對云存儲設備上的指定地址的下載權限信息。
704:所述服務器向所述用戶設備發送驗證成功消息,所述驗證成功消息中包括所述下載權限信息。
上述步驟701至704,已在云下載方法的實施例中進行了詳細說明,因此這里不再贅述。
對應上述方法實施例,本申請還提供了對應的裝置實施例,下面分別說明。
請參閱圖6,本申請提供了推送設備的一種裝置實施例。本實施例的推送設備可以為圖1所示的推送設備101。
本實施例的推送設備包括:發送單元61、接收單元62和緩存單元63。
發送單元61用于向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證。
推送設備需要向云存儲設備存儲多媒體數據時,推送設備會向服務器發送所述驗證請求,所述驗證請求能夠使得所述服務器驗證所述推送設備是否具有在云存儲設備上存儲多媒體數據的權限。其中,驗證請求中一般包括推送設備的標識,使得服務器能夠識別所述推送設備。
本申請實施例中,服務器可以為流媒體服務器(例如圖1所示的服務器102),也可以為鑒權服務器。
接收單元62,用于接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的存儲權限信息。
服務器在接收到所述驗證請求后,會根據驗證請求判斷所述推送設備是否具有所述存儲權限,如果有,則表示推送設備具有在云存儲設備上存儲多媒體數據的權限,因此向推送設備發送驗證成功消息;如果否,則表示推送設備不具有在云存儲設備上存儲多媒體數據的權限,此時所述服務器可以向所述推送設備發送驗證失敗消息,所述推送設備可以重新發起驗證。
緩存單元63,用于對多媒體數據進行本地緩存。
由于多媒體數據一般都比較大,因此緩存單元63在對所述多媒體數據進行本地緩存的大小可以小于多媒體數據的大小,從而將多媒體數據依次緩存為多個切片數據,即相當于切分成多個切片數據并進行緩存。
發送單元61還用于利用所述存儲權限信息,將本地緩存的多媒體數據存儲在所述云存儲設備的所述指定地址。
其中,發送單元61具體用于將所述存儲權限信息和緩存的多媒體數據發送至云存儲設備,從而使得云存儲設備(例如圖1中的云存儲設備103)利用存儲權限信息,將所述多媒體數據存儲在所述指定地址。
本申請實施例中,若多媒體數據被切分成多個切片數據并依次緩存在推送設備,為了解決“當所有的切片數據沒有全部存儲時,多媒體數據不能被訪問”的問題,發送單元61可以將依次緩存的多個切片數據,利用追加式對象存儲方式存儲在所述指定地址。
可選的,所述推送設備還包括:第一生成單元,用于獲取所述多媒體數據的關鍵幀信息,根據所述關鍵幀信息生成索引文件;發送單元61還用于利用所述存儲權限信息,將所述索引文件存儲在所述云存儲設備的所述指定地址。
可選的,所述推送設備還包括:加密單元,用于在發送單元61將本地緩存的多媒體數據存儲在所述指定地址之前,對所述多媒體數據中的關鍵幀進行加密;第一添加單元,用于在發送單元61將所述索引文件存儲在所述指定地址之前,在所述關鍵幀信息中添加用于表示所述關鍵幀已加密的信息。
可選的,所述推送設備還包括:第二生成單元,用于生成標簽信息,所述標簽信息用于描述所述多媒體數據的數據特征;第二添加單元,用于在所述發送單元將所述索引文件存儲在所述指定地址之前,在所述索引文件中添加所述標簽信息。
可選的,所述推送設備還包括:第三生成單元,用于生成簽名信息,所述簽名信息能夠唯一標識所述多媒體數據的關鍵幀;第三添加單元,用于在所述發送單元將本地緩存的多媒體數據存儲在所述指定地址之前,在所述多媒體數據的用戶自定義信息段中添加所述簽名信息。
可選的,所述緩存單元具體用于,將多媒體數據依次緩存為多個切片數據;當將本地緩存的多媒體數據存儲在所述指定地址時,所述發送單元具體用于將依次緩存的多個切片數據,利用追加式對象存儲方式存儲在所述指定地址。
請參閱圖7,本申請提供了服務器的一種裝置實施例,本實施例的所述服務器可以用于云存儲過程中。
本實施例的所述服務器包括:接收單元71、驗證單元72、生成單元73和發送單元74。
接收單元71,用于接收推送設備發送的驗證請求,所述驗證請求用于請求對所述推送設備的存儲權限進行驗證。
驗證單元72,用于驗證出所述推送設備具有所述存儲權限。
生成單元73,用于在驗證單元72驗證出所述推送設備具有所述存儲權限之后,生成對云存儲設備上的指定地址的存儲權限信息。
發送單元74,用于向所述推送設備發送驗證成功消息,所述驗證成功消息中包括所述存儲權限信息。
可選的,所述驗證請求還指示出所述推送設備待存儲的多媒體數據;所述服務器還包括:確定單元;所述確定單元還用于,在生成單元73生成所述訪問權限信息之前,若確定出所述云存儲設備不存在所述多媒體數據,則在所述云存儲設備上生成指定文件夾,并將所述指定文件夾對應的地址作為所述指定地址,若確定出所述云存儲設備存在所述多媒體數據中的部分數據,則將所述部分數據所位于的地址作為所述指定地址。
可選的,所述多媒體數據的第一級目錄對應采集設備標識,第二級目錄對應存儲時間。
請參閱圖8,本申請提供了用戶設備的一種裝置實施例。本實施例的用戶設備可以為圖1所示的用戶設備104。
本實施例的所述用戶設備包括:發送單元81、接收單元82和下載單元83。
發送單元81,用于向服務器發送驗證請求,所述驗證請求用于請求對所述推送設備的下載權限進行驗證。
其中,驗證請求中一般包括用戶設備的標識,使得服務器能夠識別所述用戶設備。
接收單元82,用于接收所述服務器發送的驗證成功消息,所述驗證成功消息包括對云存儲設備的指定地址的下載權限信息。
服務器在接收到所述驗證請求后,會根據驗證請求判斷所述用戶設備是否具有所述下載權限,如果有,則表示用戶設備具有在云存儲設備上下載多媒體數據的權限,因此向所述用戶設備發送驗證成功消息;如果否,則表示用戶設備不具有在云存儲設備下載多媒體數據的權限,此時所述服務器可以向所述用戶設備發送驗證失敗消息,所述用戶設備可以重新發起驗證。
其中,由于用戶設備一般只對其對應的推送設備存儲的數據具有下載權限,因此,所述服務器具體驗證出的是,所述用戶設備對該用戶設備對應的推送設備存儲的數據具有下載權限。
下載單元83,用于利用所述下載權限信息,從所述指定地址中下載多媒體數據。
其中,下載單元83具體用于,將所述下載權限信息發送給云存儲設備;接收所述云存儲設備發送的所述多媒體數據。
本申請實施例中,若多媒體數據被切分成多個切片數據并依次從云存儲設備下載時,下載單元83可以將依次下載的多個切片數據,利用追加式對象存儲方式下載在所述用戶設備。
可選的,下載單元83還用于,利用所述下載權限信息,從所述指定地址中下載索引文件,所述索引文件中包括所述多媒體數據的關鍵幀信息。
可選的,所述用戶設備還包括:解析單元,用于對所述索引文件進行解析獲得所述關鍵幀信息;播放單元,用于根據所述關鍵幀信息播放所述多媒體數據。
可選的,所述用戶設備還包括:解密單元,用于若從關鍵幀信息中獲取到關鍵幀已加密的信息,在根據所述關鍵幀信息播放所述多媒體數據之前,對所述關鍵幀進行解密。其中,所述用戶設備可以提示用戶輸入密鑰以進行解密。
請參閱圖9,本申請提供了服務器的另一種裝置實施例,本實施例的所述服務器可以用于云下載過程中。
本實施例的所述服務器包括:接收單元91、驗證單元92、生成單元93和發送單元94。
接收單元91,用于接收用戶設備發送的驗證請求,所述驗證請求用于請求對所述用戶設備的下載權限進行驗證。
驗證單元92,用于驗證出所述用戶設備具有所述下載權限。
生成單元93,用于在驗證單元92驗證出所述用戶設備具有所述下載權限之后,生成對云存儲設備上的指定地址的下載權限信息。
發送單元94,用于向所述用戶設備發送驗證成功消息,所述驗證成功消息中包括所述下載權限信息。
可選的,所述服務器還包括:獲取單元,用于若所述用戶設備處于直播狀態,獲取存儲時間最新的多媒體數據,并將所述存儲時間最新的多媒體數據的地址作為所述指定地址;若所述用戶設備處于點播狀態,獲取所述用戶設備待點播數據的標識,將所述待點播數據的標識對應的存儲地址,作為所述指定地址。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統,裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統,裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本申請各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。
所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本申請各個實施例所述方法的全部或部分步 驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,以上實施例僅用以說明本申請的技術方案,而非對其限制;盡管參照前述實施例對本申請進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本申請各實施例技術方案的精神和范圍。