專利名稱:流媒體視頻內(nèi)容的播放方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻播放技術(shù),尤其涉及一種流媒體視頻內(nèi)容的播放方法和裝置。
背景技術(shù):
互聯(lián)網(wǎng)視頻是指通過部署互聯(lián)網(wǎng)的媒體服務(wù)器或下載服務(wù)器,在終端播放器請求 時將互聯(lián)網(wǎng)視頻內(nèi)容發(fā)送到終端播放器,由終端播放器解碼播放的業(yè)務(wù)。用戶可以在個人 電腦、手機(jī)等多種終端上體驗點播、直播等不同的視頻播放業(yè)務(wù)。隨著互聯(lián)網(wǎng)視頻播放技術(shù)的發(fā)展,可以使用多種網(wǎng)絡(luò)傳輸協(xié)議規(guī)范來實現(xiàn)服務(wù)器 和終端播放器間視頻內(nèi)容的傳輸。其中,HTTPMreaming逐步成為主流的網(wǎng)絡(luò)傳輸協(xié)議, 目前有多種HTTP Streaming規(guī)范,例如Microsoft、Apple、3GPP、OIPF等都定義了各自的 HTTPMreaming規(guī)范。無論哪種網(wǎng)絡(luò)傳輸協(xié)議規(guī)范,為了實現(xiàn)動態(tài)的碼率調(diào)整,都要求視頻 內(nèi)容以分片的方式在服務(wù)器側(cè)存放;而且,在流媒體視頻內(nèi)容的播放時,服務(wù)器和終端播放 器在交互上是類似的。現(xiàn)有技術(shù)播放流媒體視頻內(nèi)容的方法是終端播放器發(fā)送描述文件請求,服務(wù)器 接收描述文件請求并返回對應(yīng)的描述文件;終端播放器接收到描述文件后,向服務(wù)器請求 描述文件對應(yīng)的分片,服務(wù)器接收到對應(yīng)分片的請求,返回對應(yīng)的分片;終端播放器解碼 播放對應(yīng)的分片。其中,描述文件描述了不同碼率和不同分辨率對應(yīng)的文件,以及每個描 述文件由哪些分片組成和每個分片的開始時間、時長、對應(yīng)的播放和下載統(tǒng)一資源定位符 (Uniform/Universal Resource Locator, URL)等信息。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn),現(xiàn)有技術(shù)在視頻定位seek操作時,用戶在 按下時間進(jìn)度條后,可以看到當(dāng)前時間進(jìn)度條拖動到的時間點,但看不到當(dāng)前時間進(jìn)度條 拖動到的時間點的畫面;用戶松開時間進(jìn)度條,發(fā)送對應(yīng)的分片請求與接收到對應(yīng)的分片 期間,仍然看不到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面,只有請求到對應(yīng)的分片,才能看 到當(dāng)前進(jìn)度條拖動到的時間點的畫面。因此,需要不停的嘗試才能定位到用戶期望看到的 畫面。
發(fā)明內(nèi)容
本發(fā)明的實施例提供一種流媒體視頻內(nèi)容的播放方法和裝置,在視頻定位seek 時,能夠快速直觀準(zhǔn)確的定位到用戶期望看到的畫面。—方面,提供一種流媒體視頻內(nèi)容的播放方法,包括獲取待播放的流媒體視頻內(nèi) 容的視頻定位seek時間;從所述待播放的流媒體視頻內(nèi)容包含的I幀中,獲取所述視頻定 位seek時間對應(yīng)的目標(biāo)I幀;播放所述目標(biāo)I幀。另一方面,提供了一種流媒體視頻內(nèi)容的播放方法,包括獲取視頻播放的業(yè)務(wù)信 息,其中,所述業(yè)務(wù)信息包含流媒體視頻內(nèi)容的預(yù)覽信息和多章節(jié)信息;根據(jù)所述視頻播放 的業(yè)務(wù)信息,獲取待播放的流媒體視頻內(nèi)容包含的I幀;播放所述I幀。再一方面,提供了一種流媒體視頻內(nèi)容的播放裝置,包括
視頻定位seek時間獲取模塊,用于獲取待播放的流媒體視頻內(nèi)容的視頻定位 seek時間;目標(biāo)I幀獲取模塊,用于從所述待播放的流媒體視頻內(nèi)容包含的I幀中,獲取所述 視頻定位seek時間獲取模塊獲取的視頻定位seek時間對應(yīng)的目標(biāo)I幀;目標(biāo)I幀播放模塊,用于播放所述目標(biāo)I幀獲取模塊獲取的目標(biāo)I幀。又一方面,提供了一種流媒體視頻內(nèi)容的播放裝置,包括業(yè)務(wù)信息獲取模塊,用于獲取視頻播放的業(yè)務(wù)信息,其中,所述業(yè)務(wù)信息包含流媒 體視頻內(nèi)容的預(yù)覽信息和多章節(jié)信息;第二 I幀獲取模塊,用于根據(jù)所述業(yè)務(wù)信息獲取模塊獲取的視頻播放的業(yè)務(wù)信 息,獲取待播放的流媒體視頻內(nèi)容包含的I幀;第二播放模塊,用于播放所述第二 I幀獲取模塊獲取的I幀。本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法和裝置,通過獲取視頻定位seek 時間對應(yīng)的目標(biāo)I幀,并播放,使終端播放器在視頻定位seek時,不僅能看到時間進(jìn)度條拖 動到的時間點,還能看到時間點的畫面,能夠快速直觀準(zhǔn)確的定位到用戶期望看到的畫面。 本發(fā)明實施例解決了現(xiàn)有技術(shù)中,視頻定位seek時,用戶在按下時間進(jìn)度條后,只能看到 當(dāng)前時間進(jìn)度條拖動到的時間點,看不到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面,在用戶 松開時間進(jìn)度條與看到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面之間,有一定的時延,用戶 需要不停的嘗試才能定位到用戶期望看到的畫面的問題。
圖1為本發(fā)明實施例一提供的流媒體視頻內(nèi)容的播放方法的流程圖;圖2為本發(fā)明實施例二提供的流媒體視頻內(nèi)容的播放方法的流程圖;圖3為本發(fā)明實施例三提供的流媒體視頻內(nèi)容的播放方法的流程圖;圖4為本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置的結(jié)構(gòu)示意圖;圖5為圖4所示的本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置中目標(biāo)I幀 獲取模塊的結(jié)構(gòu)示意圖;圖6為本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置的結(jié)構(gòu)示意圖二 ;圖7為圖6所示的本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置中第一 I幀 獲取模塊的結(jié)構(gòu)示意圖;圖8為本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置的結(jié)構(gòu)示意圖三;圖9為本發(fā)明實施例五提供的流媒體視頻內(nèi)容的播放裝置的結(jié)構(gòu)示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完 整的描述,顯然,所描述的實施例僅僅是本發(fā)明的一部分實施例,而不是全部的實施例?;?于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有 其他實施例,都屬于本發(fā)明保護(hù)的技術(shù)范圍。為了解決現(xiàn)有技術(shù)在視頻定位seek時,不能快速直觀準(zhǔn)確的定位到用戶期望看 到的畫面的問題,本發(fā)明實施例提供一種流媒體視頻內(nèi)容的播放方法和裝置。
如圖1所示,本發(fā)明實施例一提供的流媒體視頻內(nèi)容的播放方法,包括步驟101,獲取待播放的流媒體視頻內(nèi)容的視頻定位seek時間。 在本實施例中,終端播放器在播放待播放的流媒體視頻內(nèi)容或者暫停的過程中, 可以實施視頻定位seek操作,此時執(zhí)行步驟101,獲取待播放的流媒體視頻內(nèi)容的視頻定 位seek時間。步驟102,從待播放的流媒體視頻內(nèi)容包含的I幀中,獲取視頻定位seek時間對應(yīng) 的目標(biāo)I幀。在本實施例中,步驟102獲取視頻定位seek時間對應(yīng)的I幀,可以直接從服務(wù)器 獲取視頻定位seek時間對應(yīng)的目標(biāo)I幀;也可以預(yù)先獲取待播放的流媒體視頻內(nèi)容包含的 所有I幀,并緩存到本地,從本地獲取視頻定位seek時間對應(yīng)的目標(biāo)I幀。步驟103,播放目標(biāo)I幀。在本實施例中,用戶如果進(jìn)行視頻定位seek操作,用戶在按下時間進(jìn)度條后,可 以獲取視頻定位seek時間,根據(jù)視頻定位seek時間,獲取視頻定位seek時間對應(yīng)的目標(biāo)I 幀,并播放目標(biāo)I幀,終端播放器不僅能顯示當(dāng)前時間進(jìn)度條拖動到的時間點,還能顯示當(dāng) 前時間進(jìn)度條拖動到的時間點的畫面,方便用戶進(jìn)行視頻定位seek操作,能夠快速直觀準(zhǔn) 確的定位到用戶期望看到的畫面本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法,通過獲取視頻定位seek時間 對應(yīng)的目標(biāo)I幀,并播放,使終端播放器在視頻定位seek時,不僅能看到時間進(jìn)度條拖動到 的時間點,還能看到時間點的畫面,能夠快速直觀準(zhǔn)確的定位到用戶期望看到的畫面。本發(fā) 明實施例解決了現(xiàn)有技術(shù)中,視頻定位seek時,用戶在按下時間進(jìn)度條后,只能看到當(dāng)前 時間進(jìn)度條拖動到的時間點,看不到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面,在用戶松開 時間進(jìn)度條與看到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面之間,有一定的時延,用戶需要 不停的嘗試才能定位到用戶期望看到的畫面的問題。為了使本領(lǐng)域技術(shù)人員可以實施本發(fā)明實施例一提供的流媒體視頻內(nèi)容的播放 方法,在本發(fā)明的實施例二中,對本發(fā)明實施例一提供的流媒體視頻內(nèi)容的播放方法做進(jìn) 一步改進(jìn),如圖2所示,本發(fā)明實施例二提供的流媒體視頻內(nèi)容的播放方法,具體步驟可以 包括步驟201,獲取待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,可以在終端播放器開始播放流媒體視頻內(nèi)容之前,執(zhí)行步驟201, 獲取待播放的流媒體視頻內(nèi)容包含的I幀;也可以在終端緩存到足夠分片與緩存下一分片 的空閑時間里,執(zhí)行步驟201,獲取待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,步 驟201可以不一次性下載完待播放的流媒體視頻內(nèi)容包含的所有I幀。例如在本實施例中,設(shè)置終端播放器接收服務(wù)器發(fā)送的后續(xù)分片的個數(shù)為2,當(dāng) 用戶播放第η分片時,終端播放器控制接收第η+2分片后不會立即接收第η+3分片,只有用 戶開始播放第η+1分片后,才會繼續(xù)接收第η+3分片。在接收到第η+2分片與接收第η+3分 片之間,有空閑時間。如果當(dāng)前步驟201已接收到第n+m分片的I幀,則在當(dāng)前第η分片播 放完成,接收完服務(wù)器發(fā)送的第η+3分片后,繼續(xù)接收服務(wù)器發(fā)送的第η+m+l分片的I幀。
在本實施例中,為了節(jié)省終端播放器獲取I幀的時間,步驟201可以只獲取待播放 的流媒體視頻內(nèi)容包含的起始I幀。獲取待播放的流媒體視頻內(nèi)容包含的起始I幀的時間比較短。對目前家庭網(wǎng)絡(luò)帶寬而言,以一個1小時傳輸速率為500千位/秒(kilobits per second, kbps)為例,如果每10秒一個分片,則所有分片I幀的大小的總和為2. 25兆字節(jié) (M),那么接收完所有分片的I幀需要36秒,時間很短。即使考慮到請求不同分片需要多次 發(fā)送描述文件請求,仍然可以在短時間內(nèi)完成所有分片I幀的接收。在本實施例中,步驟201獲取待播放的流媒體視頻內(nèi)容包含的I幀,可以包括一、向服務(wù)器發(fā)送I幀請求信息,其中,I幀請求信息包含用于識別I幀歸屬分片 的統(tǒng)一資源定位符URL和I幀對應(yīng)的字節(jié)范圍。在本實施例中,統(tǒng)一資源定位符URL可以使服務(wù)器定位到I幀歸屬的分片,I幀對 應(yīng)的字節(jié)范圍可以使終端播放器從該分片中獲取所需的I幀。二、接收服務(wù)器發(fā)送的I幀請求信息對應(yīng)的流媒體視頻內(nèi)容包含的I幀。步驟202,存儲待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,步驟202可以使用單獨I幀文件存儲待播放的流媒體視頻內(nèi)容包 含的I幀;或者可以將待播放的視頻內(nèi)容包含的I幀與待播放的流媒體視頻內(nèi)容存儲為同 一文件。步驟203,獲取待播放的流媒體視頻內(nèi)容的視頻定位seek時間。在本實施例中,終端播放器在播放待播放的流媒體視頻內(nèi)容或者暫停的過程中, 可以實施視頻定位seek操作,此時執(zhí)行步驟203,獲取待播放的流媒體視頻內(nèi)容的搜索時 間。步驟204,獲取待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分片的時長。 在本實施例中,待播放的流媒體視頻內(nèi)容可以對應(yīng)多個分片,各個分片的時長一 般相同。因此,步驟204可以獲取待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分片的時長。步驟205,根據(jù)待播放的流媒體視頻內(nèi)容對應(yīng)的分片的時長和視頻定位seek時 間,確定目標(biāo)I幀。在本實施例中,步驟205可以使用視頻定位seek時間除以待播放的流媒體視頻內(nèi) 容對應(yīng)的分片的時長,確定目標(biāo)I幀。步驟206,播放目標(biāo)I幀。本實施例提供的流媒體視頻的播放方法,上述步驟可以進(jìn)行視頻定位seek操作, 并且在視頻定位seek時,不僅能看到時間進(jìn)度條拖動到的時間,還能看到時間進(jìn)度條拖動 到的時間對應(yīng)的畫面。為了本實施例還可以進(jìn)行快進(jìn)或快退操作,本實施例還可以包括步驟207,計算待播放的流媒體視頻內(nèi)容包含的I幀的播放速度。在本實施例中,步驟207可以首先獲取快進(jìn)或快退時視頻播放的速度倍數(shù),并獲 取所述待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分片的時長,然后將所述時長除以所述速 度倍數(shù),得到所述待播放的流媒體視頻內(nèi)容包含的I幀的播放速度。步驟208,以該播放速度正向或反向播放待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,當(dāng)用戶實施快進(jìn)操作時,終端播放器以步驟207計算的播放速度, 正向播放待播放的流媒體視頻內(nèi)容包含的I幀,進(jìn)行流媒體視頻內(nèi)容的播放中的快進(jìn)操 作;當(dāng)用戶實施快退操作時,終端播放器以步驟207計算的播放速度,反向播放待播放的流 媒體視頻內(nèi)容包含的I幀,進(jìn)行流媒體視頻內(nèi)容的播放中的快退操作。在本實施例中,執(zhí)行步驟208以步驟207計算待播放的流媒體視頻內(nèi)容包含的I幀的播放速度,正向或反向播放待播放的流媒體視頻內(nèi)容包含的I幀,當(dāng)?shù)竭_(dá)用戶需要看 的畫面時,可以獲取正常播放信息,以正常速度播放流媒體視頻內(nèi)容。用戶如果進(jìn)行視頻定位seek操作,用戶在按下時間進(jìn)度條后,可以獲取視頻定位 seek時間,根據(jù)視頻定位seek時間,獲取視頻定位seek時間對應(yīng)的I幀,并播放I幀,終端 播放器不僅能顯示當(dāng)前時間進(jìn)度條拖動到的時間點,還能顯示當(dāng)前時間進(jìn)度條拖動到的時 間點的畫面,方便用戶進(jìn)行視頻定位seek操作,能夠快速直觀準(zhǔn)確的定位到用戶期望看到 的畫面。在本實施例中,在視頻定位seek時,只獲取目標(biāo)I巾貞,而不獲取視頻內(nèi)容包含的所 有I幀,也可以在進(jìn)行視頻定位seek時,不僅能看到時間進(jìn)度條拖動到的時間點,還能看到 時間點的畫面。本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法,通過對從待播放的流媒體視頻 內(nèi)容包含的I幀中獲取視頻定位seek時間對應(yīng)的目標(biāo)I幀,并播放,使終端播放器在視頻 定位seek時,不僅能看到時間進(jìn)度條拖動到的時間點,還能看到時間點的畫面,能夠快速 直觀準(zhǔn)確的定位到用戶期望看到的畫面。本發(fā)明實施例解決了現(xiàn)有技術(shù)中,視頻定位seek 時,用戶在按下時間進(jìn)度條后,只能看到當(dāng)前時間進(jìn)度條拖動到的時間點,看不到當(dāng)前時間 進(jìn)度條拖動到的時間點的畫面,在用戶松開時間進(jìn)度條與看到當(dāng)前時間進(jìn)度條拖動到的時 間點的畫面之間,有一定的時延,用戶需要不停的嘗試才能定位到用戶期望看到的畫面的 問題。為了使本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法,還能夠用于其他相關(guān)業(yè) 務(wù),如流媒體視頻內(nèi)容的預(yù)覽業(yè)務(wù)、流媒體視頻內(nèi)容的多章節(jié)業(yè)務(wù),本發(fā)明實施例三提供的 流媒體視頻內(nèi)容的播放方法,如圖3所示,還可以包括步驟301,獲取視頻播放的業(yè)務(wù)信息,其中,業(yè)務(wù)信息包含待播放的流媒體視頻內(nèi) 容的預(yù)覽信息和多章節(jié)信息。在本實施例中,用戶在互聯(lián)網(wǎng)上瀏覽視頻內(nèi)容的介紹時,可以預(yù)覽感興趣的視頻 內(nèi)容,步驟301獲取感興趣的流媒體視頻內(nèi)容的預(yù)覽信息。或者,用戶可以根據(jù)需要播放的 視頻的內(nèi)容,執(zhí)行步驟301獲取視頻播放的多章節(jié)信息。所述多章節(jié)信息可以包括用戶希 望將需要播放的視頻的內(nèi)容分出的章節(jié)數(shù)。步驟302,根據(jù)視頻播放的業(yè)務(wù)信息,獲取待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,預(yù)覽信息可以包括流媒體視頻內(nèi)容的預(yù)覽指示,該預(yù)覽指示對應(yīng) 的流媒體視頻內(nèi)容為待播放的流媒體視頻內(nèi)容;多章節(jié)信息可以包括流媒體視頻內(nèi)容的 總時長,以及流媒體視頻內(nèi)容劃分的章節(jié)數(shù)。步驟302根據(jù)流媒體視頻內(nèi)容的預(yù)覽信息,可 以確定待播放的流媒體視頻內(nèi)容,從而獲取待播放的流媒體視頻內(nèi)容包含的I幀,為了節(jié) 省終端播放器獲取I幀的時間,也可以只獲取待播放的流媒體視頻內(nèi)容對應(yīng)分片的起始I 幀?;蛘撸襟E302根據(jù)流媒體視頻內(nèi)容的多章節(jié)信息,可以確定各個章節(jié)包含的視頻內(nèi)容 對應(yīng)分片,根據(jù)所述分片獲取各個章節(jié)的I幀,也可以只獲取各個章節(jié)的起始I幀供用戶預(yù) 覽。在本實施例中,步驟302中獲取流媒體視頻內(nèi)容包含的I幀的過程,可以包括—、向服務(wù)器發(fā)送I幀請求信息,其中,I幀請求信息包含用于識別I幀歸屬分片 的統(tǒng)一資源定位符URL和I幀對應(yīng)的字節(jié)范圍;
二、接收服務(wù)器發(fā)送的I幀請求信息對應(yīng)的流媒體視頻內(nèi)容包含的I幀。步驟303,播放I幀。在本實施例中,執(zhí)行步驟303播放I幀以后,用戶可以根據(jù)預(yù)覽的流媒體視頻內(nèi) 容,或者根據(jù)多章節(jié)起始畫面的預(yù)覽信息,判斷是否要進(jìn)行正常的流媒體視頻內(nèi)容的播放。本實施例提供的流媒體視頻內(nèi)容的播放方法,可以實現(xiàn)流媒體視頻內(nèi)容的預(yù)覽業(yè) 務(wù)用戶在進(jìn)行視頻內(nèi)容的預(yù)覽時,終端播放器可以不接收預(yù)覽內(nèi)容分片,而只接收預(yù)覽內(nèi) 容分片的I幀,可以流媒體視頻內(nèi)容的播放中視頻內(nèi)容的預(yù)覽業(yè)務(wù);用戶可以根據(jù)預(yù)覽I幀 文件,確定是否要進(jìn)行正常的視頻播放,而不需要針對視頻內(nèi)容,專門制作預(yù)覽文件,實現(xiàn) 視頻內(nèi)容的預(yù)覽業(yè)務(wù)。也可以實現(xiàn)流媒體視頻播放的多章節(jié)業(yè)務(wù)根據(jù)用戶需要將視頻內(nèi) 容分成多章節(jié),并對每個章節(jié)的I幀做成海報,以供用戶選擇對某個章節(jié)進(jìn)行正常播放。本發(fā)明實施例四提供的流媒體視頻內(nèi)容的播放裝置,如圖4所示,包括視頻定位seek時間獲取模塊401,用于獲取待播放的流媒體視頻內(nèi)容的視頻定位 seek時間。在本實施例中,終端播放器在播放待播放的流媒體視頻內(nèi)容或者暫停的過程中, 可以實施視頻定位seek操作,此時使用視頻定位seek時間獲取模塊401獲取待播放的流 媒體視頻內(nèi)容的視頻定位seek時間。目標(biāo)I幀獲取模塊402,用于從待播放的流媒體視頻內(nèi)容包含的I幀中,獲取視頻 定位seek時間獲取模塊獲取的視頻定位seek時間對應(yīng)的目標(biāo)I幀。在本實施例中,目標(biāo)I幀獲取模塊402可以直接從服務(wù)器獲取視頻定位seek時間 對應(yīng)的目標(biāo)I幀;也可以預(yù)先獲取待播放的流媒體視頻內(nèi)容包含的所有I幀,并緩存到本 地,從本地獲取視頻定位seek時間對應(yīng)的目標(biāo)I幀。目標(biāo)I幀播放模塊403,用于播放獲取的目標(biāo)I幀。在本實施例中,用戶如果進(jìn)行視頻定位seek操作,用戶在按下時間進(jìn)度條后,視 頻定位seek時間獲取模塊401可以獲取視頻定位seek時間,目標(biāo)I幀獲取模塊402根據(jù) 視頻定位seek時間,獲取視頻定位seek時間對應(yīng)的目標(biāo)I幀,并使用目標(biāo)I幀播放模塊播 放目標(biāo)I幀;終端播放器不僅能顯示當(dāng)前時間進(jìn)度條拖動到的時間點,還能顯示當(dāng)前時間 進(jìn)度條拖動到的時間點的畫面,方便用戶進(jìn)行視頻定位seek操作,能夠快速直觀準(zhǔn)確的定 位到用戶期望看到的畫面。進(jìn)一步的,如圖5所示,目標(biāo)I幀獲取模塊402可以包括分片時長獲取子模塊4021,用于獲取待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分 片的時長。在本實施例中,待播放的流媒體視頻內(nèi)容可以對應(yīng)多個分片,各個分片的時長一 般相同。因此,分片時長獲取子模塊4021可以獲取待播放的流媒體視頻內(nèi)容對應(yīng)的任意一 個分片的時長,其中各分片時長均相同。目標(biāo)I幀確定子模塊4022,用于根據(jù)分片時長獲取子模塊獲取的分片的時長和視 頻定位seek時間,確定所述目標(biāo)I幀。在本實施例中,目標(biāo)I幀確定子模塊4022可以使用視頻定位seek時間除以待播 放的流媒體視頻內(nèi)容對應(yīng)的分片的時長,確定目標(biāo)I幀。進(jìn)一步的,如圖6所示,本實施例提供的流媒體視頻內(nèi)容的播放裝置,還可以包括第一 I幀獲取模塊404,用于獲取待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,可以在終端播放器開始播放流媒體視頻內(nèi)容之前,使用第一 I幀 獲取模塊404獲取待播放的流媒體視頻內(nèi)容包含的I幀;也可以在終端播放器緩存到足夠 的分片與緩存下一個分片的空閑時間里,第一 I幀獲取模塊404獲取待播放的流媒體視頻 內(nèi)容包含的I幀。在本實施例中,第一 I幀獲取模塊404可以不一次性下載完待播放的流 媒體視頻內(nèi)容包含的所有I幀。例如在本實施例中,設(shè)置接收服務(wù)器發(fā)送的后續(xù)分片的個數(shù)為2,當(dāng)用戶播放第 η分片時,終端播放器控制接收第η+2分片后不會立即接收第η+3分片,只有用戶開始播放 第η+1分片后,才會繼續(xù)接收第η+3分片。在接收到第η+2分片與接收第η+3分片之間,有 空閑時間。如果當(dāng)前第一 I幀獲取模塊404已接收到第n+m分片的I幀,則在當(dāng)前第η分 片播放完成,接收完服務(wù)器發(fā)送的第η+3分片后,繼續(xù)接收服務(wù)器發(fā)送的第η+m+l分片的I 幀。在本實施例中,為了節(jié)省終端播放器獲取I幀的時間,第一 I幀獲取模塊404可以 只獲取待播放的流媒體視頻內(nèi)容包含的起始I幀。獲取待播放的流媒體視頻內(nèi)容包含的起 始I幀的時間比較短。對目前家庭網(wǎng)絡(luò)帶寬而言,以一個1小時傳輸速率為500千位/秒 (kilobits per second,kbps)為例,如果每10秒一個分片,則所有分片I幀的大小的總和 為2. 25兆字節(jié)(M),那么接收完所有分片的I幀需要36秒,時間很短。即使考慮到請求不 同分片需要多次發(fā)送描述文件請求,仍然可以在短時間內(nèi)完成所有分片I幀的接收。存儲模塊405,用于存儲I幀獲取模塊獲取的待播放的流媒體視頻內(nèi)容包含的I 幀。在本實施例中,存儲模塊405可以使用單獨I幀文件存儲待播放的流媒體視頻內(nèi) 容包含的I幀;或者可以將待播放的視頻內(nèi)容包含的I幀與待播放的流媒體視頻內(nèi)容存儲 為同一文件。進(jìn)一步的,如圖7所示,第一 I幀獲取模塊404還可以包括請求發(fā)送子模塊4041,用于向服務(wù)器發(fā)送I幀請求信息,其中,所述I幀請求信息 包含用于識別I幀歸屬分片的統(tǒng)一資源定位符和I幀對應(yīng)的字節(jié)范圍。在本實施例中,統(tǒng)一資源定位符URL可以使服務(wù)器定位到I幀歸屬的分片,I幀對 應(yīng)的字節(jié)范圍可以使終端播放器從該分片中獲取所需的I幀。I幀接收子模塊4042,用于接收服務(wù)器發(fā)送的所述I幀請求信息對應(yīng)的流媒體視 頻內(nèi)容包含的I幀。進(jìn)一步的,在本實施例中,為了進(jìn)行快進(jìn)或快退操作,如圖8所示,本實施例提供 的流媒體視頻內(nèi)容的播放裝置,還可以包括播放速度計算模塊406,用于計算待播放的流媒體視頻內(nèi)容包含的I幀的播放速度。在本實施例中,播放速度獲取模塊406可以包括第一獲取子模塊和計算子模塊。 其中,第一獲取子模塊,用于獲取快進(jìn)或快退時視頻播放的速度倍數(shù),并獲取待播放的流媒 體視頻內(nèi)容對應(yīng)的任意一個分片的時長;計算子模塊,用于將獲取的時長除以速度倍數(shù),得 到待播放的流媒體視頻內(nèi)容包含的I幀的播放速度。
第一 I幀播放模塊407,用于以播放速度獲取模塊獲取的播放速度正向或反向播 放所述待播放的流媒體視頻內(nèi)容包含的I幀。在本實施例中,當(dāng)用戶實施快進(jìn)操作時,終端播放器以播放速度計算模塊406計 算的播放速度,正向播放待播放的流媒體視頻內(nèi)容包含的I幀,進(jìn)行流媒體視頻內(nèi)容的播 放中的快進(jìn)操作;當(dāng)用戶實施快退操作時,終端播放器以播放速度計算模塊406計算的播 放速度,反向播放待播放的流媒體視頻內(nèi)容包含的I幀,進(jìn)行流媒體視頻內(nèi)容的播放中的 快退操作。在本實施例中,第一 I幀播放模塊407以播放速度計算模塊406計算的播放速度 正向或反向播放待播放的流媒體視頻內(nèi)容包含的I幀,當(dāng)?shù)竭_(dá)用戶需要看的畫面時,可以 獲取正常播放信息,以正常速度播放流媒體視頻內(nèi)容本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放裝置,通過目標(biāo)I幀獲取模塊獲取視 頻定位seek時間對應(yīng)的目標(biāo)I幀,并使用目標(biāo)I幀播放模塊播放目標(biāo)I幀,使終端播放器在 視頻定位seek時,不僅能看到時間進(jìn)度條拖動到的時間點,還能看到時間點的畫面,能夠 快速直觀準(zhǔn)確的定位到用戶期望看到的畫面。本發(fā)明實施例解決了現(xiàn)有技術(shù)中,視頻定位 seek時,用戶在按下時間進(jìn)度條后,只能看到當(dāng)前時間進(jìn)度條拖動到的時間點,看不到當(dāng)前 時間進(jìn)度條拖動到的時間點的畫面,在用戶松開時間進(jìn)度條與看到當(dāng)前時間進(jìn)度條拖動到 的時間點的畫面之間,有一定的時延,用戶需要不停的嘗試才能定位到用戶期望看到的畫 面的問題。為了使本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放裝置,還能夠用于其他相關(guān)業(yè) 務(wù),如流媒體視頻內(nèi)容的預(yù)覽業(yè)務(wù)、流媒體視頻內(nèi)容的多章節(jié)業(yè)務(wù),本發(fā)明實施例五提供的 流媒體視頻內(nèi)容的播放裝置,如圖9所示,還可以包括業(yè)務(wù)信息獲取模塊901,用于獲取視頻播放的業(yè)務(wù)信息,其中,所述業(yè)務(wù)信息包含 流媒體視頻內(nèi)容的預(yù)覽信息和多章節(jié)信息。在本實施例中,業(yè)務(wù)信息獲取模塊901可以包括預(yù)覽信息獲取子模塊和多章節(jié) 信息獲取子模塊。其中,預(yù)覽信息獲取子模塊用于流媒體視頻內(nèi)容的預(yù)覽指示,該預(yù)覽指示 對應(yīng)的流媒體視頻內(nèi)容為待播放的流媒體視頻內(nèi)容;多章節(jié)信息獲取子模塊用于獲取流媒 體視頻內(nèi)容的總時長,以及流媒體視頻內(nèi)容劃分的章節(jié)數(shù)。業(yè)務(wù)信息獲取模塊901根據(jù)流 媒體視頻內(nèi)容的預(yù)覽信息,可以確定待播放的流媒體視頻內(nèi)容,從而獲取待播放的流媒體 視頻內(nèi)容包含的I幀,為了節(jié)省終端播放器獲取I幀的時間,也可以只獲取待播放的流媒體 視頻內(nèi)容對應(yīng)分片的起始I幀?;蛘?,業(yè)務(wù)信息獲取模塊901根據(jù)流媒體視頻內(nèi)容的多章 節(jié)信息,可以確定各個章節(jié)包含的視頻內(nèi)容對應(yīng)分片,根據(jù)所述分片獲取各個章節(jié)的I幀, 也可以只獲取各個章節(jié)的起始I幀供用戶預(yù)覽。第二 I幀獲取模塊902,用于根據(jù)所述業(yè)務(wù)信息獲取模塊獲取的視頻播放的業(yè)務(wù) 信息,獲取待播放的流媒體視頻內(nèi)容包含的I幀;在本實施例中,第二 I幀獲取模塊902根據(jù)流媒體視頻內(nèi)容的預(yù)覽信息,可以獲取 流媒體視頻內(nèi)容包含的I幀,為了節(jié)省終端播放器獲取I幀的時間,也可以只獲取流媒體視 頻內(nèi)容對應(yīng)分片的起始I幀?;蛘?,第二 I幀獲取模塊902可以根據(jù)流媒體視頻內(nèi)容的多 章節(jié)信息,獲取各個章節(jié)的I幀,也可以只獲取各個章節(jié)的起始I幀供用戶預(yù)覽。在本實施例中,第二 I幀獲取模塊902,如圖7所示,也可以包括
12
請求發(fā)送子模塊4041,用于向服務(wù)器發(fā)送I幀請求信息,其中,所述I幀請求信息 包含用于識別I幀歸屬分片的統(tǒng)一資源定位符和I幀對應(yīng)的字節(jié)范圍;I幀接收子模塊4042,用于接收服務(wù)器發(fā)送的所述I幀請求信息對應(yīng)的流媒體視 頻內(nèi)容包含的I幀。第二播放模塊903,用于播放所述第二 I幀獲取模塊獲取的I幀。在本實施例中,第二播放模塊903播放I幀以后,用戶可以根據(jù)預(yù)覽的流媒體視頻 內(nèi)容,或者根據(jù)多章節(jié)起始畫面的預(yù)覽信息,判斷是否要進(jìn)行正常的流媒體視頻內(nèi)容的播 放。本實施例提供的流媒體視頻內(nèi)容的播放裝置,可以實現(xiàn)流媒體視頻內(nèi)容的預(yù)覽業(yè) 務(wù)用戶在進(jìn)行視頻內(nèi)容的預(yù)覽時,終端播放器可以不接收預(yù)覽內(nèi)容分片,而只接收預(yù)覽內(nèi) 容分片的I幀,可以流媒體視頻內(nèi)容的播放中視頻內(nèi)容的預(yù)覽業(yè)務(wù);用戶可以根據(jù)預(yù)覽I幀 文件,確定是否要進(jìn)行正常的視頻播放,而不需要針對視頻內(nèi)容,專門制作預(yù)覽文件,實現(xiàn) 視頻內(nèi)容的預(yù)覽業(yè)務(wù)。也可以實現(xiàn)流媒體視頻播放的多章節(jié)業(yè)務(wù)根據(jù)用戶需要將視頻內(nèi) 容分成多章節(jié),并對每個章節(jié)的I幀做成海報,以供用戶選擇對某個章節(jié)進(jìn)行正常播放。本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法和裝置,通過獲取視頻定位seek 時間對應(yīng)的目標(biāo)I幀,并播放,使終端播放器在視頻定位seek時,不僅能看到時間進(jìn)度條拖 動到的時間點,還能看到時間點的畫面,能夠快速直觀準(zhǔn)確的定位到用戶期望看到的畫面。 本發(fā)明實施例解決了現(xiàn)有技術(shù)中,視頻定位seek時,用戶在按下時間進(jìn)度條后,只能看到 當(dāng)前時間進(jìn)度條拖動到的時間點,看不到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面,在用戶 松開時間進(jìn)度條與看到當(dāng)前時間進(jìn)度條拖動到的時間點的畫面之間,有一定的時延,用戶 需要不停的嘗試才能定位到用戶期望看到的畫面的問題。本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法和裝置,可以使用HTTP、HTTP Mreaming、TCP、UDP等多種網(wǎng)絡(luò)傳輸協(xié)議,適用于計算機(jī)、手機(jī)等多種終端上。結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí) 行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存 儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術(shù) 領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何 熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵 蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種流媒體視頻內(nèi)容的播放方法,應(yīng)用于流媒體視頻通信系統(tǒng)中,其特征在于,包括獲取待播放的流媒體視頻內(nèi)容的視頻定位seek時間;從所述待播放的流媒體視頻內(nèi)容包含的I幀中,獲取所述視頻定位seek時間對應(yīng)的目 標(biāo)I幀;播放所述目標(biāo)I幀。
2.根據(jù)權(quán)利要求1所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述從所述待播 放的流媒體視頻內(nèi)容包含的I幀中,獲取所述視頻定位seek時間對應(yīng)的目標(biāo)I幀,包括獲取所述待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分片的時長,所述各分片時長均相同;根據(jù)所述待播放的流媒體視頻內(nèi)容對應(yīng)的分片的時長和所述視頻定位seek時間,確 定所述目標(biāo)I幀。
3.根據(jù)權(quán)利要求1所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述獲取待播放 的流媒體視頻內(nèi)容的視頻定位seek時間之前,包括獲取所述待播放的流媒體視頻內(nèi)容包含的I幀; 存儲所述獲取的待播放的流媒體視頻內(nèi)容包含的I幀。
4.根據(jù)權(quán)利要求3所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述獲取所述待 播放的流媒體視頻內(nèi)容包含的I幀,包括向服務(wù)器發(fā)送I幀請求信息,其中,所述I幀請求信息包含用于識別I幀歸屬分片的統(tǒng) 一資源定位符URL和所述I幀對應(yīng)的字節(jié)范圍;接收服務(wù)器發(fā)送的所述I幀請求信息對應(yīng)的待播放的流媒體視頻內(nèi)容包含的I幀。
5.根據(jù)權(quán)利要求3所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述存儲所述待 播放的流媒體視頻內(nèi)容包含的I幀,包括使用單獨I幀文件存儲所述待播放的流媒體視頻內(nèi)容包含的I幀。
6.根據(jù)權(quán)利要求3所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述存儲所述待 播放的流媒體視頻內(nèi)容包含的I幀,包括將所述待播放的視頻內(nèi)容包含的I幀與所述待播放的流媒體視頻內(nèi)容存儲為同一文件。
7.根據(jù)權(quán)利要求1所述的流媒體視頻內(nèi)容的播放方法,其特征在于,還包括 計算所述待播放的流媒體視頻內(nèi)容包含的I幀的播放速度;以所述播放速度正向或反向播放所述待播放的流媒體視頻內(nèi)容包含的I幀。
8.根據(jù)權(quán)利要求7所述的流媒體視頻內(nèi)容的播放方法,其特征在于,所述計算所述待 播放的流媒體視頻內(nèi)容包含的I幀的播放速度,包括獲取快進(jìn)或快退時視頻播放的速度倍數(shù),并獲取所述待播放的流媒體視頻內(nèi)容對應(yīng)的 任意一個分片的時長,所述各分片時長均相同;將所述時長除以所述速度倍數(shù),得到所述待播放的流媒體視頻內(nèi)容包含的I幀的播放 速度。
9.一種流媒體視頻內(nèi)容的播放方法,其特征在于,包括獲取視頻播放的業(yè)務(wù)信息,其中,所述業(yè)務(wù)信息包含流媒體視頻內(nèi)容的預(yù)覽信息和多章節(jié)信息;根據(jù)所述視頻播放的業(yè)務(wù)信息,獲取待播放的流媒體視頻內(nèi)容包含的I幀; 播放所述I幀。
10.根據(jù)權(quán)利要求9流媒體視頻內(nèi)容的播放方法,其特征在于所述預(yù)覽信息,包括流媒體視頻內(nèi)容的預(yù)覽指示,所述預(yù)覽指示對應(yīng)的流媒體視頻內(nèi) 容為待播放的流媒體視頻內(nèi)容;所述多章節(jié)信息,包括所述流媒體視頻內(nèi)容的總時長,以及所述流媒體視頻內(nèi)容劃分 的章節(jié)數(shù)。
11.一種流媒體視頻內(nèi)容的播放裝置,其特征在于,包括視頻定位seek時間獲取模塊,用于獲取待播放的流媒體視頻內(nèi)容的視頻定位seek時間;目標(biāo)I幀獲取模塊,用于從所述待播放的流媒體視頻內(nèi)容包含的I幀中,獲取所述視頻 定位seek時間對應(yīng)的目標(biāo)I幀;目標(biāo)I幀播放模塊,用于播放所述獲取的目標(biāo)I幀。
12.根據(jù)權(quán)利要求11所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,所述目標(biāo)I幀獲 取模塊,還包括分片時長獲取子模塊,用于獲取所述待播放的流媒體視頻內(nèi)容對應(yīng)的任意一個分片的 時長,所述各分片時長均相同;目標(biāo)I幀確定子模塊,用于根據(jù)所述分片時長獲取子模塊獲取的分片的時長和所述視 頻定位seek時間,確定所述目標(biāo)I幀。
13.根據(jù)權(quán)利要求11所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,還包括 第一 I幀獲取模塊,用于獲取所述待播放的流媒體視頻內(nèi)容包含的I幀;存儲模塊,用于存儲所述第一I幀獲取模塊獲取的待播放的流媒體視頻內(nèi)容包含的I幀。
14.根據(jù)權(quán)利要求13所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,所述第一I幀獲 取模塊,包括請求發(fā)送子模塊,用于向服務(wù)器發(fā)送I幀請求信息,其中,所述I幀請求信息包含用于 識別I幀歸屬分片的統(tǒng)一資源定位符URL和所述I幀對應(yīng)的字節(jié)范圍;I幀接收子模塊,用于接收服務(wù)器發(fā)送的所述I幀請求信息對應(yīng)的待播放的流媒體視 頻內(nèi)容包含的I幀。
15.根據(jù)權(quán)利要求11所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,還包括 播放速度計算模塊,用于計算所述待播放的流媒體視頻內(nèi)容包含的I幀的播放速度; 第一 I幀播放模塊,用于以所述播放速度獲取模塊獲取的播放速度正向或反向播放所述待播放的流媒體視頻內(nèi)容包含的I幀。
16.根據(jù)權(quán)利要求15所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,所述播放速度 計算模塊,包括第一獲取子模塊,用于獲取快進(jìn)或快退時視頻播放的速度倍數(shù),并獲取所述待播放的 流媒體視頻內(nèi)容對應(yīng)的任意一個分片的時長,所述各分片時長均相同;計算子模塊,用于將所述獲取的時長除以所述速度倍數(shù),得到所述待播放的流媒體視頻內(nèi)容包含的I幀的播放速度。
17.一種流媒體視頻內(nèi)容的播放裝置,其特征在于,包括業(yè)務(wù)信息獲取模塊,用于獲取視頻播放的業(yè)務(wù)信息,其中,所述業(yè)務(wù)信息包含流媒體視 頻內(nèi)容的預(yù)覽信息和多章節(jié)信息;第二 I幀獲取模塊,用于根據(jù)所述獲取的視頻播放的業(yè)務(wù)信息,獲取待播放的流媒體 視頻內(nèi)容包含的I幀;第二播放模塊,用于播放所述獲取的I幀。
18.根據(jù)權(quán)利要求17所述的流媒體視頻內(nèi)容的播放裝置,其特征在于,所述業(yè)務(wù)信息 獲取模塊,包括預(yù)覽信息獲取子模塊,用于獲取所述流媒體視頻內(nèi)容的預(yù)覽指示; 多章節(jié)信息獲取子模塊,用于獲取所述流媒體視頻內(nèi)容的總時長,以及所述流媒體視 頻內(nèi)容劃分的章節(jié)數(shù)。
全文摘要
本發(fā)明公開了一種流媒體視頻內(nèi)容的播放方法和裝置,涉及視頻播放技術(shù),為解決現(xiàn)有技術(shù)進(jìn)行視頻定位seek時,不能快速直觀準(zhǔn)確的定位到用戶期望看到的畫面的問題而發(fā)明。本發(fā)明的技術(shù)方案為一種流媒體視頻內(nèi)容的播放方法,包括獲取待播放的流媒體視頻內(nèi)容的視頻定位seek時間;從所述待播放的流媒體視頻內(nèi)容包含的I幀中,獲取所述視頻定位seek時間對應(yīng)的目標(biāo)I幀;播放所述目標(biāo)I幀。本發(fā)明實施例提供的流媒體視頻內(nèi)容的播放方法和裝置,適用于計算機(jī)、手機(jī)等多種終端上。
文檔編號H04N21/438GK102137302SQ20101058169
公開日2011年7月27日 申請日期2010年12月9日 優(yōu)先權(quán)日2010年12月9日
發(fā)明者甘漠 申請人:華為技術(shù)有限公司