两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法及系統(tǒng)的制作方法

文檔序號:9436505閱讀:423來源:國知局
針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法及系統(tǒng)的制作方法
【技術領域】
[0001]本申請涉及媒體數(shù)據(jù)播放緩存領域,具體地說,涉及一種針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法及系統(tǒng)。
【背景技術】
[0002]隨著互聯(lián)網(wǎng)技術的快速發(fā)展,人們獲取信息的方式已經(jīng)發(fā)生改變,從傳統(tǒng)的書籍、報紙、電視、廣播等方式,繼而變成通過互聯(lián)網(wǎng)獲取。尤其是互聯(lián)網(wǎng)將影視節(jié)目、新聞、廣告、聊天視頻、游戲視頻和監(jiān)控視頻等等豐谷的綜合性網(wǎng)絡視頻資源進行共享,從而網(wǎng)絡視頻已經(jīng)成為人們學習、社交以及休閑娛樂不可替代的重要方式。
[0003]對于擁有大量視頻資源的視頻網(wǎng)站而言,用戶可以通過終端(例如只能手機、平板電腦、筆記本電腦、數(shù)字電視機等等)上的瀏覽器進行訪問視頻網(wǎng)站的點播頁面,觀看用戶想要觀看的各類視頻,這便是廣為熟知的在線視頻觀看。此外,用戶還可以將視頻文件下載至移動終端上,從而可以隨時隨地的觀看離線視頻。
[0004]在移動平臺(例如Android或1S系統(tǒng)的終端)播放本地或在線媒體內(nèi)容時,開發(fā)應用(App)若采用硬件加速模塊(Android采用Media Codec,1S端采用VideoToolBox)進行視頻解碼,如果在播放過程中App轉(zhuǎn)為后臺(例如按下“home”鍵或“鎖屏”鍵,或者接聽來電等),然后再轉(zhuǎn)為前臺繼續(xù)觀看時,由于硬解加速模塊(Media Codec或VideoToolBox)在App轉(zhuǎn)為后臺時已經(jīng)失效,當App再次轉(zhuǎn)為前臺時需要重新初始化硬解加速模塊然后才能使用,重新初始化的硬解加速模塊必須從關鍵幀(I幀)開始解碼?,F(xiàn)有技術在采用硬件加速模塊開發(fā)媒體播放器應用時,當App在播放過程中轉(zhuǎn)為后臺時會停止播放、記錄停止播放的播放時間點(記憶點T)并退出底層播放模塊;iApp再轉(zhuǎn)為前臺時會重新啟動底層播放模塊,并根據(jù)記憶點T,將視頻跳轉(zhuǎn)(Seek)到T之前最近的視頻關鍵幀(I幀)然后開始繼續(xù)播放。
[0005]現(xiàn)有技術的方案存在以下缺陷:
[0006](I)在安卓或1S系統(tǒng)的移動終?而,由于App在后臺如臺切換過程中重啟了播放1?塊,切換后Seek到記憶點前的關鍵幀才開始播放。這造成了切換前后觀看的內(nèi)容不連貫。通常,再次轉(zhuǎn)為前臺后觀看的內(nèi)容會部分重播轉(zhuǎn)為后臺前已經(jīng)觀看過的內(nèi)容。
[0007](2)如果觀看的是在線媒體內(nèi)容,重啟播放模塊意味著媒體文件的重新加載、重新解析,這造成了媒體文件頭信息等大量數(shù)據(jù)需要通過網(wǎng)絡的重新請求;再加上執(zhí)行Seek操作會再次引起網(wǎng)絡請求的斷開并重新請求。這些因素使得App在經(jīng)歷后臺前臺切換后需要經(jīng)過很長時間才能重新開始播放,嚴重影響用戶體驗。

【發(fā)明內(nèi)容】

[0008]有鑒于此,本申請所要解決的技術問題是提供了一種針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法及系統(tǒng),其能夠解決視頻播放過程中,由于視頻前后臺的切換導致視頻無法連貫播放、再次播放等待時間長的問題。
[0009]為了解決上述技術問題,本申請有如下技術方案:
[0010]本發(fā)明提供一種針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法,包括:
[0011]視頻數(shù)據(jù)前臺播放步驟:在前臺播放視頻數(shù)據(jù),在播放過程中緩存當前正在解碼的視頻壓縮幀所在的GOP ;
[0012]視頻數(shù)據(jù)轉(zhuǎn)后臺處理步驟:當視頻轉(zhuǎn)為后臺時,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并按照解碼順序,將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀;
[0013]視頻數(shù)據(jù)后臺轉(zhuǎn)前臺處理步驟:當視頻再次轉(zhuǎn)為前臺播放時,重置視頻硬件解碼模塊,設置循環(huán)開始從緩存的關鍵幀F(xiàn)rame_I解碼但不顯示,直到將Frame解碼完成后再開始顯示;
[0014]視頻數(shù)據(jù)后臺轉(zhuǎn)前臺播放步驟:將視頻數(shù)據(jù)從解碼完成后的Frame開始繼續(xù)播放。
[0015]優(yōu)選地,其中,所述視頻數(shù)據(jù)前臺播放步驟中,在前臺播放視頻數(shù)據(jù),在播放過程中緩存當前正在解碼的視頻壓縮幀所在的G0P,進一步還包括:
[0016]釋放所有已經(jīng)解碼完成的GOP所占的系統(tǒng)資源。
[0017]優(yōu)選地,其中,所述視頻數(shù)據(jù)轉(zhuǎn)后臺處理步驟中,當視頻轉(zhuǎn)為后臺時,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并按照解碼順序,將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀,進一步為:
[0018]當視頻轉(zhuǎn)為后臺時,在無需關閉底層播放模塊的前提下,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀。
[0019]本發(fā)明還提供一種針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存系統(tǒng),包括:視頻數(shù)據(jù)前臺播放模塊、視頻數(shù)據(jù)轉(zhuǎn)后臺處理模塊、視頻數(shù)據(jù)后臺轉(zhuǎn)前臺處理模塊、視頻數(shù)據(jù)后臺轉(zhuǎn)前臺播放模塊;其中,
[0020]所述視頻數(shù)據(jù)前臺播放模塊,用于在前臺播放視頻數(shù)據(jù),在播放過程中緩存當前正在解碼的視頻壓縮幀所在的GOP ;
[0021]所述視頻數(shù)據(jù)轉(zhuǎn)后臺處理模塊,用于當視頻轉(zhuǎn)為后臺時,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并按照解碼順序,將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀;
[0022]所述視頻數(shù)據(jù)后臺轉(zhuǎn)前臺處理模塊,用于當視頻再次轉(zhuǎn)為前臺播放時,重置視頻硬件解碼模塊,設置循環(huán)開始從緩存的關鍵幀F(xiàn)rame_I解碼但不顯示,直到將Frame解碼完成后再開始顯示;
[0023]所述視頻數(shù)據(jù)后臺轉(zhuǎn)前臺播放模塊,于將視頻數(shù)據(jù)從解碼完成后的Frame開始繼續(xù)播放。
[0024]優(yōu)選地,其中,所述視頻數(shù)據(jù)前臺播放模塊還用于釋放所有已經(jīng)解碼完成的GOP所占的系統(tǒng)資源。
[0025]優(yōu)選地,其中,所述視頻數(shù)據(jù)轉(zhuǎn)后臺處理模塊,用于在當視頻轉(zhuǎn)為后臺時,在無需關閉底層播放模塊的前提下,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀。
[0026]與現(xiàn)有技術相比,本申請所述的方法和系統(tǒng),達到了如下效果:
[0027]第一,本發(fā)明針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法和系統(tǒng),在播放過程中,當視頻從前臺轉(zhuǎn)為后臺時,可對正在解碼的視頻壓縮幀F(xiàn)rame所在的GOP進行緩存,在視頻從后臺轉(zhuǎn)前臺時,視頻能夠從緩存的GOP開始解碼并在Frame解碼完成后再開始顯示播放。即當再次轉(zhuǎn)為前臺時,能夠從剛剛轉(zhuǎn)為后臺時正在播放的幀開始繼續(xù)播放。從而能夠有效地保存播放狀態(tài),避免了對已播放內(nèi)容的重復播放,有效提升了用戶體驗。
[0028]第二,在播放在線媒體內(nèi)容時,只要前臺后臺切換的過程中請求媒體數(shù)據(jù)的網(wǎng)絡狀態(tài)沒有改變(沒有發(fā)生斷開、重聯(lián)),當視頻再次轉(zhuǎn)為前臺播放時,播放器無需等待網(wǎng)絡數(shù)據(jù)重新請求即可立即開始播放,使用戶在前后臺切換后無需等待即可繼續(xù)觀看。
[0029]第三,在播放媒體文件的過程中,對于所有幀已經(jīng)被解碼完的G0P,本發(fā)明優(yōu)選釋放這些GOP所占的系統(tǒng)資源,避免了大量系統(tǒng)資源的占用及浪費。
[0030]第四,本發(fā)明中,當視頻從前臺轉(zhuǎn)為后臺的過程中無需關閉底層播放模塊,從而有效地保存了播放狀態(tài),當視頻從后臺轉(zhuǎn)為前臺時,有利于視頻從斷開的部分直接播放。
【附圖說明】
[0031]此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:
[0032]圖1為本發(fā)明的所述一種針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法流程圖。
【具體實施方式】
[0033]如在說明書及權利要求當中使用了某些詞匯來指稱特定組件。本領域技術人員應可理解,硬件制造商可能會用不同名詞來稱呼同一個組件。本說明書及權利要求并不以名稱的差異來作為區(qū)分組件的方式,而是以組件在功能上的差異來作為區(qū)分的準則。如在通篇說明書及權利要求當中所提及的“包含”為一開放式用語,故應解釋成“包含但不限定于”?!按笾隆笔侵冈诳山邮盏恼`差范圍內(nèi),本領域技術人員能夠在一定誤差范圍內(nèi)解決所述技術問題,基本達到所述技術效果。此外,“耦接”一詞在此包含任何直接及間接的電性耦接手段。因此,若文中描述一第一裝置耦接于一第二裝置,則代表所述第一裝置可直接電性耦接于所述第二裝置,或通過其他裝置或耦接手段間接地電性耦接至所述第二裝置。說明書后續(xù)描述為實施本申請的較佳實施方式,然所述描述乃以說明本申請的一般原則為目的,并非用以限定本申請的范圍。本申請的保護范圍當視所附權利要求所界定者為準。
[0034]實施例1
[0035]參見圖1所示為本申請所述的針對移動平臺硬件加速播放視頻的數(shù)據(jù)緩存方法具體實施例,本實施例中所述方法包括以下步驟:
[0036]步驟101、視頻數(shù)據(jù)前臺播放步驟:在前臺播放視頻數(shù)據(jù),在播放過程中緩存當前正在解碼的視頻壓縮幀所在的GOP (Group of Pictures,視頻流中,按照解碼序從某一關鍵幀開始(含此關鍵幀),到下一個關鍵幀(不含此關鍵幀)之間的所有幀稱為一個G0P);
[0037]步驟102、視頻數(shù)據(jù)轉(zhuǎn)后臺處理步驟:當視頻轉(zhuǎn)為后臺時,暫停所述視頻數(shù)據(jù)的播放并記錄正在解碼的視頻壓縮幀,記為Frame,并按照解碼順序,將所述視頻壓縮幀F(xiàn)rame所在GOP的第一幀記為Frame_I,F(xiàn)rame_I為關鍵幀;
[0038]步驟103、視頻數(shù)據(jù)后臺轉(zhuǎn)前臺處理步驟:當視頻再次轉(zhuǎn)為前臺播放時,重置視頻硬件解碼模塊,設置循環(huán)開始從緩存的關鍵幀F(xiàn)rame_I解碼但不顯示,直到將Frame解碼完成后再開始顯示;
[0039]步驟1
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
天峻县| 咸阳市| 新龙县| 嘉禾县| 谢通门县| 黑水县| 济宁市| 尼勒克县| 鹤岗市| 岑巩县| 上饶县| 博乐市| 金阳县| 泰兴市| 华坪县| 长岭县| 延津县| 象山县| 庆阳市| 墨玉县| 贡觉县| 日照市| 政和县| 万年县| 新平| 肇东市| 利津县| 博客| 长乐市| 修文县| 南城县| 盐源县| 牙克石市| 西吉县| 建阳市| 上杭县| 建始县| 田东县| 安泽县| 前郭尔| 天镇县|