一種視頻壓縮、播放方法以及裝置的制造方法
【專利摘要】本發(fā)明實施例提供了一種視頻壓縮、播放方法及裝置,所述視頻壓縮方法包括:預先按照場景確定視頻數(shù)據(jù)的劃分信息;依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀;依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)所述場景信息表對編碼視頻數(shù)據(jù)進行解碼,所述方法用于視頻編碼壓縮過程中,統(tǒng)一了視頻的劃分標準、編碼標準,生成的場景信息表還可以作為后續(xù)視頻解碼、播放、編輯等操作的依據(jù)。
【專利說明】
一種視頻壓縮、播放方法以及裝置
技術領域
[0001]本發(fā)明涉及多媒體領域,特別是涉及一種視頻壓縮、播放方法,以及一種視頻壓縮、播放裝置。
【背景技術】
[0002]目前,現(xiàn)有的視頻分段方法包括將一個完整視頻分段,裁剪為多個視頻分段,但是在某一個分段中可能出現(xiàn),包括一個或多個場景的情況;還可能出現(xiàn),某一個場景包括一個或多個分段。
[0003]由于視頻分段的標準不統(tǒng)一,給后續(xù)視頻的壓縮、視頻的解碼、視頻的播放都帶來了很大的影響。如在視頻編碼過程中,不能保證在每個場景切換時,該場景的起始幀均為I幀,一般平均來說,I幀的壓縮率是7,P幀是20,B幀可以達到50,若該場景的起始幀為P幀或B幀,當一新的場景進行編碼時,壓縮比過高致使編碼后的關鍵數(shù)據(jù)缺失,導致視頻的壓縮效果不好。
[0004]因此,本領域技術人員亟需解決的問題在于:提供一種視頻頻壓縮、播放方法及裝置,用以解決現(xiàn)有技術中視頻處理標準不統(tǒng)一的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供一種視頻壓縮、播放方法及裝置,用以解決現(xiàn)有技術中視頻處理標準不統(tǒng)一的問題。
[0006]本發(fā)明實施例公開了一種視頻壓縮方法,包括:預先按照場景確定視頻數(shù)據(jù)的劃分信息;依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀;依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)所述場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0007]相應的,本發(fā)明實施例公開了一種視頻壓縮裝置,包括:信息確定模塊,用于預先按照場景確定視頻數(shù)據(jù)的劃分信息;分段確定模塊,用于依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀;執(zhí)行模塊,用于依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)所述場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0008]本發(fā)明實施例還公開了一種視頻播放方法,包括:獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表;依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)所述起始關鍵幀依次對各個視頻分段進行解碼;將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。
[0009]相應的,本發(fā)明實施例還公開了一種視頻播放裝置,包括:獲取模塊,用于獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表;解碼模塊,用于依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)所述起始關鍵幀依次對各個視頻分段進行解碼;播放模塊,用于將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。
[0010]本發(fā)明實施例提供的一種視頻壓縮、播放方法及裝置通過預先按照場景確定視頻數(shù)據(jù)的劃分信息;依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀;依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,統(tǒng)一了視頻的劃分標準、編碼標準,每個視頻分段都以場景劃分,且每個視頻分段都以起始關鍵幀為起點進行編碼,確保每個場景的壓縮效果的同時,還可以提高視頻數(shù)據(jù)的壓縮比例。
【附圖說明】
[0011]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0012]圖1是本發(fā)明一個實施例的一種視頻壓縮方法的步驟流程圖;
[0013]圖2是本發(fā)明另一個實施例的一種視頻壓縮方法的步驟流程圖;
[0014]圖3是本發(fā)明一個實施例的一種視頻播放方法的步驟流程圖;
[0015]圖4是本發(fā)明另一個實施例的一種視頻播放方法的步驟流程圖;
[0016]圖5是本發(fā)明一個實施例的視頻壓縮裝置的結(jié)構(gòu)框圖;
[0017]圖6是本發(fā)明另一個實施例的視頻壓縮裝置的結(jié)構(gòu)框圖;
[0018]圖7是本發(fā)明一個實施例的視頻播放裝置的結(jié)構(gòu)框圖;
[0019]圖8是本發(fā)明另一個實施例的視頻播放裝置的結(jié)構(gòu)框圖。
【具體實施方式】
[0020]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0021]現(xiàn)有技術中,在視頻錄制、編碼、解碼、播放、編輯等過程中,由于其中的標準不統(tǒng)一,導致用戶在對視頻處理過程中出現(xiàn)各種不便,如,在對一個視頻分段時,因分段標準不統(tǒng)一,會出現(xiàn)一個分段中出現(xiàn)多個場景或一個場景中出現(xiàn)多個分段的情況,又如,若每個分段的首幀出現(xiàn)非I幀的情況,給視頻數(shù)據(jù)在編解碼過程中帶來不便。
[0022]因此,本發(fā)明實施例的核心思想是采用場景對應視頻分段,即將視頻數(shù)據(jù)按照場景進行分段,并以此確定視頻數(shù)據(jù)編碼、解碼播放的標準。
[0023]實施例一
[0024]參照圖1,示出了本發(fā)明一個實施例的一種視頻壓縮方法的步驟流程圖,具體可以包括如下步驟:
[0025]步驟S102、預先按照場景確定視頻數(shù)據(jù)的劃分信息。
[0026]在視頻進行最初錄制的過程中,記錄每個場景進行切換的時間,在錄制完成后,對錄制完成的視頻數(shù)據(jù)進行編碼前預處理,依據(jù)在錄制過程中的記錄的每個場景切換時間,確定視頻數(shù)據(jù)中的每個場景,其中,每個場景對應有場景信息,將視頻數(shù)據(jù)中的每個場景的場景信息和場景切換時間作為視頻數(shù)據(jù)的劃分信息。
[0027]步驟S104、依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀。
[0028]查找劃分信息中每個場景對應的場景信息以及每個場景的切換時間,依此,確定出每個場景對應的視頻分段。
[0029]依次查找每個視頻分段的起始幀,將每個視頻分段的起始幀配置為起始關鍵幀,配置起始關鍵幀的目的是為使每個視頻分段在進行編碼或解碼時,都能以起始關鍵幀為起點進行編碼或解碼,其中,起始關鍵幀可以包括I幀。
[0030]步驟S106、依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表。
[0031]在編碼過程中,查找第一個場景對應的視頻分段,并以第一個視頻分段的起始關鍵幀為起點進行編碼,再以第二個場景對應的視頻分段的起始關鍵幀為起點進行編碼,依次對各個視頻分段進行編碼。且在編碼的同時,依次記錄每個視頻分段的起始關鍵幀在編碼視頻數(shù)據(jù)中的位置信息。
[0032]起始關鍵幀的壓縮比較低,可以確保在每個視頻分段開始編碼時,保存該視頻分段圖像數(shù)據(jù)的基本框架,以使后續(xù)的幀數(shù)據(jù)可以選擇更多的P幀或B幀,P幀和B幀的壓縮比高,這樣提高了視頻的壓縮比例。
[0033]在編碼完成后,得到編碼視頻數(shù)據(jù),同時得到每個視頻分段的起始關鍵幀在編碼視頻數(shù)據(jù)中的具體位置數(shù)據(jù),將該位置數(shù)據(jù)生成對應的場景信息表。
[0034]其中,場景信息表是后續(xù)對編碼視頻數(shù)據(jù)的解碼播放的依據(jù),以使播放器依據(jù)場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0035]本發(fā)明實施例通過預先按照場景確定視頻數(shù)據(jù)的劃分信息;依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀;依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,統(tǒng)一了視頻的劃分標準、編碼標準,每個視頻分段都以場景劃分,且每個視頻分段都以起始關鍵幀為起點進行編碼,確保每個場景的壓縮效果的同時,還可以提高視頻數(shù)據(jù)的壓縮比例。
[0036]實施例二
[0037]參照圖2,示出了本發(fā)明另一個實施例一種視頻壓縮方法的步驟流程圖,具體可以包括如下步驟:
[0038]步驟S202、預先確定各場景的場景標識以及場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息。
[0039]在視頻進行最初錄制的過程中,記錄每個場景進行切換的時間,在錄制完成后,對錄制完成的視頻數(shù)據(jù)進行編碼前預處理,依據(jù)在錄制過程中的記錄的每個場景切換時間,確定視頻數(shù)據(jù)中的每個場景,其中,每個場景對應有場景標識,將視頻數(shù)據(jù)中的每個場景的場景標識和場景切換時間作為視頻數(shù)據(jù)的劃分信息。如在視頻錄制過程中,預先將整個視頻數(shù)據(jù)按照場景進行錄制,將每個場景進行編號。
[0040]在對視頻分段進行錄制的過程中,記錄每個視頻分段開始錄制和完成錄制的時間,即場景切換的時間,當一場景錄制完成切到下一場景進行錄制時,記錄該時間,這樣每一個視頻分段都對應一個場景切換時間。
[0041 ]將各個視頻分段對應的場景標識和場景對應的切換時間作為劃分信息,用于對錄制好的視頻數(shù)據(jù)按照劃分信息進行分段處理,方便后續(xù)的編碼步驟。
[0042]如,現(xiàn)有一視頻數(shù)據(jù),有三個場景,每個場景的錄制時間依次為30S、60S和90S,則依次將三個場景編碼為場景1、場景2和場景3,則對于的場景切換時間為,0S、30S和90S。
[0043]步驟S204、依據(jù)劃分信息中的切換時間對視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段。
[0044]對于一個完整的視頻,該視頻有對應的播放時間,即視頻的時長,如90分鐘、120分鐘等,依據(jù)劃分信息中每個場景切換的時間,就可將視頻數(shù)據(jù)分割為多個視頻分段,對應的每個視頻分段對應一個場景,在劃分信息中還包括場景標識,依據(jù)場景標識即可將場景和視頻分段一一對應,如依據(jù)場景標號確定每個視頻分段。
[0045]步驟S206、將各個視頻分段的起始幀配置為起始關鍵幀。
[0046]在每個視頻分段確定完成后,查找每個視頻分段的起始幀,并將每個起始幀配置為起始關鍵幀,其中,起始關鍵幀包括I幀,I幀又稱關鍵幀,一般來說,I幀的壓縮率是7,P幀是20,B幀可以達到50,將I幀作為起始幀即首幀,目的是I幀的壓縮率低,可以確保在每個視頻分段開始編碼時,保存該視頻分段圖像數(shù)據(jù)的基本框架,以使后續(xù)的幀數(shù)據(jù)可以選擇更多的P幀或B幀,這樣提高了視頻的壓縮比例。
[0047]步驟S208、分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù)。
[0048]步驟S210、在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表。
[0049]查找所有視頻分段,確定第一個場景對應的視頻分段,并以第一個視頻分段的起始關鍵幀為起點進行編碼,再以第二個場景對應的視頻分段的起始關鍵幀為起點繼續(xù)進行編碼,依此,對各個視頻分段進行編碼,得到編碼視頻數(shù)據(jù),與此同時,當每一個視頻分段進行編碼時,記錄該視頻分段的起始關鍵幀在整個編碼視頻數(shù)據(jù)的位置信息,這樣在所有視頻分段完成編碼后,將所有視頻分段的起始關鍵幀在整個編碼視頻數(shù)據(jù)中的位置信息生成一場景信息表,該場景信息表是后續(xù)對編碼視頻數(shù)據(jù)的解碼播放的依據(jù),以使播放器依據(jù)場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0050]本發(fā)明實施例為解決seek效率過低的問題,還可以通過根據(jù)該場景對應視頻分段時長的大小,來適當?shù)脑黾覫幀個數(shù)。
[0051]本發(fā)明的一種優(yōu)選實施例是在視頻編碼規(guī)范和系統(tǒng)層的數(shù)據(jù)組織格式中進行擴展,增加一種表格定義,以使在視頻進行編碼時,記錄每個視頻分段起始關鍵幀在編碼視頻數(shù)據(jù)中的位置信息,生成場景信息表,以使后續(xù)視頻的解碼、播放、編輯等都可以依據(jù)該場景信息表進行。
[0052]例如:以mp4文件為例
[0053]自定義一張類似于stco的場景信息表即Scene offset box,其中保存每個scene(一個完整的場景稱為一個scene)的起始位置的off set。視頻中包含多少個scene,該box的長度就是多少個64位的地址數(shù)據(jù)的長度。
[0054]如視頻中有20個場景,貝Ijscene offset box就定義如下:
[0055]Size:164(20*8+4+4);
[0056]type:uuid(表示用戶自定義);
[0057]sub-type: stso(表不scene offset box);
[0058]<^€861:1(8字節(jié)數(shù)值):第1個場景的起始地址;
[0059]offset2(8字節(jié)數(shù)值):第2個場景的起始地址;
[0060]offset3(8字節(jié)數(shù)值):第3個場景的起始地址;
[0061]......
[0062]0ffset20(8字節(jié)數(shù)值):第20個場景的起始地址。
[0063]對于已有的視頻(已經(jīng)編碼好的,但是未包含場景表信息的視頻),可以利用軟件進行視頻內(nèi)容分析或者人工干預的方式,轉(zhuǎn)碼并生成場景信息表。
[0064]本發(fā)明實施例通過預先確定各場景的場景標識以及場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息,依據(jù)劃分信息中的切換時間對視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段,將各個視頻分段的起始幀配置為起始關鍵幀,分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù),在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表;統(tǒng)一了視頻的劃分標準、編碼標準,每個視頻分段都以場景劃分,每個場景都有場景標識,且每個視頻分段都以起始關鍵幀為起點進行編碼,確保每個場景的壓縮效果的同時,還可以提高視頻數(shù)據(jù)的壓縮比例;通過記錄每個視頻分段的起始關鍵幀在整個視頻數(shù)據(jù)中的位置信息,為以后視頻的解碼、播放、編輯等提供依據(jù)。
[0065]實施例三
[0066]參照圖3,示出了本發(fā)明一個實施例一種視頻播放方法的步驟流程圖,具體可以包括如下步驟:
[0067]步驟S302、獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表。
[0068]當播放器接收到播放視頻指令時,依據(jù)播放視頻指令,獲取將要播放視頻對應的編碼視頻數(shù)據(jù),并依據(jù)編碼視頻數(shù)據(jù)查找編碼視頻數(shù)據(jù)對應的場景信息表,以便后續(xù)解碼器依據(jù)場景信息表解碼編碼視頻數(shù)據(jù)。
[0069]步驟S304、依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)起始關鍵幀依次對各個視頻分段進行解碼。
[0070]步驟S306、將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。
[0071]解析得到的場景信息表,查找場景信息表中記錄每個視頻分段的起始關鍵幀的位置,依據(jù)編碼視頻數(shù)據(jù)中首個起始關鍵幀為起點依次對各個視頻分段進行解碼。
[0072]解碼的視頻分段數(shù)據(jù)可能來自不同的服務器,這時可以將解碼得到的視頻分段,依據(jù)場景信息表確定每個視頻分段對應的場景,并依據(jù)場景進行排序,將各個視頻分段按照順序進行播放。
[0073]如出現(xiàn)某個視頻分段因數(shù)據(jù)源問題或網(wǎng)絡問題,無法進行下載,進而無法得到解碼數(shù)據(jù),因本發(fā)明實施例是以場景為依據(jù)劃分視頻分段,其每個視頻分段都是獨立的,在缺少某一視頻分段時,即缺少某一場景,不影響對整個視頻的播放,在播放到該視頻分段時,跳過該視頻分段,播放下一視頻分段即可。
[0074]本發(fā)明實施例通過獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表,依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)起始關鍵幀依次對各個視頻分段進行解碼,將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放,使解碼時依據(jù)編碼過程中的場景信息表,這樣可以確保每個視頻分段在解碼時首幀都為起始關鍵幀,播放器可以通過起始關鍵幀快速的解碼出該視頻分段的視頻數(shù)據(jù)。
[0075]實施例四
[0076]參照圖4,示出了本發(fā)明另一個實施例一種視頻播放方法的步驟流程圖,具體可以包括如下步驟:
[0077]步驟S402、獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表。
[0078]當播放器接收到播放視頻指令時,依據(jù)播放視頻指令,獲取將要播放視頻對應的編碼視頻數(shù)據(jù),并依據(jù)編碼視頻數(shù)據(jù)查找編碼視頻數(shù)據(jù)對應的場景信息表,以便后續(xù)解碼器依據(jù)場景信息表解碼編碼視頻數(shù)據(jù)。
[0079]步驟S404、依據(jù)場景信息表中位置信息確定各個視頻分段的起始關鍵幀。
[0080]步驟S406、從起始關鍵幀開始對視頻分段進行解碼。
[0081]步驟S408、將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。
[0082]解析得到的場景信息表,查找場景信息表中記錄每個視頻分段的起始關鍵幀的位置信息,并確定所有起始關鍵幀在整個編碼視頻數(shù)據(jù)中的位置信息,依據(jù)編碼視頻數(shù)據(jù)中首個起始關鍵幀為起點依次對各個視頻分段進解碼的視頻分段數(shù)據(jù)可能來自不同的服務器,這時可以將解碼得到的視頻分段,依據(jù)場景信息表確定每個視頻分段對應的場景,并依據(jù)場景進行排序,將各個視頻分段按照順序進行播放。
[0083]步驟S410、當接收到查找指令時,確定當前視頻播放時間對應視頻分段的當前場景。
[0084]當播放器接收到查找指令時,查找當前播放的時間對應的視頻分段,依據(jù)該視頻分段確定當前視頻分段對應的場景。
[0085]其中,查找指令,可以包括快進,即查找下一場景指令;還可以包括快退指令,即查找上一場景指令。
[0086]步驟S412、在場景信息表中查找當前場景對應相鄰場景的位置信息。
[0087]步驟S414、依據(jù)位置信息確定相鄰場景的起始關鍵幀,從起始關鍵幀開始播放相鄰場景的視頻分段。
[0088]依據(jù)查找指令,在場景信息表中查找當前場景對應相鄰場景的視頻分段,確定該視頻分段的位置信息,并查找該視頻分段的起始關鍵幀,以從起始關鍵幀開始播放相鄰場景的視頻分段。其中,相鄰場景包括上一場景或下一場景。
[0089]如,若當前播放的視頻分段編號為場景6,現(xiàn)接收到快進指令,發(fā)出查找下一場景對應視頻分段的指令,依據(jù)快進指令獲取當前播放的視頻分段為場景6,再依據(jù)查找下一場景對應視頻分段的指令,確定編碼為場景7的視頻分段,并確定場景7視頻分段的起始關鍵幀,以場景7視頻分段的場景其實關鍵幀為起點播放場景7對應的視頻分段。
[0090]本發(fā)明實施例通過獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表,依據(jù)場景信息表中位置信息確定各個視頻分段的起始關鍵幀,從起始關鍵幀開始對視頻分段進行解碼,將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放,使解碼時依據(jù)編碼過程中的場景信息表,這樣可以確保每個視頻分段在解碼時首幀都為起始關鍵幀,播放器可以通過起始關鍵幀快速解碼出該視頻分段的視頻數(shù)據(jù)。
[0091]本發(fā)明實施例還為用戶提供一種新的觀看視頻的模式,依據(jù)解碼后得到的視頻數(shù)據(jù),可以獲取該視頻數(shù)據(jù)包括多少個場景,在每一個視頻分段的開頭可以方便的獲取到該視頻分段對應場景的縮略圖,從而可以快速獲悉該視頻的大體內(nèi)容。
[0092]本發(fā)明實施例還可以通過快進或快退一整個場景為單位,進行場景切換播放,而對于視頻編輯軟件來說,可以通過調(diào)整每個視頻分段的順序,或增加刪除某些視頻分段,因以場景為單位,對視頻數(shù)據(jù)的處理不因增加場景、減少場景或改變場景順序,而使視頻混舌L。
[0093]需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明實施例并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。
[0094]實施例五
[0095]參照圖5,示出了本發(fā)明一個實施例一種視頻壓縮裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:
[0096]信息確定模塊502,用于預先按照場景確定視頻數(shù)據(jù)的劃分信息;分段確定模塊504,用于依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀;執(zhí)行模塊506,用于依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0097]本發(fā)明實施例通過信息確定模塊預先按照場景確定視頻數(shù)據(jù)的劃分信息;分段確定模塊依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀;執(zhí)行模塊依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,統(tǒng)一了視頻的劃分標準、編碼標準,每個視頻分段都以場景劃分,且每個視頻分段都以起始關鍵幀為起點進行編碼,確保每個場景的壓縮效果的同時,還可以提高視頻數(shù)據(jù)的壓縮比例。
[0098]對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
[0099]實施例六
[0100]參照圖6,示出了本發(fā)明另一實施例一種視頻壓縮裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:
[0101 ]信息確定模塊502,用于預先確定各場景的場景標識以及場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息;分段確定模塊504,用于依據(jù)劃分信息對視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和視頻分段的起始關鍵幀;執(zhí)行模塊506,用于依據(jù)起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)場景信息表對編碼視頻數(shù)據(jù)進行解碼。
[0?O2]其中,分段確定模塊504,包括:劃分子模塊5042,用于依據(jù)劃分信息中的切換時間對視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段;配置子模塊5044,用于將各個視頻分段的起始幀配置為起始關鍵幀,其中,起始關鍵幀包括I幀。
[0103]執(zhí)行模塊506,包括:編碼子模塊5062,用于分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù);以及生成子模塊5064,用于在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表。
[0104]本發(fā)明實施例通過預先確定各場景的場景標識以及場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息,依據(jù)劃分信息中的切換時間對視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段,將各個視頻分段的起始幀配置為起始關鍵幀,分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù),在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表;統(tǒng)一了視頻的劃分標準、編碼標準,每個視頻分段都以場景劃分,每個場景都有場景標識,且每個視頻分段都以起始關鍵幀為起點進行編碼,確保每個場景的壓縮效果的同時,還可以提高視頻數(shù)據(jù)的壓縮比例;通過記錄每個視頻分段的起始關鍵幀在整個視頻數(shù)據(jù)中的位置信息,為以后視頻的解碼、播放、編輯等提供依據(jù)。
[0105]實施例七
[0106]參照圖7,示出了本發(fā)明一個實施例的一種視頻播放裝置的結(jié)構(gòu)框圖,具體可以包括:
[0107]獲取模塊702,用于獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表;解碼模塊704,用于依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)起始關鍵幀依次對各個視頻分段進行解碼;播放模塊706,用于將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。
[0108]本發(fā)明實施例通過獲取模塊獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表,解碼模塊依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)起始關鍵幀依次對各個視頻分段進行解碼,播放模塊將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放,使解碼時依據(jù)編碼過程中的場景信息表,這樣可以確保每個視頻分段在解碼時首幀都為起始關鍵幀,播放器可以通過起始關鍵幀快速的解碼出該視頻分段的視頻數(shù)據(jù)。
[0109]實施例八
[0110]參照圖8,示出了本發(fā)明另一個實施例的一種視頻播放裝置的結(jié)構(gòu)框圖,具體可以包括:
[0111]獲取模塊702,用于獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表;解碼模塊704,用于依據(jù)場景信息表中位置信息確定各個視頻分段的起始關鍵幀;從起始關鍵幀開始對視頻分段進行解碼,其中,起始關鍵幀包括I幀;播放模塊706,用于將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放;查找模塊708,當接收到查找指令時,確定當前視頻播放時間對應視頻分段的當前場景;位置確定模塊710,用于在場景信息表中查找當前場景對應相鄰場景的位置信息;執(zhí)行模塊712,依據(jù)位置信息確定相鄰場景的起始關鍵幀,從起始關鍵幀開始播放相鄰場景的視頻分段。
[0112]本發(fā)明實施例通過獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表,依據(jù)場景信息表中位置信息確定各個視頻分段的起始關鍵幀,從起始關鍵幀開始對視頻分段進行解碼,將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放,使解碼時依據(jù)編碼過程中的場景信息表,這樣可以確保每個視頻分段在解碼時首幀都為起始關鍵幀,播放器可以通過起始關鍵幀快速解碼出該視頻分段的視頻數(shù)據(jù)。
[0113]本發(fā)明實施例還為用戶提供一種新的觀看視頻的模式,依據(jù)解碼后得到的視頻數(shù)據(jù),可以獲取該視頻數(shù)據(jù)包括多少個場景,在每一個視頻分段的開頭可以方便的獲取到該視頻分段對應場景的縮略圖,從而可以快速獲悉該視頻的大體內(nèi)容。
[0114]本發(fā)明實施例還可以通過快進或快退進操作,以一整個場景為單位,進行場景切換播放。
[0115]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡模塊上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性的勞動的情況下,即可以理解并實施。
[0116]本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0117]本領域內(nèi)的技術人員應明白,本發(fā)明實施例的實施例可提供為方法、裝置、或計算機程序產(chǎn)品。因此,本發(fā)明實施例可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明實施例可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
[0118]本發(fā)明實施例是參照根據(jù)本發(fā)明實施例的方法、終端設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理終端設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理終端設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
[0119]這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理終端設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
[0120]這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理終端設備上,使得在計算機或其他可編程終端設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程終端設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0121]盡管已描述了本發(fā)明實施例的優(yōu)選實施例,但本領域內(nèi)的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明實施例范圍的所有變更和修改。
[0122]最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。
[0123]以上對本發(fā)明所提供的一種視頻壓縮、播放方法和一種視頻壓縮、播放裝置,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各實施例技術方案的精神和范圍。
【主權項】
1.一種視頻壓縮方法,其特征在于,包括: 預先按照場景確定視頻數(shù)據(jù)的劃分信息; 依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀; 依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)所述場景信息表對編碼視頻數(shù)據(jù)進行解碼。2.根據(jù)權利要求1所述方法,其特征在于,所述預先按照場景確定視頻數(shù)據(jù)的劃分信息,包括: 預先確定各場景的場景標識以及所述場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息。3.根據(jù)權利要求2所述方法,其特征在于,所述依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀,包括: 依據(jù)劃分信息中的切換時間對所述視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段; 將各個視頻分段的起始幀配置為起始關鍵幀,其中,所述起始關鍵幀包括I幀。4.根據(jù)權利要求3所述方法,其特征在于,所述依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,包括: 分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù);以及 在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表。5.一種視頻播放方法,其特征在于,包括: 獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表; 依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)所述起始關鍵幀依次對各個視頻分段進行解碼; 將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。6.根據(jù)權利要求5所述方法,其特征在于,所述依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)所述起始關鍵幀依次對各個視頻分段進行解碼,包括: 依據(jù)所述場景信息表中位置信息確定各個視頻分段的起始關鍵幀; 從所述起始關鍵幀開始對所述視頻分段進行解碼,其中,所述起始關鍵幀包括I幀。7.根據(jù)權利要求5所述方法,其特征在于,所述方法,還包括: 當接收到查找指令時,確定當前視頻播放時間對應視頻分段的當前場景; 在所述場景信息表中查找所述當前場景對應相鄰場景的位置信息; 依據(jù)所述位置信息確定所述相鄰場景的起始關鍵幀,從所述起始關鍵幀開始播放所述相鄰場景的視頻分段。8.一種視頻壓縮裝置,其特征在于,包括: 信息確定模塊,用于預先按照場景確定視頻數(shù)據(jù)的劃分信息; 分段確定模塊,用于依據(jù)所述劃分信息對所述視頻數(shù)據(jù)進行劃分,確定各場景對應的視頻分段和所述視頻分段的起始關鍵幀; 執(zhí)行模塊,用于依據(jù)所述起始關鍵幀對各場景對應視頻分段依次進行編碼,生成編碼視頻數(shù)據(jù)和對應的場景信息表,以使播放器依據(jù)所述場景信息表對編碼視頻數(shù)據(jù)進行解碼。9.根據(jù)權利要求8所述裝置,其特征在于, 所述信息確定模塊,用于預先確定各場景的場景標識以及所述場景標識對應的切換時間,將各場景的場景標識和切換時間作為劃分信息。10.根據(jù)權利要求9所述裝置,其特征在于,所述分段確定模塊,包括: 劃分子模塊,用于依據(jù)劃分信息中的切換時間對所述視頻數(shù)據(jù)進行劃分,確定各場景標識對應的視頻分段, 配置子模塊,用于將各個視頻分段的起始幀配置為起始關鍵幀,其中,所述起始關鍵幀包括I幀。11.根據(jù)權利要求9所述裝置,其特征在于,所述執(zhí)行模塊,包括: 編碼子模塊,用于分別對各視頻分段進行編碼壓縮,生成編碼視頻數(shù)據(jù);以及生成子模塊,用于在編碼壓縮過程中記錄各視頻分段起始關鍵幀的位置信息,生成場景信息表。12.一種視頻播放裝置,其特征在于,包括: 獲取模塊,用于獲取編碼視頻數(shù)據(jù),查找編碼視頻數(shù)據(jù)對應的場景信息表; 解碼模塊,用于依據(jù)場景信息表確定各個視頻分段的起始關鍵幀,依據(jù)所述起始關鍵幀依次對各個視頻分段進行解碼; 播放模塊,用于將解碼后的視頻數(shù)據(jù),按照各個視頻分段依次進行播放。13.根據(jù)權利要求12所述裝置,其特征在于, 所述解碼模塊,用于依據(jù)所述場景信息表中位置信息確定各個視頻分段的起始關鍵幀;從所述起始關鍵幀開始對所述視頻分段進行解碼,其中,所述起始關鍵幀包括I幀。14.根據(jù)權利要求12所述裝置,其特征在于,所述裝置,還包括: 查找模塊,當接收到查找指令時,確定當前視頻播放時間對應視頻分段的當前場景; 位置確定模塊,用于在所述場景信息表中查找所述當前場景對應相鄰場景的位置信息; 執(zhí)行模塊,依據(jù)所述位置信息確定所述相鄰場景的起始關鍵幀,從所述起始關鍵幀開始播放所述相鄰場景的視頻分段。
【文檔編號】H04N19/172GK105979267SQ201510883624
【公開日】2016年9月28日
【申請日】2015年12月3日
【發(fā)明人】盧先根
【申請人】樂視致新電子科技(天津)有限公司