專利名稱:一種流媒體數(shù)據(jù)存儲方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,特別是涉及一種流媒體數(shù)據(jù)存儲方法及裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)的普及,利用網(wǎng)絡(luò)傳輸聲音與視頻信號的需求也越來越大。廣播電視 等媒體上網(wǎng)后,也都希望通過互聯(lián)網(wǎng)來發(fā)布自己的音視頻節(jié)目。但是,音視頻在存儲時(shí)文件 的體積一般都十分龐大。在網(wǎng)絡(luò)帶寬還很有限的情況下,花幾十分鐘甚至更長的時(shí)間等待 一個(gè)音視頻文件的傳輸,不能不說是一件讓人頭疼的事。流媒體技術(shù)的出現(xiàn),在一定程度上 使互聯(lián)網(wǎng)傳輸音視頻難的局面得到改善。傳統(tǒng)的網(wǎng)絡(luò)傳輸音視頻等多媒體信息的方式是完全下載后再播放,下載常常要花 數(shù)分鐘甚至數(shù)小時(shí)。而采用流媒體技術(shù),就可實(shí)現(xiàn)流式傳輸,將聲音、影像或動畫由服務(wù)器 向用戶計(jì)算機(jī)進(jìn)行連續(xù)、不間斷傳送,用戶不必等到整個(gè)文件全部下載完畢,而只需經(jīng)過幾 秒或十幾秒的啟動延時(shí)即可進(jìn)行觀看。當(dāng)聲音視頻等在用戶的機(jī)器上播放時(shí),文件的剩余 部分還會從服務(wù)器上繼續(xù)下載。目前,服務(wù)器上存儲流媒體文件的方式是整文件存儲,對視頻的定位通過視頻時(shí) 間點(diǎn)進(jìn)行操作。例如,用戶請求在線播放某段視頻,服務(wù)器需要先查找到這段視頻所在的視 頻文件,然后采用流媒體技術(shù)將該視頻文件傳輸給用戶計(jì)算機(jī),當(dāng)用戶請求的這段視頻傳 輸?shù)接脩粲?jì)算機(jī)后,用戶可以略過前面的內(nèi)容,通過時(shí)間點(diǎn)的選擇直接在線觀看這段視頻, 而視頻文件的剩余部分還會從服務(wù)器上繼續(xù)下載。這種流媒體數(shù)據(jù)的存儲方式使得視頻的在線播放需要將整個(gè)文件進(jìn)行傳輸,而不 能精確定位到用戶需要的播放位置,用戶還需要等待一段時(shí)間,等到播放位置前面的視頻 數(shù)據(jù)傳輸過來之后,才能觀看到想要的視頻。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種流媒體數(shù)據(jù)存儲方法及裝置,以解決不能 進(jìn)行視頻的精確定位的問題。為了解決上述問題,本發(fā)明公開了一種流媒體數(shù)據(jù)存儲方法,包括將流媒體文件分割為多個(gè)流切片;對每個(gè)流切片建立索引信息;建立索引信息與流媒體文件的對應(yīng)關(guān)系;將流媒體文件和索引信息分別存儲。優(yōu)選的,每個(gè)流切片以關(guān)鍵幀標(biāo)識,則對每個(gè)關(guān)鍵幀建立索引信息。優(yōu)選的,所述方法還包括根據(jù)所述索引信息檢索關(guān)鍵幀在流媒體文件中的位置,并直接從該關(guān)鍵幀的時(shí)間 點(diǎn)開始播放。優(yōu)選的,將所述流媒體文件存儲到硬盤,將所述索引信息儲存到數(shù)據(jù)庫。
3
本發(fā)明還提供了一種流媒體數(shù)據(jù)存儲裝置,包括文件分割單元,用于將流媒體文件分割為多個(gè)流切片;建立索引單元,用于對每個(gè)流切片建立索引信息;映射單元,用于建立索引信息與流媒體文件的對應(yīng)關(guān)系;存儲單元,用于將流媒體文件和索引信息分別存儲。優(yōu)選的,每個(gè)流切片以關(guān)鍵幀標(biāo)識,則所述建立索引單元對每個(gè)關(guān)鍵幀建立索引
fn息O優(yōu)選的,所述裝置還包括檢索單元,用于根據(jù)所述索引信息檢索關(guān)鍵幀在流媒體文件中的位置,并直接從 該關(guān)鍵幀的時(shí)間點(diǎn)開始播放。優(yōu)選的,所述存儲單元包括數(shù)據(jù)庫,用于存儲所述索引信息;硬盤,用于存儲所述流媒體文件。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)本發(fā)明提供了一種新穎的流媒體數(shù)據(jù)存儲方法,該方法將流媒體文件分割為多個(gè) 流切片,然后對每個(gè)流切片建立索引信息,并建立索引信息與流媒體文件的對應(yīng)關(guān)系,最后 將流媒體文件和索引信息分別存儲。本發(fā)明由于對流媒體文件的多個(gè)流切片建立了索引,所以在播放該流媒體文件中 的某段視頻時(shí),通過索引信息就可以直接查找到這段視頻在整個(gè)流媒體文件中的位置,并 進(jìn)行播放。這樣,用戶不需要花時(shí)間等待前面內(nèi)容的傳輸和播放,就可以直接從視頻中任一 時(shí)間點(diǎn)開始觀看。因此,本發(fā)明實(shí)現(xiàn)了視頻的精確定位。
圖1是本發(fā)明實(shí)施例一所述一種流媒體數(shù)據(jù)存儲方法的流程圖;圖2是本發(fā)明實(shí)施例二所述一種流媒體數(shù)據(jù)播放方法的流程圖;圖3是本發(fā)明實(shí)施例三所述一種流媒體數(shù)據(jù)存儲裝置的結(jié)構(gòu)圖;圖4是本發(fā)明實(shí)施例四所述一種流媒體數(shù)據(jù)播放系統(tǒng)的結(jié)構(gòu)圖。
具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí) 施方式對本發(fā)明作進(jìn)一步詳細(xì)的說明。在流媒體技術(shù)中,服務(wù)器上存儲流媒體文件,并根據(jù)用戶請求將流媒體數(shù)據(jù)傳輸 到客戶端播放。本發(fā)明提出了一種新穎的流媒體數(shù)據(jù)存儲方法,采用流切片技術(shù),將流媒體 文件進(jìn)行切片存儲,從而實(shí)現(xiàn)對流媒體數(shù)據(jù)的精確定位。下面通過實(shí)施例進(jìn)行詳細(xì)說明。實(shí)施例一參照圖1,是本發(fā)明實(shí)施例一所述一種流媒體數(shù)據(jù)存儲方法的流程圖。步驟101,將流媒體文件分割為多個(gè)流切片;服務(wù)器在存儲流媒體文件之前,首先將文件劃分為切片,所述切片可以理解為數(shù)據(jù)塊,即將一個(gè)整文件分割為多個(gè)數(shù)據(jù)塊。 優(yōu)選的,在流媒體數(shù)據(jù)中,可以通過關(guān)鍵幀來標(biāo)識每個(gè)切片。幀是流媒體數(shù)據(jù)的最 小單位,關(guān)鍵幀是特殊的幀,用來定義視頻圖像中的變化,是圖像運(yùn)動或變化中的關(guān)鍵動作 所處的那一幀,包括對象的運(yùn)動和特點(diǎn)(如大小和顏色),在場景中添加或刪除對象以及幀 動作的添加等。任何時(shí)候,當(dāng)用戶希望圖像發(fā)生改變,或者希望發(fā)生某種動作,必須使用關(guān) 鍵幀。關(guān)鍵幀與關(guān)鍵幀之間的圖像幀可以由軟件來創(chuàng)建。步驟102,對每個(gè)流切片建立索引信息;可以對每個(gè)關(guān)鍵幀建立索引信息;步驟103,建立索引信息與流媒體文件的對應(yīng)關(guān)系;對每個(gè)流媒體文件中的關(guān)鍵幀建立索引之后,還需要對應(yīng)流媒體文件建立二級索 引,即第一級索引可以查找到某個(gè)流媒體文件,第二級索引可以查找到該文件中的某個(gè)關(guān) 鍵幀。其中,第一級索引可以將流媒體文件名設(shè)置為索引關(guān)鍵詞,第二級索引可以將關(guān) 鍵幀標(biāo)識設(shè)置為索引關(guān)鍵詞。步驟104,將流媒體文件和索引信息分別存儲。對流媒體文件建完索引之后,就可以將整個(gè)文件進(jìn)行存儲,同時(shí)還存儲索引信息。 通常,可以將流媒體文件存儲到硬盤等空間較大的存儲介質(zhì)上,而將索引信息存儲到內(nèi)存 數(shù)據(jù)庫上,便于系統(tǒng)隨時(shí)讀取。需要說明的是,硬盤上存儲流媒體文件并不是以流切片存儲,仍是以整個(gè)文件存 儲,流切片技術(shù)只是用于建立流切片索引。基于上述存儲方式,就可以精確定位到某個(gè)關(guān)鍵幀,從關(guān)鍵幀對應(yīng)的時(shí)間點(diǎn)開始 播放流媒體數(shù)據(jù)。實(shí)施例二參照圖2,是本發(fā)明實(shí)施例二所述一種流媒體數(shù)據(jù)播放方法的流程圖。步驟201,用戶向流媒體服務(wù)器發(fā)送播放視頻的請求;用戶打開某個(gè)視頻的播放窗口,并拖動鼠標(biāo)點(diǎn)擊從某個(gè)時(shí)間點(diǎn)開始播放,此時(shí)向 網(wǎng)絡(luò)端的服務(wù)器發(fā)出請求,所述請求中包含了要播放的視頻名稱,以及開始播放的時(shí)間點(diǎn)
^fn 息。步驟202,流媒體服務(wù)器根據(jù)所述請求,讀取索引信息;步驟203,根據(jù)索引信息,查找請求的視頻文件以及該視頻文件的關(guān)鍵幀;利用索引信息,可以在一級索引中,根據(jù)請求的視頻文件名找到相應(yīng)的視頻文件, 然后在二級索引中,根據(jù)開始播放的時(shí)間點(diǎn)在該視頻文件中找到對應(yīng)的關(guān)鍵幀位置。步驟204,從該關(guān)鍵幀的位置開始播放視頻文件。服務(wù)器直接從該視頻文件的關(guān)鍵幀位置讀取數(shù)據(jù),并傳給用戶計(jì)算機(jī)播放。上述流程可用于視頻直播或在線點(diǎn)播的流媒體數(shù)據(jù)播放,服務(wù)器可以精確定位到 某個(gè)關(guān)鍵幀的位置,用戶不需要花時(shí)間等待該關(guān)鍵幀前面內(nèi)容的傳輸和播放,就可以直接 從視頻中任一時(shí)間點(diǎn)開始觀看。實(shí)施例三參照圖3,是本發(fā)明實(shí)施例三所述一種流媒體數(shù)據(jù)存儲裝置的結(jié)構(gòu)圖。
所述裝置主要包括文件分割單元31,用于將流媒體文件分割為多個(gè)流切片;建立索引單元32,用于對每個(gè)流切片建立索引信息;映射單元33,用于建立索引信息與流媒體文件的對應(yīng)關(guān)系;存儲單元34,用于將流媒體文件和索引信息分別存儲。優(yōu)選的,每個(gè)流切片可以關(guān)鍵幀標(biāo)識,則所述建立索引單元32可以對每個(gè)關(guān)鍵幀
建立索引信息。所述索引信息可以為多級索引,比較簡單的一種方式是建立二級索引,其中第一 級索引以流媒體文件名為索引關(guān)鍵詞,第二級索引以流媒體文件中的關(guān)鍵幀標(biāo)識為索引關(guān) 鍵詞。優(yōu)選的,所述存儲單元34可以包括數(shù)據(jù)庫,用于存儲所述索引信息,通常設(shè)置在內(nèi)存便于系統(tǒng)讀?。挥脖P,用于存儲所述流媒體文件,通常存儲空間比較大,而且是整文件存儲。上述存儲裝置可用于視頻直播或在線點(diǎn)播的流媒體數(shù)據(jù)存儲,利用所述存儲裝置 可以精確定位到某個(gè)關(guān)鍵幀,從關(guān)鍵幀對應(yīng)的時(shí)間點(diǎn)開始播放流媒體數(shù)據(jù)。優(yōu)選的,所述裝置還可以包括檢索單元,用于根據(jù)所述索引信息檢索關(guān)鍵幀在流媒體文件中的位置,并直接從 該關(guān)鍵幀的時(shí)間點(diǎn)開始播放。所述裝置實(shí)現(xiàn)了流媒體數(shù)據(jù)的快速、精確定位,可以精確定位到某個(gè)關(guān)鍵幀的位 置,用戶不需要花時(shí)間等待該關(guān)鍵幀前面內(nèi)容的傳輸和播放,就可以直接從視頻中任一時(shí) 間點(diǎn)開始觀看。實(shí)施例四參照圖4,是本發(fā)明實(shí)施例四所述一種流媒體數(shù)據(jù)播放系統(tǒng)的結(jié)構(gòu)圖。所述系統(tǒng)主要包括客戶端1和服務(wù)器端2,所述客戶端1用于請求和播放流媒體數(shù) 據(jù),所述服務(wù)器端2用于采用流切片技術(shù)存儲流媒體數(shù)據(jù),并響應(yīng)客戶端1的請求。所述服務(wù)器端2包括流媒體服務(wù)器21、流媒體存儲集群22和索引服務(wù)器23,其 中流媒體服務(wù)器21,用于響應(yīng)客戶端1請求;流媒體存儲集群22,用于存儲流媒體文件;索引服務(wù)器23,用于對流媒體文件的關(guān)鍵幀建立索引信息并存儲,根據(jù)索引信息 檢索關(guān)鍵幀。所述系統(tǒng)的處理過程如下客戶端1向流媒體服務(wù)器21發(fā)送請求,流媒體服務(wù)器21收到請求后,解析獲得需 要獲取的視頻名稱及播放時(shí)間點(diǎn),并通知索引服務(wù)器23 ;索引服務(wù)器23根據(jù)索引信息進(jìn)行 檢索,首先檢索視頻名稱查找到相應(yīng)的視頻文件,然后進(jìn)一步檢索該視頻文件中所述播放 時(shí)間點(diǎn)對應(yīng)的關(guān)鍵幀位置,當(dāng)檢索到關(guān)鍵幀位置之后,通知流媒體服務(wù)器21 ;流媒體服務(wù) 器21從流媒體存儲集群22上讀取從關(guān)鍵幀開始的流媒體數(shù)據(jù),并響應(yīng)客戶端1請求,將從 該關(guān)鍵幀位置開始的數(shù)據(jù)返回給客戶端1 ;客戶端1收到流媒體數(shù)據(jù)后,就可以直接從該關(guān) 鍵幀對應(yīng)的時(shí)間點(diǎn)開始播放。
所述系統(tǒng)實(shí)現(xiàn)了流媒體數(shù)據(jù)的精確定位,同時(shí)縮短了用戶的等待時(shí)間。本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與 其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。對于裝置和系統(tǒng) 實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施 例的部分說明即可。以上對本發(fā)明所提供的一種流媒體數(shù)據(jù)存儲方法及裝置,進(jìn)行了詳細(xì)介紹,本文 中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫 助理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思 想,在具體實(shí)施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對 本發(fā)明的限制。
權(quán)利要求
一種流媒體數(shù)據(jù)存儲方法,其特征在于,包括將流媒體文件分割為多個(gè)流切片;對每個(gè)流切片建立索引信息;建立索引信息與流媒體文件的對應(yīng)關(guān)系;將流媒體文件和索引信息分別存儲。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于每個(gè)流切片以關(guān)鍵幀標(biāo)識,則對每個(gè)關(guān)鍵幀建立索引信息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,還包括根據(jù)所述索引信息檢索關(guān)鍵幀在流媒體文件中的位置,并直接從該關(guān)鍵幀的時(shí)間點(diǎn)開 始播放。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于將所述流媒體文件存儲到硬盤,將所述索引信息儲存到數(shù)據(jù)庫。
5.一種流媒體數(shù)據(jù)存儲裝置,其特征在于,包括 文件分割單元,用于將流媒體文件分割為多個(gè)流切片; 建立索引單元,用于對每個(gè)流切片建立索引信息; 映射單元,用于建立索引信息與流媒體文件的對應(yīng)關(guān)系; 存儲單元,用于將流媒體文件和索引信息分別存儲。
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于每個(gè)流切片以關(guān)鍵幀標(biāo)識,則所述建立索引單元對每個(gè)關(guān)鍵幀建立索引信息。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括檢索單元,用于根據(jù)所述索引信息檢索關(guān)鍵幀在流媒體文件中的位置,并直接從該關(guān) 鍵幀的時(shí)間點(diǎn)開始播放。
8.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述存儲單元包括 數(shù)據(jù)庫,用于存儲所述索引信息;硬盤,用于存儲所述流媒體文件。
全文摘要
本發(fā)明提供了一種流媒體數(shù)據(jù)存儲方法及裝置,以解決不能進(jìn)行視頻的精確定位的問題。所述方法包括將流媒體文件分割為多個(gè)流切片;對每個(gè)流切片建立索引信息;建立索引信息與流媒體文件的對應(yīng)關(guān)系;將流媒體文件和索引信息分別存儲。優(yōu)選的,可以對每個(gè)關(guān)鍵幀建立索引信息。本發(fā)明實(shí)現(xiàn)了視頻的精確定位,用戶不需要花時(shí)間等待前面內(nèi)容的傳輸和播放,就可以直接從視頻中任一時(shí)間點(diǎn)開始觀看。
文檔編號H04N7/24GK101917388SQ20091024281
公開日2010年12月15日 申請日期2009年12月17日 優(yōu)先權(quán)日2009年12月17日
發(fā)明者何宇飛, 李軍, 溫曉瑤, 閆鵬 申請人:新奧特(北京)視頻技術(shù)有限公司