專利名稱:視頻文件分段下載的方法、系統(tǒng)及裝置的制作方法
技術領域:
本發(fā)明涉及計算機互聯(lián)網(wǎng)技術領域,尤其涉及^L頻文件分段下載的方法、 系統(tǒng)及裝置。
背景技術:
通過論壇、網(wǎng)站推薦等信息交流的方式,用戶可以獲得對某部影片精彩片 段的評價,從而產(chǎn)生對該影片這段精彩片段的需求。目前,用戶要獲取這段精 彩片段有兩種途徑, 一是從視頻分享站點下載整部電影,觀看其中的這段精彩 片段;另一種方式是從視頻分享站點找到這段精彩片段的視頻文件進行下載或 在線觀看。如果采用第一種方式,由于視頻文件所占的空間較大,下載整部電影所花 費的時間較長,比如,有時用戶需要觀看視頻片段可能只有10分鐘,但卻必 須全部下載整部電影的內容,如120分鐘。這種方法花費的時間長,增加了用 戶的下載帶寬及時間成本。第二種方式中,視頻分享站點的精彩片段是由其中某個用戶將完整的影片 下載到本地,然后通過視頻編輯軟件對該影片進行片段截取,將截取后的視頻 片段保存為一個新的視頻文件,再將該新的視頻文件上傳到視頻分享站點,最 后其它用戶就可以通過網(wǎng)絡從該視頻分享站點上下載該3見頻片段,而不用下載 整個影片。這種方法在一定程度上滿足了用戶對視頻片段的需求,但由于通過 視頻編輯軟件進行片段截取,對于大多數(shù)用戶來說,操作比較復雜,而且目前 大部分用戶的寬帶上傳的速度較慢,導致制作視頻片段分享的用戶較少,因而 視頻分享站點的視頻片段資源也較少,很多精彩視頻片段都不存在共享。另夕卜, 這種方法提供的影片的視頻片段都是固定的,用戶無法通過網(wǎng)絡下載自己需要的某個影片的其中的一個片#殳。 發(fā)明內容有鑒于此,本發(fā)明實施例提供一種視頻文件分段下載的方法,用以解決現(xiàn) 有技術中存在的用戶成本高、視頻片段共享資源少及視頻片段下載不靈活的問題。本發(fā)明實施例提供的一種視頻文件分段下載的方法,包括步驟A:服務器接收用戶端分段下載視頻文件的請求,其中包含用戶設定 的欲截取視頻文件片段的起始時間點和結束時間點,確定所述視頻文件中保存 的該起始時間點和結束時間點對應的視頻幀和/或音頻幀的時間戳,并根據(jù)所述 視頻文件中保存的視頻幀和/或音頻幀的時間戳與該視頻幀和/或該音頻幀在所 述視頻文件中的偏移位置的對應關系,獲得該起始時間點和該結束時間點對應 的視頻幀和/或音頻幀在所述^L頻文件中的偏移位置,所述^見頻幀和/或音頻幀 的時間戳指該視頻幀和/或音頻幀在視頻文件中所對應的時間點;步驟B:服務器根據(jù)所述該起始時間點和該結束時間點對應的視頻幀和/ 或音頻幀在所述視頻文件中的偏移位置,獲取在該起始時間點和該結束時間點 之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);步驟C:服務器將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給所述用戶端。本發(fā)明實施例提供的一種實現(xiàn)視頻文件分段下載的系統(tǒng),包括服務器,用于接收用戶端分段下載視頻文件的請求,并根據(jù)所述請求中用 戶設定的欲截取視頻文件片段的起始時間點和結束時間點,以及該視頻文件中 保存的信息,獲取在所述起始時間點和結束時間點之間的視頻片段的視頻幀和 /或音頻幀數(shù)據(jù),并將包含所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā)送給用戶端;用戶端,用于提出分段下載視頻文件的請求,并接收所述服務器發(fā)送的包 含分段視頻對應的所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包。本發(fā)明實施例提供的一種服務器,包括偏移位置獲取單元,用于在接收在用戶端分段下載視頻文件的請求時,確 定所述視頻文件中保存的該起始時間點和結束時間點對應的#見頻幀和/或音頻 幀的時間戳,并根據(jù)所述視頻文件中保存的視頻幀和/或音頻幀的時間戳與該視 頻幀和/或音頻幀在所述視頻文件中的偏移位置的對應關系,獲取所述請求中用 戶設定的欲截取視頻文件片段的起始時間點和結束時間點對應的視頻幀和/或音頻幀在所述視頻文件中的偏移位置;視頻片段截取單元,用于根據(jù)所述起始時間點和結束時間點對應的視頻幀 和/或音頻幀在所述視頻文件中的偏移位置,獲取在該起始時間點和該結束時間點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);發(fā)送單元,用于將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給用戶端。本發(fā)明實施例提供的一種客戶端,包括接收單元,用于向一服務器提出分段下載視頻文件的請求,并接收服務器 發(fā)送的包含分段視頻對應的所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包。本發(fā)明實施例根據(jù)用戶設定的時間段在服務器端對視頻文件進行截取,然 后將截取后的視頻文件發(fā)送到客戶端,因此,用戶可以下載視頻文件中自定義 的視頻片段,降低了用戶的下載成本,同時,也解決了^L頻片段共享資源少的 問題。
圖1為本發(fā)明實施例實現(xiàn)視頻文件分段下載的方法具體流程圖;圖2為本發(fā)明實施例中用戶設定起始時間點和結束時間點的一種場景圖;圖3為本發(fā)明實施例實現(xiàn)視頻文件分段下載的系統(tǒng)結構示意圖;圖4為本發(fā)明實施例提供的一種服務器的結構示意圖;圖5為本發(fā)明實施例提供的一種客戶端的結構示意圖。
具體實施方式
本發(fā)明實施例中服務器接收到用戶端分段下栽視頻文件的請求后,根據(jù)所 述請求中包含的用戶設定的欲截取視頻文件片段的起始時間點和結束時間點, 以及所述#見頻文件中保存的4見頻幀和/或音頻幀的時間戳與該#見頻幀和/或音頻 幀在所述視頻文件中偏移位置的對應關系,查找到與所述起始時間點和所述結 束時間點對應的視頻幀和/或音頻幀在所述視頻文件中的偏移位置,然后根據(jù)所 述偏移位置獲取所述視頻文件在該起始時間點和結束時間點之間的視頻片段 的視頻幀和/或音頻幀數(shù)據(jù),并給所述視頻片段設定新的索引和文件頭,連同所 述視頻幀和/或音頻幀數(shù)據(jù)一起封裝成一個新的視頻文件,然后將該新的視頻文 件發(fā)送至用戶端,也可以將所述視頻幀和/或音頻幀數(shù)據(jù)發(fā)送到用戶端后,再為 所述視頻片段設置新的索引和文件頭,封裝成一個新的視頻文件。這樣可以實 現(xiàn)用戶自定義的視頻片段的下載,解決了視頻片段資源不足的問題,同時,也 能縮短用戶下載的時間,節(jié)約用戶的下載成本。另外,服務器在接收到用戶分段下載視頻文件的請求之前,還可以按照設 定的頻率對所述視頻文件的視頻幀進行截取,并記錄所截取的每個視頻幀對應的時間點,同時,采集并記錄與所截取的每個一見頻幀對應的^L頻畫面,這樣當間點時,所選擇的時間點為所述^L頻幀對應的時間點,并且,當用戶i殳定欲截 取視頻片段的起始時間點和結束時間點時,服務器讀取并顯示時間點與用戶選 擇的起止時間點對應的所述視頻畫面,以幫助用戶判斷所選擇的時間點是否為 所需要的時間點。下面接合說明書附圖對本發(fā)明的具體實施方式
進行說明。 本發(fā)明實施例一所提供的一種視頻文件分段下載的方案,其具體實現(xiàn)流程 如圖1所示,包括以下步驟步驟101:用戶根據(jù)服務器提供的設置起止時間點的對話框,設置欲截取點和結束時間點,并向服務器發(fā)出分段下載視頻文件的請 求,該請求包含用戶設定的欲截取視頻片段的起始時間點和結束時間點。根據(jù)服務器提供的設置起止時間點的方式不同,用戶設置所述視頻片段的 起始時間點和結束時間點的方式也不同。服務器提供的設置起止時間點的方式包括但不限于以下幾種方式一、服務器根據(jù)所述視頻文件的時間,設置供用戶選擇的進度條,該 進度條上設置的每個時間刻度對應所述視頻文件的 一個時間點;方式二、服務器設置一個可以輸入具體時間的對話框,該對話框包括至少 兩個變量, 一個為起始時間點,另一個為結束時間點。方式一中,服務器設置進度條上的時間刻度時,可以根據(jù)所述視頻文件的 視頻幀所對應的時間點來設置,因此,在步驟101之前進一步包括步驟100a:服務器按照設定的頻率獲取視頻文件的視頻幀,記錄所獲取的 每個^L頻幀所^t應的時間點。步驟100b:服務器根據(jù)所獲取的每個視頻幀所對應的時間點,設置進度條 上的時間刻度,每個時間點對應一個時間刻度。比如對于一個120分鐘的電影a,為其指定一個獲取一見頻幀的頻率,例如 從零秒開始每隔30秒獲取一視頻幀,記錄所獲取的每個視頻幀的時間點,則 該電影a被設置了 241個時間點標記。如圖2所示,用戶設置欲下載視頻片段 的起止時間點時,服務器可以向用戶提供一進度條,該進度條代表完整視頻的 時間長度,該進度條上包括若干時間刻度,例如可按照所獲取的時間點標記設 置時間刻度,用戶可以通過拖動進度條上的A、 B標簽來選擇欲截取視頻片段 起止時間點。服務器在獲取所述時間點時,還可以截取每個時間點對應的視頻畫面,以 供用戶在設置起止時間點時參考所選擇的視頻片段是否為所需要的視頻片段, 因此,步驟100b之后,該方法還進一步包括步驟100c:服務器采集并記錄與所述每個^L頻幀的時間點對應的一見頻畫面。這樣,當用戶拖動進度條選擇欲截取的視頻片段時,服務器向用戶展示與 用戶所選擇的起始時間點和結束時間點對應的一見頻畫面,用戶可以才艮據(jù)該畫 面,確定所選擇的視頻片段是否為所需要選擇的片段,如圖2所示,為該情況 下,用戶選擇起止時間點的一個場景。由于進度條上的時間刻度可能不夠精確,例如兩個時間刻度之間間隔為30 秒,用戶如果希望選擇第20秒為起止時間點,則無法通過進度條選擇,這種情況下,用戶可以選擇第二種方式設置起止時間點。如圖2所示,用戶可以直 接在A、 B標簽上輸入時間來確定起止時間點,例如"1分20秒,,至"5分10 秒"。當然,服務器也可以專門提供一個設置畫面,以供用戶輸入起止時間點。對應地,用戶"i殳置起止時間點的方式也包括,f旦不限于以下幾種方式一、用戶拖動進度條上的標尺,選擇起止時間點;方式二、用戶在服務器提供的設置起止時間點的對話框中,輸入欲截取一見 頻文件片段的起始時間點和結束時間點。步驟102:服務器接收到用戶分段下載視頻文件的請求后,根據(jù)所述視頻 文件中保存的時間戳與視頻幀和/或音頻幀的對應關系,獲取用戶設定的起始時 間點結束時間點對應的視頻幀和/或音頻幀在該視頻文件中的偏移位置。雖然在互聯(lián)網(wǎng)上存在視頻文件的格式有多種,但每種格式視頻文件都有著 共同的總體框架。 一般地,大多數(shù)格式的視頻文件主要由以下三個部分組成 文件頭、幀數(shù)據(jù)和索引,它們分別用不同的四字符碼(FOURCC)或全局唯一 標識符GUID(Globally Unique Identifier)來標識。其中文件頭描述了該3見頻文件 和其中每個流的總體信息,如媒體類型、播放總時長、最大碼率、視頻圖像的 寬高、幀數(shù)、是否有索引等;幀數(shù)據(jù)占據(jù)了文件的主要部分,它包含了每個視 頻和音頻幀的數(shù)據(jù);索引相當于一個目錄,它主要保存了每個幀的時間戳與它 在文件中偏移位置的對應關系,以便實現(xiàn)對視頻文件內數(shù)據(jù)的隨機存取功能, 可以通過這個索引,找到某個時間點所對應的字節(jié)所在位置。假設欲截取的時間段為A秒到B秒,通過對視頻文件索引結構的讀取和 分析,可以找到時間戳在A秒的視頻幀和/或音頻幀在視頻文件的字節(jié)段中的 偏移位置,同樣地可以找到時間戳在B秒的一見頻幀和/或音頻幀在一見頻文件的 字節(jié)段中的偏移位置。如果在所設定的時間點,沒有對應的視頻幀和/或音頻幀,則選擇所設定的 時間點附近的視頻幀及或音頻幀,例如,視頻文件的索引中,記錄有時間戳為 20秒和22秒的一見頻幀,而用戶設定的時間點為第21秒,則可選擇時間戳為 20秒的視頻幀作為該時間點對應的視頻幀,也可選擇時間戳22秒的^L頻幀作 為該時間點對應的 一見頻幀。但如果與起始時間點對應的視頻幀的時間戳與音頻幀的時間戳不一致,為 了符合人的感觀習慣,所選取的與所述起始時間點對應的視頻幀的時間戳應該 早于與所述起始時間點對應的音頻幀的時間戳,因為用戶 一般不習慣只有聲音 而沒有畫面。步驟103:服務器根據(jù)所述起始時間點及結束時間點對應的視頻幀和/或音 頻幀在該視頻文件中的偏移位置,獲取存儲在所述起始時間點和所述結束時間 點之間的視頻幀和/或音頻幀數(shù)據(jù)。步驟104:服務器將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包 發(fā)送給用戶端。不同視頻文件格式對幀的存儲方式有所不同,有的把一個幀分開放入大小 固定的多個包(Packet)或塊(Chunk),或由多個幀組合在一起i文入一個大 小固定的包,有的則由包頭信息指示包大小和包中含有的具體數(shù)據(jù)。為了使用戶在下載所述視頻片段數(shù)據(jù)后,能夠播放該視頻片段,服務器在 將所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)發(fā)送給用戶端之前,為所述視頻片 段設置新的索引和頭文件,進行打包,因此,步驟104具體包括步驟104a:服務器以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)作為 新的視頻文件的起始視頻幀和/或音頻幀,并順序設置在該起始時間點和該結束時間點之間的視頻片段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應 關系,也即建立一個新的索引。步驟104b:服務器保存描述所述視頻片段屬性的數(shù)據(jù),即為所述視頻片段 設置文件頭信息。該文件頭記錄的所述視頻片段的屬性包括所述視頻片段的 文件類型、播放總時長、最大碼率、視頻圖像的寬高、幀數(shù)、是否有索引等。步驟104c:服務器將所獲取的視頻幀和/或音頻幀數(shù)據(jù)、索引及文件頭信 息封裝得到新的視頻文件,并將該視頻文件發(fā)送給用戶端。也可以將所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)發(fā)送給用戶端后,在用戶 端進行打包4喿作,因此,步驟104也可以具體包括步驟104 I :服務器將所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)發(fā)送給用戶端;步驟104II:用戶端以用戶設定的起始時間點對應的視頻幀和/或音頻幀數(shù) 據(jù)為起始視頻幀和/或音頻幀,順序設置所述視頻幀和/或音頻幀的偏移位置與 時間點的對應關系,也即建立一個新的索引。步驟104III:用戶端保存描述所述視頻片段屬性的數(shù)據(jù),即為所述一見頻片 段設置文件頭信息。該文件頭記錄的所述視頻片段的屬性包括所述視頻片段 的文件類型、播放總時長、最大碼率、視頻圖像的寬高、幀數(shù)、是否有索引等。步驟104IV:用戶端將所接收的視頻幀和/或音頻幀數(shù)據(jù)、以及建立的新索 引和文件頭信息封裝得到新的視頻文件,保存該視頻文件,即視頻片段文件。針對上述的方法,參見圖3所示,本發(fā)明實施例一種實現(xiàn)視頻文件分段下 載的系統(tǒng)結構示意圖,包括服務器和用戶端。服務器,用于接收用戶端分段下載視頻文件的請求,并根據(jù)所述請求中用 戶設定的欲截取視頻文件片段的起始時間點和結束時間點,以及該視頻文件中 保存的信息,獲取在所述起始時間點和結束時間點之間的視頻片段的視頻幀和 /或音頻幀數(shù)據(jù),并將包含所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā)送給用戶端;用戶端,用于接收所述服務器發(fā)送的包含所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包。所述服務器可以包括偏移位置獲取單元、視頻片段截取單元和發(fā)送單元。其中偏移位置獲取單元,用于確定所述視頻文件中保存的該起始時間點和結束 時間點對應的視頻幀和/或音頻幀的時間戳,并根據(jù)所述視頻文件中保存的視頻 幀和/或音頻幀的時間戳與該視頻幀和/或音頻幀在所述視頻文件中的偏移位置 的對應關系,獲耳又所述起始時間點和結束時間點對應的3見頻幀和/或音頻幀在所 述^L頻文件中的偏移位置;視頻片段截取單元,用于根據(jù)所述起始時間點和結束時間點對應的視頻幀 和/或音頻幀在所述#見頻文件中的偏移位置,獲:f又在該起始時間點和該結束時間 點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);發(fā)送單元,用于將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給用戶端。進一步地,所述服務器還可以包括封裝單元,用于以所述起始時間點對 應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/或音頻幀,順序設置在該起始時 間點和該結束時間點之間的視頻片段的每個視頻幀和/或音頻幀的偏移位置與 時間點的對應關系,并保存描述所述視頻片段屬性的數(shù)據(jù);則所述發(fā)送單元發(fā)送的數(shù)據(jù)包中進一步包括所述視頻片段的每個視頻幀 和/或音頻幀的偏移位置與時間點的對應關系、所述視頻片段屬性的數(shù)據(jù);或,所述用戶端包括封裝單元,用于根據(jù)所述服務器提供的所述用戶設定的欲截取視頻片段的 起始時間點和結束時間點,以所述起始時間點對應的一見頻幀和/或音頻幀數(shù)據(jù)為 起始視頻幀和/或音頻幀,順序設置在該起始時間點和該結束時間點之間的視頻 片段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系,并保存描述所 述視頻片段屬性的數(shù)據(jù)。圖4為本發(fā)明實施例提供的一種服務器的結構示意圖,包括偏移位置獲 取單元、視頻片段截取單元和發(fā)送單元。其中偏移位置獲取單元,用于在接收在用戶端分段下載視頻文件的請求時,確 定所述^L頻文件中保存的該起始時間點和結束時間點對應的^L頻幀和/或音頻 幀的時間戳,并根據(jù)所述視頻文件中保存的視頻幀和/或音頻幀的時間戳與該視 頻幀和/或音頻幀在所述^L頻文件中的偏移位置的對應關系,獲:f又所述請求中用 戶設定的欲截取視頻文件片段的起始時間點和結束時間點對應的視頻幀和/或 音頻幀在所述^L頻文件中的偏移位置;視頻片段截取單元,用于根據(jù)所述起始時間點和結束時間點對應的視頻幀 和/或音頻幀在所述^L頻文件中的偏移位置,獲取在該起始時間點和該結束時間 點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);發(fā)送單元,用于將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給用戶端。進一步地,該服務器中還可以包括封裝單元,用于在所述發(fā)送單元向用戶 端發(fā)送數(shù)據(jù)包之前,以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視 頻幀和/或音頻幀,順序設置在該起始時間點和該結束時間點之間的視頻片段的 每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系,并保存描述所述視頻 片段屬性的數(shù)據(jù),然后將所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)、所述視頻片 段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系以及描述所述視 頻片段屬性的數(shù)據(jù),封裝為一個視頻文件。進一步地,服務器還可以包括起止時間點設置單元,用于根據(jù)所述^L頻 文件的時間長度,設置供用戶選擇起始時間點和結束時間點的進度條。其中所述起止時間點設置單元還可以進一步用于,提供用戶輸入欲截取視 頻文件片段的起始時間點和結束時間點的對話框。該服務器進一步包括視頻幀獲取單元,用于在接收到用戶的分段下載視 頻文件的請求之前,按照設定的頻率獲取所述視頻文件的視頻幀,并記錄所獲取的每個視頻幀對應的時間點,將所述時間點設置為所述進度條上的時間刻 度。所述視頻幀獲取單元在記錄所獲取的每個視頻幀對應的時間點時,還可以用于采集并記錄與所述每個^L頻幀的時間點對應的一見頻畫面。圖5為本發(fā)明實施例提供的一種用戶端的結構示意圖,包括接收單元。 其中接收單元,用于接收所述服務器發(fā)送的包含所述視頻幀和/或音頻幀數(shù)據(jù)的 數(shù)據(jù)包,并保存所述數(shù)據(jù)包。進一步地,該用戶端還可以包括封裝單元,用于以用戶設定的起始時間 點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/或音頻幀,順序設置所述接 收單元接收的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系,并保存 描述所述視頻片段屬性的數(shù)據(jù)。顯然,本領域的技術人員應該明白,上述的本發(fā)明的各4莫塊或各步驟可以 用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多 個計算裝置所組成的網(wǎng)絡上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼 來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們 分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集 成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結合。應該離本發(fā)明的精神保護范圍。本發(fā)明實施例提供了 一種實現(xiàn)視頻文件分段下載的方法,該方法在服務器 端根據(jù)用戶設定的起止時間點對視頻文件進行截取,并將截取視頻片段通過網(wǎng) 絡傳送到客戶端以供用戶觀看。本發(fā)明實施例中所提供的這種視頻文件分段下 載的方法,減少了有針對性需求用戶的下載成本,并且充分利用多線程下載禍^ 頻文件的優(yōu)勢,用戶可根據(jù)自己的需求下載某個視頻文件的一個片段,增加了 共享的視頻片段資源。同時,在本發(fā)明實施中,服務器提供了一種通過進度條選擇欲截取視頻片段的起止時間點方法,該進度條上的時間刻度是與視頻文件 中視頻幀的時間點相對應,所述視頻幀是服務器按照設定的頻率截取所述視頻 文件的視頻幀而獲得的,并且服務器同時采集并記錄與所述視頻幀時間點對應 的視頻畫面,以幫助用戶判斷所選擇的視頻片段是否為所需要的視頻片段。明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及 其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
權利要求
1、一種視頻文件分段下載的方法,其特征在于,包括步驟A服務器接收用戶端分段下載視頻文件的請求,其中包含用戶設定的欲截取視頻文件片段的起始時間點和結束時間點,確定所述視頻文件中保存的該起始時間點和結束時間點對應的視頻幀和/或音頻幀的時間戳,并根據(jù)所述視頻文件中保存的視頻幀和/或音頻幀的時間戳與該視頻幀和/或該音頻幀在所述視頻文件中的偏移位置的對應關系,獲得該起始時間點和該結束時間點對應的視頻幀和/或音頻幀在所述視頻文件中的偏移位置,所述視頻幀和/或音頻幀的時間戳指該視頻幀和/或音頻幀在視頻文件中所對應的時間點;步驟B服務器根據(jù)所述該起始時間點和該結束時間點對應的視頻幀和/或音頻幀在所述視頻文件中的偏移位置,獲取在該起始時間點和該結束時間點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);步驟C服務器將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā)送給所述用戶端。
2、 根據(jù)權利要求1所述的方法,其特征在于,在步驟B和步驟C之間, 該方法進一步包括服務器以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/ 或音頻幀,按順序設置在該起始時間點和該結束時間點之間的視頻片段的每個 視頻幀和/或音頻幀的偏移位置與時間點的對應關系;保存描述所述視頻片段屬性的數(shù)據(jù);則所述數(shù)據(jù)包中進一步包括所述視頻片段的每個視頻幀和/或音頻幀的偏 移位置與時間點的對應關系、所述視頻片段屬性的數(shù)據(jù)。
3、 根據(jù)權利要求1所述的方法地,其特征在于,在步驟C之后,該方法 進一步包括用戶端以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/ 或音頻幀,順序設置在該起始時間點和該結束時間點之間的視頻片段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系;保存描述所迷視頻片段屬性的數(shù)據(jù)。
4、 根據(jù)權利要求2或3所述的方法,其特征在于,所述視頻片段的屬性 包括所述視頻片段的文件類型、播放總時長、視頻圖像的寬高和所包含的幀 數(shù)中的一個或多個的組合。
5、 根據(jù)權利要求1所述的方法,其特征在于,如果所述起始時間點和/或 所述結束時間點在所述視頻文件中保存的視頻幀和/或音頻幀的兩個時間戳之 間,選擇該兩個時間戳中的任 一 時間戳為該時間點對應的時間戳。
6、 根據(jù)權利要求5所述的方法,其特征在于,如果所述視頻文件中同時 包含視頻幀和音頻幀,則獲取的所述起始時間點對應的視頻幀的時間戳早于獲 取的該時間點對應的音頻幀的時間戳。
7、 根據(jù)權利要求1所述的方法,其特征在于,所述用戶設定的欲截取視 頻文件片段的起始時間點和結束時間點,包括用戶拖動服務器設置的進度條選拷,起始時間點和結束時間點,所述進度條 代表所述視頻文件的時間長度,該進度條上設置的每個時間刻度對應所述視頻 文件的一個時間點;和/或用戶在服務器提供的設置起止時間點的對話框中,輸入欲截取視頻文件片 段的起始時間點和結束時間點。
8、 根據(jù)權利要求7所述的方法,其特征在于,在所述服務器接收用戶分 段下載視頻文件的請求之前,該方法進一步包括服務器按照設定的頻率獲取所述視頻文件的視頻幀,并記錄所獲取的每個 -現(xiàn)頻幀對應的時間點;并且,當用戶通過拖動進度條上的標簽來選擇欲截取視頻片段的起始時間 點和結束時間點時,所選擇的時間點為所述4見頻幀對應的時間點。
9、 根據(jù)權利要求8所述的方法,其特征在于,該方法進一步包括服務 器采集并記錄與所述每個^L頻幀的時間點對應的^L頻畫面;并且,當用戶設定欲截取視頻片段的起始時間點和結束時間點時,服務器 讀耳又并顯示與用戶選擇的起始時間點和結束時間點對應的所述一見頻畫面。
10、 一種實現(xiàn)視頻文件分段下載的系統(tǒng),其特征在于,包括服務器,用于接收用戶端分段下載視頻文件的請求,并根據(jù)所述請求中用 戶設定的欲截取視頻文件片段的起始時間點和結束時間點,以及該視頻文件中 保存的信息,獲取在所述起始時間點和結束時間點之間的視頻片段的視頻幀和 /或音頻幀數(shù)據(jù),并將包含所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā)送給用戶端;用戶端,用于向服務器提出分段下載視頻文件的請求,并接收所述服務器 發(fā)送的包含分段視頻對應的所述視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包。
11、 根據(jù)權利要求IO所述的系統(tǒng),其特征在于,所述服務器包括 偏移位置獲取單元,用于確定所述視頻文件中保存的該起始時間點和結束時間點對應的視頻幀和/或音頻幀的時間戳,并根據(jù)所述浮見頻文件中保存的視頻 幀和/或音頻幀的時間戳與該視頻幀和/或音頻幀在所述-見頻文件中的偏移位置 的對應關系,獲取所述起始時間點和結束時間點對應的視頻幀和/或音頻幀在所 述視頻文件中的偏移位置;視頻片段截取單元,用于根據(jù)所述起始時間點和結束時間點對應的視頻幀 和/或音頻幀在所述^L頻文件中的偏移位置,獲取在該起始時間點和該結束時間 點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);發(fā)送單元,用于將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給用戶端。
12、 根據(jù)權利要求IO所述的系統(tǒng),其特征在于,所述服務器進一步包括 封裝單元,用于以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/或音頻幀,順序設置在該起始時間點和該結束時間點之間的視頻片段的 每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系,并保存描述所述視頻 片段屬性的數(shù)據(jù);則所述發(fā)送單元發(fā)送的數(shù)據(jù)包中進一步包括所述視頻片段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系、所述視頻片段屬性的數(shù)據(jù)。
13、 根據(jù)權利要求IO所述的系統(tǒng),其特征在于,所述用戶端進一步包括 封裝單元,用于根據(jù)所述服務器提供的所述用戶設定的欲截取視頻片段的起始時間點和結束時間點,以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為 起始視頻幀和/或音頻幀,順序設置在該起始時間點和該結束時間點之間的視頻 片段的每個視頻幀和/或音頻幀的偏移位置與時間點的對應關系,并保存描述所 述視頻片段屬性的數(shù)據(jù)。
14、 一種服務器,其特征在于,包括偏移位置獲取單元,用于在接收在用戶端分段下載視頻文件的請求時,確 定所述視頻文件中保存的該起始時間點和結束時間點對應的視頻幀和/或音頻 幀的時間戳,并根據(jù)所述視頻文件中保存的視頻幀和/或音頻幀的時間戳與該視 頻幀和/或音頻幀在所述4C頻文件中的偏移位置的對應關系,獲^f又所述請求中用 戶設定的欲截取^見頻文件片段的起始時間點和結束時間點對應的^L頻幀和/或 音頻幀在所述^L頻文件中的偏移位置;視頻片段截取單元,用于根據(jù)所述起始時間點和結束時間點對應的視頻幀 和/或音頻幀在所述^L頻文件中的偏移位置,獲:f又在該起始時間點和該結束時間 點之間的視頻片段的視頻幀和/或音頻幀數(shù)據(jù);發(fā)送單元,用于將包含所述視頻片段的視頻幀和/或音頻幀數(shù)據(jù)的數(shù)據(jù)包發(fā) 送給用戶端。
15、 根據(jù)權利要求14所述的服務器,其特征在于,該服務器進一步包括 封裝單元,用于在所述發(fā)送單元向用戶端發(fā)送數(shù)據(jù)包之前,以所述起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為起始視頻幀和/或音頻幀,順序設置在該 起始時間點和該結束時間點之間的視頻片段的每個視頻幀和/或音頻幀的偏移 位置與時間點的對應關系,并保存描述所述^L頻片段屬性的數(shù)據(jù),然后將所述 視頻片段的視頻幀和/或音頻幀數(shù)據(jù)、所述視頻片段的每個視頻幀和/或音頻幀 的偏移位置與時間點的對應關系以及描述所述視頻片段屬性的數(shù)據(jù),封裝為一個數(shù)據(jù)包。
16、 根據(jù)權利要求14所述的服務器,其特征在于,該服務器進一步包括 起止時間點設置單元,用于根據(jù)所述視頻文件的時間長度,設置供用戶選擇起始時間點和結束時間點的進度條。
17、 根據(jù)權利要求16所述的服務器,其特征在于,所迷起止時間點設置 單元進一步用于,提供用戶輸入欲截取視頻文件片段的起始時間點和結束時間 點的對話框。
18、 根據(jù)權利要求16所述的服務器,其特征在于,該服務器進一步包括 視頻幀獲取單元,用于在接收到用戶的分段下載視頻文件的請求之前,按照設定的頻率獲耳又所述一見頻文件的^L頻幀,并記錄所獲取的每個纟見頻幀對應的 時間點,將所述時間點設置為所述進度條上的時間刻度。
19、 根據(jù)權利要求18所述的服務器,其特征在于,所迷視頻幀獲取單元 在記錄所獲取的每個視頻幀對應的時間點時,進一步用于采集并記錄與所述每 個視J貞幀的時間點乂于應的浮見頻畫面。
20、 一種用戶端,其特征在于,包括接收單元,用于向服務器提出分段下載視頻文件的請求,并接收所述服務
21、 根據(jù)權利要求20所述的客戶端,其特征在于,所述用戶端進一步包括封裝單元,用于以用戶設定的起始時間點對應的視頻幀和/或音頻幀數(shù)據(jù)為 起始視頻幀和/或音頻幀,順序設置所述接收單元接收的每個#見頻幀和/或音頻 幀的偏移位置與時間點的對應關系,并保存描述所述視頻片段屬性的數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種視頻文件分段下載的方法、系統(tǒng)和裝置,用以解決現(xiàn)有技術中存在的用戶成本高、視頻片段共享資源少及視頻片段下載不靈活的問題。該方法根據(jù)用戶設定的起止時間點在服務器端對視頻文件進行截取,將截取后的數(shù)據(jù)發(fā)送給用戶端保存。根據(jù)本發(fā)明提出的方案,用戶可以下載視頻文件中自定義的視頻片段,降低了用戶的下載成本,解決了視頻片段共享資源少的問題。
文檔編號H04N7/173GK101217638SQ20071030781
公開日2008年7月9日 申請日期2007年12月28日 優(yōu)先權日2007年12月28日
發(fā)明者振 熊 申請人:深圳市迅雷網(wǎng)絡技術有限公司