視頻處理方法及裝置制造方法
【專利摘要】本發(fā)明公開(kāi)了一種視頻處理方法及裝置,屬于視頻處理【技術(shù)領(lǐng)域】。方法包括:采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像;對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流;對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流;將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到視頻碼流后,對(duì)視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。本發(fā)明由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,提升了視頻檢索效率。
【專利說(shuō)明】視頻處理方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及視頻處理【技術(shù)領(lǐng)域】,特別涉及一種視頻處理方法及裝置。
【背景技術(shù)】
[0002]隨著視頻處理技術(shù)的不斷進(jìn)步,用戶在觀看一段視頻之前,可進(jìn)行視頻檢索,即用戶可預(yù)先瀏覽視頻,找出其感興趣的視頻區(qū)間,進(jìn)而觀看該視頻區(qū)間對(duì)應(yīng)的視頻內(nèi)容。而為了降低用戶進(jìn)行視頻檢索的時(shí)間,如何對(duì)視頻進(jìn)行處理,成為了一個(gè)關(guān)鍵問(wèn)題。
[0003]現(xiàn)有技術(shù)通常采取兩種視頻處理方式。第一種方式,采用高速快進(jìn)方式播放視頻。一般有2倍速、4倍速、8倍速、16倍速等。在播放視頻時(shí),一種情形是解碼視頻中的全部幀,并按照預(yù)設(shè)比例播放解碼后的一部分視頻幀,丟棄剩余的視頻幀;另一種情形是選擇可獨(dú)立解碼的I幀進(jìn)行解碼,并播放解碼后的I幀,丟棄剩余的視頻幀。第二種方式,在視頻播放進(jìn)度條上設(shè)置播放點(diǎn),當(dāng)用戶選取了某一個(gè)播放點(diǎn)后,從該播放點(diǎn)對(duì)應(yīng)的視頻幀處向前搜索I幀,并從該I幀開(kāi)始進(jìn)行解碼,并按照正常的速度播放解碼后的視頻。
[0004]在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問(wèn)題:
[0005]針對(duì)第一種方式,由于在快進(jìn)播放時(shí)會(huì)丟棄一部分視頻幀,所以存在將包含關(guān)鍵信息的視頻幀丟棄的情況,對(duì)視頻檢索的正確性造成不良影響;且采用高速快進(jìn)的播放方式,會(huì)解碼大量的視頻幀,因此,占用了過(guò)多的系統(tǒng)資源。針對(duì)第二種方式,用戶在選取播放點(diǎn)的時(shí)候,由于播放點(diǎn)對(duì)應(yīng)的視頻內(nèi)容未知,所以選擇播放的精度不高,用戶常常需要重復(fù)選擇播放點(diǎn),較浪費(fèi)時(shí)間,視頻檢索的效率較低。
【發(fā)明內(nèi)容】
[0006]為了解決現(xiàn)有技術(shù)的問(wèn)題,本發(fā)明實(shí)施例提供了一種視頻處理方法及裝置。所述技術(shù)方案如下:
[0007]第一方面,提供了一種視頻處理方法,所述方法包括:
[0008]采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像;
[0009]對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流;
[0010]對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流;
[0011]將所述縮略圖像碼流插入到所述原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到所述視頻碼流后,對(duì)所述視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
[0012]在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像,包括:
[0013]對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將所述原始圖像的寬度縮放到預(yù)設(shè)寬度;
[0014]根據(jù)所述原始圖像的寬高比,對(duì)所述原始圖像的高度進(jìn)行縮放,得到所述原始圖像的縮略圖像。[0015]結(jié)合第一方面,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述對(duì)多個(gè)縮略圖像進(jìn)行編碼,包括:
[0016]將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行JPEG (Joint Photographic ExpertsGroup,聯(lián)合圖像專家小組)編碼。
[0017]結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述對(duì)多個(gè)原始圖像進(jìn)行編碼,包括:
[0018]對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定所述縮略圖像隊(duì)列中存儲(chǔ)有與所述原始圖像相匹配的縮略圖像后,對(duì)所述原始圖像進(jìn)行H.264編碼。
[0019]結(jié)合第一方面,在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述將所述縮略圖像碼流插入到所述原始圖像碼流中,包括:
[0020]對(duì)于所述原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定所述縮略圖碼流中與所述原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù),將所述縮略圖像的編碼數(shù)據(jù)打包為一個(gè) SEI (Supplemental Enhancement Informatian,補(bǔ)充增強(qiáng)信息)包,并將所述 SEI 包插入到與所述原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0021]第二方面,提供了一種視頻處理裝置,所述裝置包括:
[0022]圖像采集模塊,用于采集視頻的原始圖像;
[0023]圖像縮放模塊,用于對(duì)圖像采集模塊采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像;
[0024]縮略圖像編碼模塊,用于對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流;
[0025]原始圖像編碼模塊,用于對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流;
[0026]插入模塊,用于將所述縮略圖像碼流插入到所述原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到所述視頻碼流后,對(duì)所述視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
[0027]在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述縮放模塊,包括:
[0028]寬度縮放單元,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將所述原始圖像的寬度縮放到預(yù)設(shè)寬度;
[0029]高度縮放單元,用于根據(jù)所述原始圖像的寬高比,對(duì)所述原始圖像的高度進(jìn)行縮放,得到所述原始圖像的縮略圖像。
[0030]結(jié)合第二方面,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述縮略圖像編碼模塊,用于將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行JPEG編碼。
[0031]結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述原始圖像編碼模塊,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定所述縮略圖像隊(duì)列中存儲(chǔ)有與所述原始圖像相匹配的縮略圖像后,對(duì)所述原始圖像進(jìn)行H.264編碼。
[0032]結(jié)合第二方面,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述插入模塊,包括:
[0033]確定單元,用于對(duì)于所述原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定所述縮略圖碼流中與所述原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù);
[0034]插入單元,用于將所述縮略圖像的編碼數(shù)據(jù)打包為一個(gè)SEI包,并將所述SEI包插入到與所述原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0035]第三方面,提供了一種視頻處理方法,所述方法包括:[0036]從編碼端獲取視頻碼流;
[0037]當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的SEI包;
[0038]將所述SEI包進(jìn)行解碼,得到縮略圖像;
[0039]將所述縮略圖像在所述縮略圖像播放窗口中進(jìn)行播放。
[0040]在第三方面的第一種可能的實(shí)現(xiàn)方式中,所述在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的SEI包之前,所述方法還包括:
[0041]將所述視頻碼流進(jìn)行切割,得到多個(gè)切割包;
[0042]對(duì)于多個(gè)切割包中的每個(gè)切割包,從所述切割包中提取SEI包。
[0043]結(jié)合第三方面,在第三方面的第二種可能的實(shí)現(xiàn)方式中,所述獲取編碼端的視頻碼流之后,所述方法還包括:
[0044]從所述視頻碼流中獲取原始圖像碼流;
[0045]將所述原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像;
[0046]按照預(yù)設(shè)幀率將所述多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0047]第四方面,提供了一種視頻處理裝置,所述裝置包括:
[0048]碼流獲取模塊,用于從編碼端獲取視頻碼流;
[0049]所述碼流獲取模塊,還用于當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的SEI包;
[0050]縮略圖像解碼模塊,用于將所述SEI包進(jìn)行解碼,得到縮略圖像;
[0051]縮略圖像播放模塊,用于將所述縮略圖像在所述縮略圖像播放窗口中進(jìn)行播放。
[0052]在第四方面的第一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0053]切割模塊,用于將所述視頻碼流進(jìn)行切割,得到多個(gè)切割包;
[0054]提取模塊,用于對(duì)于多個(gè)切割包中的每個(gè)切割包,從所述切割包中提取SEI包。
[0055]結(jié)合第四方面,在第四方面的第二種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0056]所述碼流獲取模塊,還用于從所述視頻碼流中獲取原始圖像碼流;
[0057]原始圖像解碼模塊,用于將所述原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像;
[0058]原始圖像播放模塊,用于按照預(yù)設(shè)幀率將所述多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0059]本發(fā)明實(shí)施例提供的技術(shù)方案帶來(lái)的有益效果是:
[0060]在采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像后,對(duì)每個(gè)縮略圖像及每個(gè)原始視頻圖像進(jìn)行編碼,并將縮略圖像碼流插入到原始圖像碼流中,由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
【專利附圖】
【附圖說(shuō)明】
[0061]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0062]圖1是本發(fā)明實(shí)施例一提供的一種視頻處理的方法流程圖;
[0063]圖2是本發(fā)明實(shí)施例二提供的一種視頻處理的方法流程圖;
[0064]圖3是本發(fā)明實(shí)施例三提供的一種編碼端的系統(tǒng)架構(gòu)圖;
[0065]圖4是本發(fā)明實(shí)施例三提供的一種視頻處理的方法流程圖;
[0066]圖5是本發(fā)明實(shí)施例三提供的一種視頻碼流的結(jié)構(gòu)圖;
[0067]圖6是本發(fā)明實(shí)施例三提供的一種解碼端的系統(tǒng)架構(gòu)圖;
[0068]圖7是本發(fā)明實(shí)施例三提供的一種縮略圖提取設(shè)備的內(nèi)部示意圖;
[0069]圖8是本發(fā)明實(shí)施例四提供的一種視頻處理裝置的結(jié)構(gòu)示意圖;
[0070]圖9是本發(fā)明實(shí)施例五提供的一種視頻處理裝置的結(jié)構(gòu)示意圖;
[0071]圖10是本發(fā)明實(shí)施例六提供的一種視頻處理設(shè)備的結(jié)構(gòu)示意圖;
[0072]圖11是本發(fā)明實(shí)施例七提供的一種視頻處理設(shè)備的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0073]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0074]實(shí)施例一
[0075]本發(fā)明實(shí)施例提供了一種視頻處理方法,以編碼端執(zhí)行的角度為例,參見(jiàn)圖1,本實(shí)施例提供的方法流程包括:
[0076]101、采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像。
[0077]102、對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流。
[0078]103、對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流。
[0079]104、將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到視頻碼流后,對(duì)視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
[0080]本實(shí)施例提供的方法,在采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像后,對(duì)每個(gè)縮略圖像及每個(gè)原始視頻圖像進(jìn)行編碼,并將縮略圖像碼流插入到原始圖像碼流中,由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0081]可選地,對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像,包括:
[0082]對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將原始圖像的寬度縮放到預(yù)設(shè)寬度;
[0083]根據(jù)原始圖像的寬高比,對(duì)原始圖像的高度進(jìn)行縮放,得到原始圖像的縮略圖像。
[0084]可選地,對(duì)多個(gè)縮略圖像進(jìn)行編碼,包括:
[0085]將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行JPEG編碼。
[0086]可選地,對(duì)多個(gè)原始圖像進(jìn)行編碼,包括:
[0087]對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定縮略圖像隊(duì)列中存儲(chǔ)有與原始圖像相匹配的縮略圖像后,對(duì)原始圖像進(jìn)行H.264編碼。
[0088]可選地,將縮略圖像碼流插入到原始圖像碼流中,包括:
[0089]對(duì)于原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù),將縮略圖像的編碼數(shù)據(jù)打包為一個(gè)SEI包,并將SEI包插入到與原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0090]需要說(shuō)明的是,上述可選內(nèi)容可與上述步驟101、步驟102、步驟103和步驟104以任何組合形式進(jìn)行組合,用于執(zhí)行本實(shí)施例提供的發(fā)送消息的方法,本實(shí)施例對(duì)組合形式不進(jìn)行具體限定。
[0091]實(shí)施例二
[0092]本發(fā)明實(shí)施例提供了一種視頻處理方法,以解碼端執(zhí)行的角度為例,參見(jiàn)圖2,本實(shí)施例提供的方法流程包括:
[0093]201、從編碼端獲取視頻碼流。
[0094]202、當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在視頻碼流中獲取與終端指針的當(dāng)前位置相應(yīng)的SEI包。
[0095]203、將SEI包進(jìn)行解碼,得到縮略圖像。
[0096]204、將縮略圖像在縮略圖像播放窗口中進(jìn)行播放。
[0097]本實(shí)施例提供的方法,從編碼端獲取視頻碼流后,在用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0098]可選地,在視頻碼流中獲取與終端指針的當(dāng)前位置相應(yīng)的SEI包之前,該方法還包括:
[0099]將視頻碼流進(jìn)行切割,得到多個(gè)切割包;
[0100]對(duì)于多個(gè)切割包中的每個(gè)切割包,從切割包中提取SEI包。
[0101]可選地,獲取編碼端的視頻碼流之后,該方法還包括:
[0102]從視頻碼流中獲取原始圖像碼流;
[0103]將原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像;
[0104]按照預(yù)設(shè)幀率將多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0105]實(shí)施例三
[0106]在對(duì)本實(shí)施例提供的視頻處理方法進(jìn)行闡述之前,先對(duì)編碼端的系統(tǒng)架構(gòu)及組成進(jìn)行介紹。參見(jiàn)圖3,編碼端主要包括五大部分,分別為圖像采集設(shè)備、圖像處理設(shè)備、調(diào)度設(shè)備、原始圖像編碼設(shè)備、縮略圖像編碼設(shè)備及碼流輸出設(shè)備。其中,圖像采集設(shè)備,用于采集視頻的原始圖像,并將采集到的原始圖像輸出給圖像處理設(shè)備;圖像處理設(shè)備,用于對(duì)原始圖像進(jìn)行前處理及對(duì)原始圖像進(jìn)行縮放;其中,前處理包括但不限于圖像去噪處理、圖像銳化處理及隔行掃描處理;調(diào)度設(shè)備,用于完成編碼調(diào)度、原始圖像碼流和縮略圖像碼流的緩沖、原始圖像和縮略圖像的同步等等;原始圖像編碼設(shè)備,用于對(duì)原始圖像進(jìn)行H.264編碼;縮略圖編碼設(shè)備,用于對(duì)縮略圖像進(jìn)行JPEG編碼;碼流輸出設(shè)備,用于輸出視頻碼流,方便用戶線程獲取視頻碼流。
[0107]本發(fā)明提供了一種視頻處理方法,現(xiàn)結(jié)合上述實(shí)施例一及實(shí)施例二以及圖3所示的系統(tǒng)架構(gòu)對(duì)本發(fā)明實(shí)施例提供的視頻處理方式進(jìn)行詳細(xì)地解釋說(shuō)明。參見(jiàn)圖4,本實(shí)施例提供的方法流程包括:
[0108]401、編碼端采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像。
[0109]在對(duì)采集到的原始圖像進(jìn)行縮放處理時(shí),為了保證縮放后的圖像不變形、不失真,在本實(shí)施例中,采取如下方式對(duì)采集到的原始圖像進(jìn)行縮放處理:
[0110]對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將原始圖像的寬度縮放到預(yù)設(shè)寬度;根據(jù)原始圖像的寬高比,對(duì)原始圖像的高度進(jìn)行縮放,得到原始圖像的縮略圖像。
[0111]在本實(shí)施例中,若采集到的原始圖像大小為640像素*480像素,也即,采集到的原始圖像的寬高比為4:3,則在對(duì)原始圖像進(jìn)行縮放處理,得到縮略圖像之后,縮略圖像的寬高比同樣為4:3,以保證縮放后的圖像不變形、不失真。若將原始圖像的寬度縮放至160像素,則將原始圖像的高度相應(yīng)地縮放到120像素。
[0112]其中,本實(shí)施例將預(yù)設(shè)寬度設(shè)置為160像素。當(dāng)然,預(yù)設(shè)寬度的大小除160像素外,還可為其他數(shù)值,例如200像素或300像素等等,本實(shí)施例對(duì)預(yù)設(shè)寬度的大小不進(jìn)行具體限定。本實(shí)施例僅以預(yù)設(shè)寬度為160像素為例進(jìn)行說(shuō)明。
[0113]此外,在圖像處理設(shè)備對(duì)原始圖像進(jìn)行縮放處理的同時(shí),還將進(jìn)行兩路圖像輸出,一路輸出原始圖像至調(diào)度設(shè)備的原始圖像隊(duì)列,一路輸出縮略圖像至調(diào)度設(shè)備的縮略圖像隊(duì)列;其中,原始圖像隊(duì)列用于緩存原始圖像,在后續(xù)原始圖像編碼過(guò)程中,原始圖像編碼設(shè)備從該原始圖像隊(duì)列中獲取原始圖像進(jìn)行編碼??s略圖像隊(duì)列用于緩存縮略圖像,在后續(xù)縮略圖像編碼過(guò)程中,縮略圖像編碼設(shè)備從該縮略圖像隊(duì)列中獲取縮略圖像進(jìn)行編碼。
[0114]在本實(shí)施例中,調(diào)度設(shè)備可調(diào)度縮略圖像編碼設(shè)備和原始圖像編碼設(shè)備;當(dāng)調(diào)度設(shè)備調(diào)度到縮略圖像編碼設(shè)備后,縮率圖像編碼設(shè)備按照下述步驟402的方式,進(jìn)行編碼;當(dāng)調(diào)度設(shè)備調(diào)度到原始圖像編碼設(shè)備后,原始圖像編碼設(shè)備按照下述步驟403的方式,進(jìn)行編碼。
[0115]402、編碼端對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流。
[0116]當(dāng)調(diào)度設(shè)備調(diào)度到縮略圖像編碼設(shè)備后,縮略圖像編碼設(shè)備先查看縮略圖像隊(duì)列中是否存在縮略圖像;如果縮略圖像隊(duì)列中存在至少一個(gè)縮略圖像,則啟動(dòng)JPEG編碼;在將縮略圖像隊(duì)列中的縮略圖像編碼完畢,得到縮略圖像碼流后,調(diào)度設(shè)備從縮略圖像編碼設(shè)備中獲取縮略圖像碼流,并將獲取到的縮略圖像碼流緩存在調(diào)度設(shè)備的縮略圖像碼流隊(duì)列中。
[0117]需要說(shuō)明的是,由于對(duì)縮略圖像進(jìn)行JPEG編碼,也即,采取靜態(tài)編碼協(xié)議對(duì)縮略圖像進(jìn)行編碼,所以在后續(xù)過(guò)程中對(duì)編碼后的縮略圖像進(jìn)行解碼時(shí),不需要參考其他幀便可對(duì)編碼后的縮略圖像進(jìn)行解碼。因此,終端指針?lè)旁谝曨l播放進(jìn)度條上的任一點(diǎn)處都可以實(shí)時(shí)顯示對(duì)應(yīng)的解碼后的縮略圖像,延時(shí)非常小,進(jìn)而減少了視頻檢索的時(shí)間。
[0118]403、編碼端對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流。
[0119]當(dāng)調(diào)度設(shè)備調(diào)度到原始圖像編碼設(shè)備后,原始圖像編碼設(shè)備先查看原始圖像隊(duì)列中是否存在原始圖像;如果原始圖像隊(duì)列中存在至少一個(gè)原始圖像,則進(jìn)一步查看縮略圖像碼流隊(duì)列中是否存在與原始圖像相對(duì)應(yīng)的縮略圖像的編碼數(shù)據(jù);如果縮略圖像碼流隊(duì)列中存在與原始圖像相對(duì)應(yīng)的縮略圖像的編碼數(shù)據(jù),則啟動(dòng)H.264編碼,得到原始圖像碼流。
[0120]404、編碼端將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流。[0121]在通過(guò)上述步驟402和步驟403分別對(duì)縮略圖像和原始圖像進(jìn)行編碼之后,為了在原始圖像碼流中以用戶數(shù)據(jù)的形式插入縮略圖像碼流,進(jìn)而提高視頻檢索效率。在本實(shí)施例中,原始圖像編碼設(shè)備采取如下方式將縮略圖像碼流插入到原始圖像碼流中:
[0122]對(duì)于原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù),將縮略圖像的編碼數(shù)據(jù)打包為一個(gè)SEI包,并將SEI包插入到與原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0123]在確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù)時(shí),由于原始圖像編碼和縮略圖像編碼均是按照一定的順序進(jìn)行的,因此,若某一原始圖像優(yōu)先于其他所有原始圖像進(jìn)行編碼,則與其對(duì)應(yīng)的縮略圖像也優(yōu)先于其他所有縮略圖像進(jìn)行編碼。所以根據(jù)縮略圖像和原始圖像的編碼順序便可確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù)。
[0124]其中,插入縮略圖像碼流之后的原始圖像碼流可參見(jiàn)圖5。在圖5中,每一個(gè)原始圖像都存在與之對(duì)應(yīng)的SEI包,且一個(gè)SEI包中僅包括一個(gè)縮略圖像的編碼數(shù)據(jù)。其中,一個(gè)SEI包中包括六個(gè)部分;000001是H.264的起始碼;06表示SEI ;0xFl表示SEI包的類型,SEI包的類型可自定義;0xFl是保留字段,提供擴(kuò)展方式;之后的兩個(gè)字節(jié)是SEI包的長(zhǎng)度;最后是縮略圖像的編碼數(shù)據(jù)。
[0125]需要說(shuō)明的是,在通過(guò)上述步驟401至步驟404將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流后,原始圖像編碼設(shè)備將通知碼流輸出設(shè)備獲取視頻碼流,在碼流輸出設(shè)備獲取到視頻碼流后,將視頻碼流存儲(chǔ)在自身的碼流隊(duì)列中,等待用戶線程獲取視頻碼流。當(dāng)用戶線程從碼流輸出設(shè)備中獲取視頻碼流后,還可對(duì)視頻碼流進(jìn)行文件格式的封裝,常見(jiàn)的封裝格式如AVI (Audio Video Interleaved,音頻視頻交錯(cuò)格式)、MP4 (MovingPicture Experts Group,動(dòng)態(tài)圖像專家組)等。也可以使用客戶私有的文件格式,由于文件格式封裝與本方法沒(méi)有直接關(guān)系,可以參考相應(yīng)的協(xié)議,此處不再贅述。此外,編碼端在將縮略圖像碼流插入到原始圖像碼流中后,解碼端便可從用戶線程中獲取視頻碼流,并將獲取到的視頻碼流進(jìn)行解碼及播放,具體過(guò)程詳見(jiàn)下述步驟405至步驟410。在對(duì)解碼端的視頻處理方式進(jìn)行詳細(xì)地解釋說(shuō)明之前,先對(duì)解碼端的系統(tǒng)架構(gòu)及組成進(jìn)行介紹。
[0126]參見(jiàn)圖6,解碼端一共分為三大部分,分別為播放窗口、解碼器及縮略圖像提取設(shè)備。其中,播放窗口分為原始圖像播放窗口及縮略圖像播放窗口 ;原始圖像播放窗口,用于按照正常的播放速度播放原始圖像;縮略圖像播放窗口,用于播放縮略圖像,且當(dāng)終端指針劃過(guò)視頻播放進(jìn)度條的時(shí)候顯示縮略圖像播放窗口,播放終端指針?biāo)谖恢命c(diǎn)對(duì)應(yīng)的縮略圖像,當(dāng)終端指針離開(kāi)視頻播放進(jìn)度條的時(shí)候自動(dòng)隱藏縮略圖像播放窗口。解碼器分為原始圖像碼流解碼器和縮略圖像碼流解碼器;原始圖像碼流解碼器用于解碼原始圖像碼流,并忽略插入的SEI包不解析,得到原始圖像;縮略圖像碼流解碼器用于解碼縮略圖像碼流,也即,僅解析插入的SEI包,得到縮略圖像。縮略圖提取設(shè)備用于從視頻碼流中提取SEI包,并將提取到的SEI包發(fā)送給縮略圖碼流解碼器。
[0127]405、解碼端從編碼端獲取視頻碼流。
[0128]由于用戶線程已從編碼端的碼流輸出設(shè)備中獲取視頻碼流,因此,解碼端在獲取編碼端的視頻碼流時(shí),可直接從用戶線程中獲取。
[0129]406、解碼端從視頻碼流中獲取原始圖像碼流,并將原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像。
[0130]由于插入的SEI包中的數(shù)據(jù)06代表SEI,因此,解碼端從視頻碼流中獲取原始圖像碼流時(shí),可直接獲取不包含數(shù)據(jù)06的編碼數(shù)據(jù),而不包含數(shù)據(jù)06的編碼數(shù)據(jù)便為原始圖像碼流。
[0131]可選地,也可參考后續(xù)步驟408的方式,從切割得到的Nalu包中獲取除SEI包以外的數(shù)據(jù),該數(shù)據(jù)中便包含原始圖像的編碼數(shù)據(jù),根據(jù)起始碼便可將原始圖像的編碼數(shù)據(jù)提取出來(lái),而該原始圖像的編碼數(shù)據(jù)便為原始圖像碼流。
[0132]在對(duì)原始圖像進(jìn)行解碼時(shí),由于解碼過(guò)程與編碼過(guò)程互為逆過(guò)程,所以原始圖像碼流解碼器可同樣按照H.264協(xié)議進(jìn)行解碼,得到原始圖像。
[0133]407、解碼端按照預(yù)設(shè)幀率將多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0134]其中,預(yù)設(shè)幀率具體可為24幀/秒。當(dāng)然,預(yù)設(shè)幀率除24幀/秒外,還可為其他數(shù)值,例如,25幀/秒,本實(shí)施例對(duì)預(yù)設(shè)幀率的大小不進(jìn)行具體限定。
[0135]由于人眼的反應(yīng)能力有限,而原始圖像解碼器解碼原始圖像碼流的速度很快,若按照解碼的速度播放碼流,那么整個(gè)視頻相當(dāng)于以快進(jìn)的速度進(jìn)行播放。因此,為了適應(yīng)人眼的反應(yīng)能力,需要對(duì)解碼出來(lái)的原始圖像進(jìn)行播放控制,也即,按照預(yù)設(shè)幀率(比如,24幀/秒)在原始圖像播放窗口中播放解碼出來(lái)的原始圖像。
[0136]需要說(shuō)明的是,解碼端的原始圖像播放窗口一直處于顯示狀態(tài),且原始圖像播放窗口可一直處于播放原始圖像狀態(tài);而縮略圖播放窗口僅在終端指針移動(dòng)到視頻播放進(jìn)度條上時(shí)才顯示,且縮略圖播放窗口僅播放終端指針?biāo)谖恢命c(diǎn)對(duì)應(yīng)的縮略圖。當(dāng)終端指針離開(kāi)視頻播放進(jìn)度條時(shí),縮略圖播放窗口將自動(dòng)隱藏。
[0137]408、當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),解碼端在視頻碼流中獲取與終端指針的當(dāng)前位置相應(yīng)的SEI包。
[0138]由于視頻播放進(jìn)度條上的各個(gè)位置點(diǎn)均與一個(gè)縮略圖像相對(duì)應(yīng),因此,當(dāng)終端指針在視頻播放進(jìn)度條上處于不斷移動(dòng)的狀態(tài)時(shí),可實(shí)時(shí)獲取終端指針的當(dāng)前位置,并根據(jù)位置點(diǎn)與縮略圖像的對(duì)應(yīng)關(guān)系獲取與終端指針當(dāng)前位置相對(duì)應(yīng)的縮略圖像,從而在后續(xù)步驟中將獲取到的縮略圖像顯示在縮略圖像播放窗口中。此外,在獲取與終端指針當(dāng)前位置相對(duì)應(yīng)的縮略圖像時(shí),還需獲取包含該縮略圖像的編碼數(shù)據(jù)的SEI包,而在獲取SEI包時(shí)可具體采取如下方式獲取:將視頻碼流進(jìn)行切割,得到多個(gè)切割包;對(duì)于多個(gè)切割包中的每個(gè)切割包,從切割包中提取SEI包。參見(jiàn)圖7,縮略圖提取設(shè)備包含一個(gè)碼流切割設(shè)備、一個(gè)硬件驅(qū)動(dòng)程序(ScdDrv)及兩個(gè)碼流緩沖區(qū)。其中,碼流切割設(shè)備用于切割視頻碼流,生成一個(gè)一個(gè)切割包(Nalu包);硬件驅(qū)動(dòng)程序是碼流切割設(shè)備的驅(qū)動(dòng)程序,用于啟動(dòng)碼流切割設(shè)備并處理Nalu包;兩個(gè)碼流緩沖區(qū)分為視頻碼流存放緩沖區(qū)(StreamBuffer)和縮略圖碼流存放緩沖區(qū)(ScdBuffer);視頻碼流存放緩沖區(qū)用來(lái)存放視頻碼流;縮略圖碼流存放緩沖區(qū)用來(lái)存放切割之后的碼流。其中,硬件驅(qū)動(dòng)程序(ScdDrv)的啟動(dòng)函數(shù)可檢查視頻碼流存放緩沖區(qū)(StreamBuffer)和縮略圖像碼流存放緩沖區(qū)(ScdBuffer)的狀態(tài);如果視頻碼流存放緩沖區(qū)(StreamBuffer)有剩余碼流且縮略圖像碼流存放緩沖區(qū)(ScdBuffer)有剩余空間,則啟動(dòng)碼流切割設(shè)備,進(jìn)行碼流切割。在得到切割包(Nalu包)后,硬件驅(qū)動(dòng)程序(ScdDrv)的完成函數(shù)繼續(xù)處理切割包(Nalu包),提取切割包(Nalu包)中的SEI包,其他的包全部做丟棄處理。[0139]409、解碼端將SEI包進(jìn)行解碼,得到縮略圖像。
[0140]在對(duì)SEI包進(jìn)行解碼之前,還需先對(duì)SEI包進(jìn)行解析,得到SEI包的解析類型和長(zhǎng)度,從而根據(jù)SEI的類型和長(zhǎng)度從SEI包中提取以JPEG協(xié)議編碼的縮略圖像的編碼數(shù)據(jù),之后,將得到的縮略圖像的編碼數(shù)據(jù)(也即,縮略圖像碼流)發(fā)送到縮略圖像碼流解碼器,由縮略圖像碼流解碼器對(duì)縮略圖像的編碼數(shù)據(jù)進(jìn)行解碼,得到縮略圖像。此外,在縮略圖像提取設(shè)備發(fā)送縮略圖像碼流過(guò)程中,縮略圖像碼流解碼器會(huì)將接收到的縮略圖像碼流拷貝到自身內(nèi)部的碼流緩沖區(qū)中,且在每次數(shù)據(jù)處理之后,縮略圖像碼流存放緩沖區(qū)(ScdBuffer)都可以進(jìn)行數(shù)據(jù)清空,以等待下一次切割后的碼流。
[0141]410、解碼端將縮略圖像在縮略圖像播放窗口中進(jìn)行播放。
[0142]在通過(guò)上述步驟408和步驟409得到縮略圖后,便可在終端指針的當(dāng)前位置處顯示縮略圖像播放窗口,并在縮略圖像播放窗口中顯示與該當(dāng)前位置相對(duì)應(yīng)的縮略圖,而解碼端的用戶根據(jù)縮略圖像播放窗口中的縮略圖便可進(jìn)行視頻瀏覽,從而確定視頻是否具有欣賞價(jià)值、或該視頻中是否有其感興趣的視頻區(qū)間,進(jìn)而為用戶提供了可視化的視頻檢索方式,大大提聞了視頻檢索精度。
[0143]本實(shí)施例提供的方法,在采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像后,對(duì)每個(gè)縮略圖像及每個(gè)原始視頻圖像進(jìn)行編碼,并將縮略圖像碼流插入到原始圖像碼流中,由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提高,提升了視頻檢索效率。且由于縮略圖像在編碼端是以靜態(tài)編碼協(xié)議編碼的,所以縮略圖像碼流在解碼端進(jìn)行解碼時(shí),不需要參考其他幀,因此,當(dāng)終端指針在視頻播放進(jìn)度條上進(jìn)行移動(dòng)時(shí),縮放圖像播放窗口中可迅速顯示縮略圖像,時(shí)延很小。
[0144]需要說(shuō)明的是,解碼端通過(guò)上述步驟405至步驟410對(duì)原始視頻碼流和縮略圖像碼流均進(jìn)行了解碼及播放,這樣無(wú)疑加大了解碼端的解碼性能消耗。而為了降低解碼端的解碼性能消耗,還可僅解碼縮略圖像碼流,并僅播放縮略圖像。該種情形具體可應(yīng)用于如下二種場(chǎng)景中。
[0145]第一種場(chǎng)景:畫(huà)中畫(huà)場(chǎng)景。
[0146]由于解碼端的原始圖像播放窗口本身就比較小,所以可以不播放原始圖像,而直接播放縮略圖像。由于此種情況下,不需要對(duì)原始圖像碼流進(jìn)行解碼,因此,可大幅減少解碼端的解碼性能消耗和圖像縮放處理性能消耗,圖像尺寸的降低可以使解碼性能消耗降低2個(gè)數(shù)量級(jí)。所以解碼端可不創(chuàng)建原始圖像碼流解碼器,僅創(chuàng)建縮略圖像提取設(shè)備和縮略圖像碼流解碼器,僅在縮略圖像播放窗口顯示縮略圖像,并按照正常幀率(比如,24幀/秒或25幀/秒)播放縮略圖像。因此,縮略圖像碼流中的縮略圖可用于小尺寸播放,
[0147]第二種場(chǎng)景:圖形操作系統(tǒng)下文件圖標(biāo)顯示。
[0148]在可視化操作系統(tǒng)中,當(dāng)用戶打開(kāi)瀏覽器時(shí),進(jìn)行縮率圖像的提取、縮略圖像的解碼,解碼出一個(gè)縮略圖像,并將該解碼出來(lái)的縮略圖像用作文件圖標(biāo),從而通過(guò)該縮略圖像更直觀地顯示文件的內(nèi)容。實(shí)現(xiàn)了縮略圖像碼流中的縮略圖在可視化操作系統(tǒng)中的應(yīng)用。
[0149]第三種場(chǎng)景:低帶寬網(wǎng)絡(luò)點(diǎn)播場(chǎng)景。
[0150]在進(jìn)行網(wǎng)絡(luò)點(diǎn)播時(shí),首先查詢帶寬狀態(tài),在低帶寬網(wǎng)絡(luò)點(diǎn)播的場(chǎng)景下,創(chuàng)建縮略圖像提取模塊,提取縮略圖像碼流,把提取出來(lái)的以JPEG協(xié)議編碼的縮略圖像碼流封裝成Motion-JPEG格式進(jìn)行發(fā)送,客戶端僅需創(chuàng)建縮略圖像碼流解碼器進(jìn)行解碼縮略圖像解碼即可實(shí)現(xiàn)通過(guò)縮略圖像播放窗口播放縮略圖像,得到網(wǎng)絡(luò)點(diǎn)播的目的。由于縮略圖像的尺寸較小,既減少了網(wǎng)絡(luò)帶寬的占用,又減少了解碼端的解碼性能消耗和圖像縮放處理的性能消耗。
[0151]實(shí)施例四
[0152]本發(fā)明實(shí)施例提供了 一種視頻處理裝置,用于執(zhí)行上述實(shí)施例一或?qū)嵤├峁┑姆椒?,參?jiàn)圖8,該裝置包括:
[0153]圖像采集模塊81,用于采集視頻的原始圖像;圖像采集模塊81與圖像縮放模塊82連接;圖像縮放模塊82,用于對(duì)圖像采集模塊81采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像;圖像縮放模塊82與縮略圖像編碼模塊83連接;縮略圖像編碼模塊83,用于對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流;縮略圖像編碼模塊83與原始圖像編碼模塊84連接;原始圖像編碼模塊84,用于對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流;原始圖像編碼模塊84與插入模塊85連接;插入模塊85,用于將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到視頻碼流后,對(duì)視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
[0154]可選地,縮放模塊,包括:
[0155]寬度縮放單元,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將原始圖像的寬度縮放到預(yù)設(shè)寬度;
[0156]高度縮放單元,用于根據(jù)原始圖像的寬高比,對(duì)原始圖像的高度進(jìn)行縮放,得到原始圖像的縮略圖像。
[0157]可選地,縮略圖像編碼模塊,用于將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行JPEG編碼。
[0158]可選地,原始圖像編碼模塊,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定縮略圖像隊(duì)列中存儲(chǔ)有與原始圖像相匹配的縮略圖像后,對(duì)原始圖像進(jìn)行H.264編碼。
[0159]可選地,插入模塊,包括:
[0160]確定單元,用于對(duì)于原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù);
[0161]插入單元,用于將縮略圖像的編碼數(shù)據(jù)打包為一個(gè)SEI包,并將SEI包插入到與原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0162]綜上所述,本發(fā)明實(shí)施例提供的裝置,在采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像后,對(duì)每個(gè)縮略圖像及每個(gè)原始視頻圖像進(jìn)行編碼,并將縮略圖像碼流插入到原始圖像碼流中,由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0163]實(shí)施例五
[0164]本發(fā)明實(shí)施例提供了 一種視頻處理裝置,用于執(zhí)行上述實(shí)施例二或?qū)嵤├峁┑姆椒?,參?jiàn)圖9,該裝置包括:
[0165]碼流獲取模塊91,用于從編碼端獲取視頻碼流;碼流獲取模塊,還用于當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在視頻碼流中獲取與終端指針的當(dāng)前位置相應(yīng)的SEI包;碼流獲取模塊91與縮略圖像解碼模塊92連接;縮略圖像解碼模塊92,用于將SEI包進(jìn)行解碼,得到縮略圖像;縮略圖像解碼模塊92與縮略圖像播放模塊93連接;縮略圖像播放模塊93,用于將縮略圖像在縮略圖像播放窗口中進(jìn)行播放。
[0166]可選地,該裝置還包括:
[0167]切割模塊,用于將視頻碼流進(jìn)行切割,得到多個(gè)切割包;
[0168]提取模塊,用于對(duì)于多個(gè)切割包中的每個(gè)切割包,從切割包中提取SEI包。
[0169]可選地,該裝置還包括:
[0170]碼流獲取模塊,還用于從視頻碼流中獲取原始圖像碼流;
[0171]原始圖像解碼模塊,用于將原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像;
[0172]原始圖像播放模塊,用于按照預(yù)設(shè)幀率將多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0173]本發(fā)明實(shí)施例提供的裝置,從編碼端獲取視頻碼流后,在用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0174]實(shí)施例六
[0175]本發(fā)明提供了一種視頻處理設(shè)備的結(jié)構(gòu)示意圖,參見(jiàn)圖10,該設(shè)備包括至少一個(gè)處理器701,例如CPU,至少一個(gè)網(wǎng)絡(luò)接口 704或者其他用戶接口 703,存儲(chǔ)器705,和至少一個(gè)通信總線702。通信總線702用于實(shí)現(xiàn)這些裝置之間的連接通信。用戶接口 703可以是顯示器,鍵盤(pán)或者點(diǎn)擊設(shè)備。存儲(chǔ)器705可能包含高速Ram存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤(pán)存儲(chǔ)器。
[0176]處理器701用于執(zhí)行存儲(chǔ)器705存放的程序,以實(shí)現(xiàn)如下方法:
[0177]采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像;對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流;對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流;將縮略圖像碼流插入到原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到視頻碼流后,對(duì)視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
[0178]進(jìn)一步地,處理器701,具體用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將原始圖像的寬度縮放到預(yù)設(shè)寬度;根據(jù)原始圖像的寬高比,對(duì)原始圖像的高度進(jìn)行縮放,得到原始圖像的縮略圖像。
[0179]進(jìn)一步地,處理器701,具體用于將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行JPEG編碼。
[0180]進(jìn)一步地,處理器701,具體用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定縮略圖像隊(duì)列中存儲(chǔ)有與原始圖像相匹配的縮略圖像后,對(duì)原始圖像進(jìn)行H.264編碼。
[0181]進(jìn)一步地,處理器701,具體用于對(duì)于原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定縮略圖碼流中與原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù),將縮略圖像的編碼數(shù)據(jù)打包為一個(gè)補(bǔ)充增強(qiáng)信息SEI包,并將SEI包插入到與原始圖像的編碼數(shù)據(jù)相鄰的位置。
[0182]本實(shí)施例提供的設(shè)備,在采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像后,對(duì)每個(gè)縮略圖像及每個(gè)原始視頻圖像進(jìn)行編碼,并將縮略圖像碼流插入到原始圖像碼流中,由于將縮略圖像碼流插入到原始視頻碼流中,從而用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0183]實(shí)施例七
[0184]本發(fā)明提供了一種視頻處理設(shè)備的結(jié)構(gòu)示意圖,參見(jiàn)圖11,該設(shè)備包括至少一個(gè)處理器801,例如CPU,至少一個(gè)網(wǎng)絡(luò)接口 804或者其他用戶接口 803,存儲(chǔ)器805,和至少一個(gè)通信總線802。通信總線802用于實(shí)現(xiàn)這些裝置之間的連接通信。用戶接口 803可以是顯示器,鍵盤(pán)或者點(diǎn)擊設(shè)備。存儲(chǔ)器805可能包含高速Ram存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤(pán)存儲(chǔ)器。
[0185]處理器801用于執(zhí)行存儲(chǔ)器805存放的程序,以實(shí)現(xiàn)如下方法:
[0186]從編碼端獲取視頻碼流;當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在視頻碼流中獲取與終端指針的當(dāng)前位置相應(yīng)的SEI包;將SEI包進(jìn)行解碼,得到縮略圖像;將縮略圖像在縮略圖像播放窗口中進(jìn)行播放。
[0187]進(jìn)一步地,處理器801,具體用于將視頻碼流進(jìn)行切割,得到多個(gè)切割包;對(duì)于多個(gè)切割包中的每個(gè)切割包,從切割包中提取SEI包。
[0188]進(jìn)一步地,處理器801,具體用于從視頻碼流中獲取原始圖像碼流;將原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像;按照預(yù)設(shè)幀率將多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
[0189]本實(shí)施例提供的設(shè)備,從編碼端獲取視頻碼流后,在用戶在解碼端瀏覽視頻時(shí),通過(guò)終端指針在視頻播放進(jìn)度條上進(jìn)行拖動(dòng),便可在縮略圖播放窗口中實(shí)時(shí)看見(jiàn)對(duì)應(yīng)的縮略圖像,視頻檢索精度大大提聞,提升了視頻檢索效率。
[0190]需要說(shuō)明的是:上述實(shí)施例提供的視頻處理裝置在進(jìn)行視頻處理時(shí),僅以上述各功能模塊的劃分進(jìn)行舉例說(shuō)明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將設(shè)備的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的視頻處理裝置與視頻處理方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過(guò)程詳見(jiàn)方法實(shí)施例,這里不再贅述。
[0191]上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
[0192]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)硬件來(lái)完成,也可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。
[0193]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種視頻處理方法,其特征在于,所述方法包括: 采集視頻的原始圖像,并對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像; 對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流; 對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流; 將所述縮略圖像碼流插入到所述原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到所述視頻碼流后,對(duì)所述視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對(duì)采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像,包括: 對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將所述原始圖像的寬度縮放到預(yù)設(shè)寬度; 根據(jù)所述原始圖像的寬高比,對(duì)所述原始圖像的高度進(jìn)行縮放,得到所述原始圖像的縮略圖像。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對(duì)多個(gè)縮略圖像進(jìn)行編碼,包括: 將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行聯(lián)合圖像專家小組JPEG編碼。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述對(duì)多個(gè)原始圖像進(jìn)行編碼,包括: 對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定所述縮略圖像隊(duì)列中存儲(chǔ)有與所述原始圖像相匹配的縮略圖像后,對(duì)所述原始圖像進(jìn)行H.264編碼。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將所述縮略圖像碼流插入到所述原始圖像碼流中,包括: 對(duì)于所述原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定所述縮略圖碼流中與所述原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù),將所述縮略圖像的編碼數(shù)據(jù)打包為一個(gè)補(bǔ)充增強(qiáng)信息SEI包,并將所述SEI包插入到與所述原始圖像的編碼數(shù)據(jù)相鄰的位置。
6.一種視頻處理裝置,其特征在于,所述裝置包括: 圖像采集模塊,用于采集視頻的原始圖像; 圖像縮放模塊,用于對(duì)圖像采集模塊采集到的原始圖像進(jìn)行縮放處理,得到每個(gè)原始圖像的縮略圖像; 縮略圖像編碼模塊,用于對(duì)每個(gè)縮略圖像進(jìn)行編碼,得到縮略圖像碼流; 原始圖像編碼模塊,用于對(duì)每個(gè)原始圖像進(jìn)行編碼,得到原始圖像碼流; 插入模塊,用于將所述縮略圖像碼流插入到所述原始圖像碼流中,得到視頻碼流,以使解碼端在獲取到所述視頻碼流后,對(duì)所述視頻碼流進(jìn)行解碼,得到解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像,并播放解碼后的多個(gè)原始圖像和解碼后的多個(gè)縮略圖像。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述縮放模塊,包括: 寬度縮放單元,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,將所述原始圖像的寬度縮放到預(yù)設(shè)寬度; 高度縮放單元,用于根據(jù)所述原始圖像的寬高比,對(duì)所述原始圖像的高度進(jìn)行縮放,得到所述原始圖像的縮略圖像。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述縮略圖像編碼模塊,用于將存儲(chǔ)在縮略圖像隊(duì)列中的縮略圖像進(jìn)行聯(lián)合圖像專家小組JPEG編碼。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述原始圖像編碼模塊,用于對(duì)于多個(gè)原始圖像中的每個(gè)原始圖像,當(dāng)確定所述縮略圖像隊(duì)列中存儲(chǔ)有與所述原始圖像相匹配的縮略圖像后,對(duì)所述原始圖像進(jìn)行H.264編碼。
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述插入模塊,包括: 確定單元,用于對(duì)于所述原始圖像碼流中每個(gè)原始圖像的編碼數(shù)據(jù),確定所述縮略圖碼流中與所述原始圖像的編碼數(shù)據(jù)相匹配的縮略圖像編碼數(shù)據(jù); 插入單元,用于將所述縮略圖像的編碼數(shù)據(jù)打包為一個(gè)補(bǔ)充增強(qiáng)信息SEI包,并將所述SEI包插入到與所述原始圖像的編碼數(shù)據(jù)相鄰的位置。
11.一種視頻處理方法,其特征在于,所述方法包括: 從編碼端獲取視頻碼流; 當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的補(bǔ)充增強(qiáng)信息SEI包; 將所述SEI包進(jìn)行解碼,得到縮略圖像; 將所述縮略圖像在所述縮略圖像播放窗口中進(jìn)行播放。
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的補(bǔ)充增強(qiáng)信息SEI包之前,所述方法還包括: 將所述視頻碼流進(jìn)行切割,得到多個(gè)切割包; 對(duì)于多個(gè)切割包中的每個(gè)切割包,從所述切割包中提取SEI包。
13.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述獲取編碼端的視頻碼流之后,所述方法還包括: 從所述視頻碼流中獲取原始圖像碼流; 將所述原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像; 按照預(yù)設(shè)幀率將所述多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
14.一種視頻處理裝置,其特征在于,所述裝置包括: 碼流獲取模塊,用于從編碼端獲取視頻碼流; 所述碼流獲取模塊,還用于當(dāng)終端指針在視頻播放進(jìn)度條上產(chǎn)生位移時(shí),在所述視頻碼流中獲取與所述終端指針的當(dāng)前位置相應(yīng)的補(bǔ)充增強(qiáng)信息SEI包; 縮略圖像解碼模塊,用于將所述SEI包進(jìn)行解碼,得到縮略圖像; 縮略圖像播放模塊,用于將所述縮略圖像在所述縮略圖像播放窗口中進(jìn)行播放。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述裝置還包括: 切割模塊,用于將所述視頻碼流進(jìn)行切割,得到多個(gè)切割包; 提取模塊,用于對(duì)于多個(gè)切割包中的每個(gè)切割包,從所述切割包中提取SEI包。
16.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述裝置還包括: 所述碼流獲取模塊,還用于從所述視頻碼流中獲取原始圖像碼流; 原始圖像解碼模塊,用于將所述原始圖像碼流進(jìn)行解碼,得到多個(gè)原始圖像; 原始圖像播放模塊,用于按照預(yù)設(shè)幀率將所述多個(gè)原始圖像在原始視頻播放窗口中進(jìn)行播放。
【文檔編號(hào)】H04N19/44GK103747259SQ201310739607
【公開(kāi)日】2014年4月23日 申請(qǐng)日期:2013年12月27日 優(yōu)先權(quán)日:2013年12月27日
【發(fā)明者】付洋, 李旭, 李俊嬋 申請(qǐng)人:華為技術(shù)有限公司