亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于內(nèi)存池技術(shù)的brew手機(jī)h.264解碼優(yōu)化方法

文檔序號:7710101閱讀:400來源:國知局
專利名稱:基于內(nèi)存池技術(shù)的brew手機(jī)h.264解碼優(yōu)化方法
技術(shù)領(lǐng)域
本發(fā)明涉及在嵌入式設(shè)備上的視頻編解碼領(lǐng)域,特別是涉及一種基于內(nèi)存池技術(shù) 的BREW手機(jī)H. 264解碼優(yōu)化方法。
背景技術(shù)
H. 264視頻標(biāo)準(zhǔn)是由JVT (Joint Video Team,視頻聯(lián)合工作組)制定的新一代視 頻編碼標(biāo)準(zhǔn)。相對于H. 263和MPEG-4, H. 264節(jié)約了大約50%的碼率,而且增強(qiáng)了對網(wǎng)絡(luò) 傳輸支持。H. 264引入了面向IP包的編碼機(jī)制,有利于網(wǎng)絡(luò)中的分組傳輸,支持網(wǎng)絡(luò)中視頻 的流媒體傳輸。但是,化264為了提高編碼效率,采用了許多高計(jì)算復(fù)雜度的算法,使得編 解碼計(jì)算量很大,因此對軟硬件的要求甚高,同時(shí)也加大了編解碼的難度。
11.264采用了多幀參考技術(shù),解碼過程中需要保存已經(jīng)解碼完畢的視頻圖像幀,用 于作為后續(xù)解碼的參考幀。H. 264規(guī)定使用解碼圖像緩沖區(qū)(DPB,DecodedPicture Buffer) 存儲(chǔ)已經(jīng)解碼完畢的視頻圖像幀。視頻解碼器中用鏈表維護(hù)所有解碼完畢的視頻圖像幀, 并動(dòng)態(tài)標(biāo)記視頻圖像幀為短期參考幀、長期參考幀。當(dāng)解IDR幀完畢后,DPB中的所有視頻 圖像幀都會(huì)被釋放。解碼過程中,在每解一幀之前,申請一個(gè)視頻圖像緩沖區(qū)用于保存即將 解碼的這一幀的圖像信息。由于視頻圖像占用很大的內(nèi)存空間,如果頻繁申請和釋放視頻 圖像緩沖區(qū)會(huì)造成很大的性能下降。 在BREW手機(jī)上申請大塊內(nèi)存性能比較低,這主要表現(xiàn)在以下兩個(gè)方面 a)不同廠商生產(chǎn)的BREW手機(jī),在CPU頻率、內(nèi)存大小等主要硬件指標(biāo)接近的情況
下,申請大塊內(nèi)存的性能差別很大。 b)同一款BREW手機(jī),申請大塊內(nèi)存的性能低,耗時(shí)長,并且極不穩(wěn)定,耗時(shí)在 50ms-200ms之間。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于內(nèi)存池技術(shù)的BREW手機(jī)H. 264解碼優(yōu)化方法。參 考幀緩沖區(qū)占用內(nèi)存較大,并且解碼過程中最多使用的參考幀緩沖區(qū)的數(shù)量是有限的。可 采用內(nèi)存池的方式,用預(yù)先分配DPB的方式替代原有的在解碼過程中動(dòng)態(tài)申請參考幀緩沖 區(qū)。 本發(fā)明采用的技術(shù)方案的步驟如下 (1)在解碼器啟動(dòng)時(shí),預(yù)先分配16個(gè)參考幀緩沖區(qū),把每個(gè)參考幀緩沖區(qū)的首地 址存入鏈表,并用 一個(gè)位圖記錄內(nèi)存池中每個(gè)參考幀緩沖區(qū)的是否正在被使用,DPB使用的 內(nèi)存空間、參考幀緩沖區(qū)鏈表和位圖構(gòu)成DPB內(nèi)存池。 (2)解碼過程中需要申請參考幀緩沖區(qū)時(shí),不再直接申請內(nèi)存空間,而是從DPB內(nèi) 存池中獲取,通過位圖查找一個(gè)沒有使用的參考幀緩沖區(qū); a)如果找到,返回該參考幀緩沖區(qū),并在位圖中標(biāo)記該參考幀緩沖區(qū)已用;
b)如果沒有找到,在內(nèi)存中申請一個(gè)參考幀緩沖區(qū)空間,并加入DPB內(nèi)存池中,返回該參考幀緩沖區(qū); (3)解碼過程中釋放DPB內(nèi)存池時(shí),只需要標(biāo)記位圖中對應(yīng)的參考幀緩沖區(qū)為未用; (4)關(guān)閉解碼器時(shí),釋放DPB內(nèi)存池中的所有參考幀緩沖區(qū)。
本發(fā)明具有的有益的效果是 采用內(nèi)存池的方式,在解碼器啟動(dòng)時(shí)申請了足夠的參考幀緩沖區(qū),避免了在解碼過程中頻繁申請和釋放參考幀緩沖區(qū),最終減小了 H. 264解碼時(shí)間。當(dāng)在某些廠商生產(chǎn)的BREW手機(jī)上,申請大塊內(nèi)存性能比較低時(shí),采用這種優(yōu)化方法有效提升了H. 264解碼器的解碼性能。


圖1為DPB內(nèi)存池的數(shù)據(jù)結(jié)構(gòu)示意圖。 圖2為在采用內(nèi)存池的情況下申請參考幀緩沖區(qū)的流程圖。
具體實(shí)施例方式
以下結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步的說明。
(l)DPB內(nèi)存池的結(jié)構(gòu) 根據(jù)圖1所示,DPB內(nèi)存池共有兩部分構(gòu)成記錄池中參考幀緩沖區(qū)使用情況的位圖和存儲(chǔ)參考幀緩沖區(qū)首地址的鏈表。位圖中每一項(xiàng)和鏈表中的每個(gè)元素一一對應(yīng)。
DPB內(nèi)存池中采用鏈表而不是數(shù)組存儲(chǔ)參考幀緩沖區(qū)首地址,是由于解碼過程中參考幀緩沖區(qū)的數(shù)目是不確定的,使用鏈表更方便在池中參考幀緩沖區(qū)不足時(shí)增加新的參考幀緩沖區(qū)。
(2)DPB內(nèi)存池的創(chuàng)建和銷毀 在解碼器啟動(dòng)時(shí)創(chuàng)建DPB內(nèi)存池,H. 264解碼器需要的參考幀緩沖區(qū)個(gè)數(shù)最小為16,所以初始狀態(tài)下DPB內(nèi)存池中參考幀緩沖區(qū)的個(gè)數(shù)為16 ;在解碼器關(guān)閉時(shí),銷毀DPB內(nèi)存池。 (3)參考幀緩沖區(qū)的申請和釋放 在原有的11.264解碼器代碼中,申請參考幀緩沖區(qū)是直接調(diào)用C語言庫函數(shù)malloc分配參考幀緩沖區(qū)所需的內(nèi)存塊;釋放參考幀緩沖區(qū)也是通過調(diào)用free函數(shù)釋放相應(yīng)內(nèi)存塊。需要把解碼器中所有直接申請和釋放參考幀內(nèi)存塊的代碼,修改成調(diào)用DPB內(nèi)存池的申請和釋放接口。 如圖2所示,在DPB內(nèi)存池中申請參考幀緩沖區(qū),需要進(jìn)行兩次遍歷①遍歷位圖獲得首個(gè)空閑參考幀緩沖區(qū)在鏈表中的位置;②通過第一步獲得位置遍歷列表獲得參考幀緩沖區(qū)地址。 在DPB內(nèi)存池中釋放參考幀緩沖區(qū),需要進(jìn)行一次遍歷遍歷列表,查找和待釋放的參考幀緩沖區(qū)地址相同的列表元素。 由于11.264解碼器需要的參考幀緩沖區(qū)的個(gè)數(shù)是有上限的,所有位圖中項(xiàng)的個(gè)數(shù)和鏈表長度都是常數(shù)級的。所以申請和釋放參考幀緩沖區(qū)都可以在常數(shù)時(shí)間內(nèi)完成。
權(quán)利要求
一種基于內(nèi)存池技術(shù)的BREW手機(jī)H.264解碼優(yōu)化方法,其特征在于采用內(nèi)存池技術(shù),避免了H.264DPB中的參考幀緩沖區(qū)所需的大塊內(nèi)存在解碼過程中的頻繁分配和釋放;(1)在解碼器啟動(dòng)時(shí),預(yù)先分配16個(gè)參考幀緩沖區(qū),把每個(gè)參考幀緩沖區(qū)的首地址存入鏈表,并用一個(gè)位圖記錄內(nèi)存池中每個(gè)參考幀緩沖區(qū)的是否正在被使用,DPB使用的內(nèi)存空間、參考幀緩沖區(qū)鏈表和位圖構(gòu)成DPB內(nèi)存池。(2)解碼過程中需要申請參考幀緩沖區(qū)時(shí),不再直接申請內(nèi)存空間,而是從DPB內(nèi)存池中獲取,通過位圖查找一個(gè)沒有使用的參考幀緩沖區(qū);a)如果找到,返回該參考幀緩沖區(qū),并在位圖中標(biāo)記該參考幀緩沖區(qū)已用;b)如果沒有找到,在內(nèi)存中申請一個(gè)參考幀緩沖區(qū)空間,并加入DPB內(nèi)存池中,返回該參考幀緩沖區(qū);(3)解碼過程中釋放DPB內(nèi)存池時(shí),只需要標(biāo)記位圖中對應(yīng)的參考幀緩沖區(qū)為未用;(4)關(guān)閉解碼器時(shí),釋放DPB內(nèi)存池中的所有參考幀緩沖區(qū)。
全文摘要
本發(fā)明公開了一種基于內(nèi)存池技術(shù)的BREW手機(jī)H.264解碼優(yōu)化方法。這種優(yōu)化方法針對BREW手機(jī)分配大塊內(nèi)存效率比較低的特點(diǎn),利用內(nèi)存池技術(shù),避免了在解碼過程中頻繁申請和釋放參考幀緩沖區(qū),從而大幅度提升了解碼性能。本發(fā)明提出的方法易于軟件實(shí)現(xiàn),適用于內(nèi)存分配性能比較低的平臺(tái),可應(yīng)用于各種需要在嵌入式設(shè)備上實(shí)時(shí)處理多媒體數(shù)據(jù)的領(lǐng)域。
文檔編號H04N7/26GK101739354SQ20091015501
公開日2010年6月16日 申請日期2009年12月14日 優(yōu)先權(quán)日2009年12月14日
發(fā)明者卜佳俊, 汪兆鵬, 王超, 鄭培元 申請人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1