欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

媒體播放器和媒體文件的播放方法

文檔序號:7957775閱讀:345來源:國知局
專利名稱:媒體播放器和媒體文件的播放方法
技術領域
本申請涉及一種媒體播放器和媒體文件的播放方法。
背景技術
近年來移動通信業(yè)務及應用日益豐富,尤其是多媒體技術已廣泛應用到移動終端設備(如,手機)中。隨著3G通信的發(fā)展和移動終端技術的突破,如芯片的高度集成、處理器能力提高、顯示屏屏幕尺寸增大及能耗降低,多媒體應用進一步廣泛和深入。在移動終端設備上,包括設備生產商、互聯(lián)網(wǎng)企業(yè)及其他相關企業(yè)都推出自己的媒體播放軟件(如,音視頻播放軟件),給用戶帶來了全新的用戶體驗。目前,在移動終端設備上往往存在多個音視頻解碼器。以H.264視頻解碼器為例,移動終端設備上往往有一個或多個軟件解碼器,而且還可能存在硬件的H.264視頻解碼器。目前的媒體播放器在操作時根據(jù)播放器自身的缺省配置選用一個對應的H.264解碼器進行解碼操作,如播放器默認設置為優(yōu)先選擇硬件解碼器,則當H.264硬解碼器存在時,播放器中分離模塊中輸出的H.264碼流就會傳送給H.264硬解碼器,若播放器默認設置為優(yōu)先選擇軟件解碼器,則分離模塊中輸出的H.264碼流就會傳送給系統(tǒng)中的缺省加載的H.264軟件解碼器。在現(xiàn)有技術中,播放器根據(jù)默認配置選用了某個解碼器,則會使用該解碼器來對對應的媒體文件(如,音視頻流)進行解碼。如果因為解碼器本身的解碼限制,以某個H.264視頻解碼器為例,如因為視頻流的分辨率大于該解碼器支持的分辨率,或該解碼器不能支持某個profile或level,播放的結果則是用戶無法觀看視頻或者出現(xiàn)播放錯誤提示。在某些情況下,實際上,播放器如果選用另外一個解碼器時,該視頻流能夠正常播放。這樣,使得原本對該視頻流具備播放能力的播放器無法正常播放,嚴重影響了用戶的觀看效果。還有一種情況是,如果在播放器中有兩個或多個解碼器都能支持某個視頻流的解碼,但因為播放器僅僅選用缺省的解碼器,而這樣則可能會在有限的硬件資源情況下造成播放時音視頻不同步,或者播放耗電太多,使得視頻不能完整觀看。

發(fā)明內容
根據(jù)本申請的一方面,提供了一種媒體播放器,包括:分離單元,用于獲取由媒體文件分離出的音頻流和視頻流的信息;評估單元,用于根據(jù)所述分離單元獲取的信息,從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器;以及解碼單元,用于利用所選擇的解碼器對所述音頻流和視頻流進行解碼。根據(jù)本申請的另一方面,提供了一種媒體文件的播放方法,包括:獲取由媒體文件分離出的音頻流和視頻流的信息;根據(jù)所獲取的信息從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器;以及利用所選擇的解碼器對所述音頻流和視頻流進行解碼。利用本申請?zhí)峁┑姆椒ê脱b置,一方面,能夠適當?shù)剡x擇解碼器,以對媒體文件進行解碼,并且在解碼失敗時,能夠重新選擇解碼器進行解碼;另一方面,可根據(jù)當前系統(tǒng)資源使用狀況選用最優(yōu)的解碼器。


圖1示出了根據(jù)本申請一個實施方式的媒體播放器的示意圖;圖2示出了根據(jù)本申請另一個實施方式的媒體播放器的示意圖;圖3示出了根據(jù)本申請又一個實施方式的媒體播放器的示意圖;圖4示出了根據(jù)本申請再一個實施方式的媒體播放器的示意圖;圖5示出了根據(jù)本申請一個實施方式的媒體文件播放方法的流程圖;圖6示出了根據(jù)本申請另一個實施方式的媒體文件播放方法的流程圖;以及圖7示出了根據(jù)本申請又一個實施方式的媒體文件播放方法的流程圖。
具體實施例方式下面參照附圖對根據(jù)本申請的實施方式進行詳細描述。圖1示出了根據(jù)本申請一個實施方式的媒體播放器100的示意圖。如圖1所示,媒體播放器100包括分離單元101、解碼單元102以及評估單元103。在操作中,媒體播放器100能夠從多個解碼器(未示出)中選出至少一個解碼器,從而對媒體文件進行解碼。上述多個解碼器既可包括軟件解碼器,也可包括硬件解碼器。具體地,當用戶希望在媒體播放器100上播放媒體文件(例如,音視頻文件)時,分離單元101首先將讀取到的該媒體文件分離為單獨的音頻流和視頻流,并將音頻流和視頻流發(fā)送至解碼單元102,以用于之后的解碼。而且,分離單元101還獲取音頻流和視頻流的信息。例如,音頻流的信息可包括采樣率、碼率等,視頻流的信息可包括視頻類型、分辨率、幀率和碼率等。分離單元101將所獲取的音頻流和視頻流的信息發(fā)送至評估單元103。評估單元103在接收到音頻流和視頻流的信息后,根據(jù)這些信息,從多個解碼器中選擇對該媒體文件具備解碼能力的解碼器,并通知解碼單元102。解碼單元102則利用所選擇的解碼器對從分離單元101接收到得音頻流和視頻流進行解碼,并將解碼后的數(shù)據(jù)提供給播放單元(未示出)進行顯示和播放。在圖1及以下的圖2-4中,實線表示數(shù)據(jù)流的傳輸,虛線表示控制流及相關信息的傳輸。圖2示出了根據(jù)本申請另一個實施方式的媒體播放器100’的示意圖。如圖2所示,媒體播放器100’與圖1所示的媒體播放器100的區(qū)別在于,其還可包括信息處理單元104。在信息處理單元104或媒體播放器100’的存儲單元(未示出)中,預設有解碼器能力信息表,其中記錄了每個解碼器的解碼能力,即,與每個解碼器相關的音頻流和視頻流的信息和能否對該類音頻流和視頻流成功解碼的相應解碼狀態(tài)信息。在操作中,分離單元101將音頻流和視頻流的信息發(fā)送給信息處理單元104,解碼單元102將所利用的解碼器的標識發(fā)送給信息處理單元104。并且,解碼單元102在利用所選出的解碼器對音頻流和視頻流進行解碼時,根據(jù)解碼是否成功生成解碼狀態(tài)信息,并將該狀態(tài)信息發(fā)送給信息處理單元104。信息處理單元104利用從分離單元101接收的音頻流和視頻流的信息以及從解碼單元102接收的解碼器的標識和是否解碼成功的狀態(tài)信息,更新解碼器能力信息表。也就是說,每進行一次播放操作,信息處理單元104就對解碼器能力信息表進行一次更新,即,進行一次訓練,從而更詳細地掌握該解碼器的解碼能力。當評估單元103從分離單元101接收到音頻流和視頻流的信息后,通過查詢由信息處理單元104維護的解碼器能力信息表,以從多個解碼器中選擇對該媒體文件具備解碼能力的解碼器。根據(jù)本申請的一個實施方式,對應一個解碼器,解碼器自身會給出其解碼能力,該解碼能力預先記錄在碼器能力信息表中。以一個H.264視頻解碼器為例,它可能給出的能力信息包括解碼流類型為"video/x-h264",視頻流的寬度范圍為[16,1096],高度范圍為[16,1096],及幀速率范圍為[1,30]。有時,解碼器給出的能力信息并不充分,存在這樣一種情況,依據(jù)能力信息,當前解碼器能對某個視頻流進行解碼,但實際上該解碼器卻不能對該視頻流進行正常解碼的情況。例如,從能力信息可以判斷該H.264視頻解碼器能對
H.264進行解碼,但實際上該解碼器僅僅支持baseline這一檔次的視頻解碼,如果從分離單元101輸出的視頻流類型為main profile檔次的數(shù)據(jù),則該解碼器不能進行正常解碼。根據(jù)本申請的另一實施方式,還存在這樣一種情況,即,由于媒體文件的信息不足夠詳細,使得分離單元101給出的音頻流和視頻流的信息不足夠詳細。這樣,所選出的解碼器可能在某些時候能夠對音頻流和視頻流進行正常解碼,而在某些時候不能正常解碼。如
H.264解碼器能支持main profile的視頻流解壓縮,但該解碼器支持的level層次有限,當分離單元101給出的信息僅僅表明是H.264main profile的檔次,則在某些情況能正常解碼,在某些情況則提示錯誤信息,不能正常解碼。如果解碼單元102生成的狀態(tài)信息表明音頻流或視頻流解碼失敗,則信息處理單元104不僅根據(jù)該信息更新解碼器能力信息表,還會通知評估單元103重新查詢更新后的解碼器能力信息表,評估單元103通過重新查詢,重新選擇對該媒體文件具備解碼能力的解碼器。而且,通過信息處理單元104對解碼器能力信息表的更新,達到了訓練的目的,從而在下次播放同樣類型的媒體文件時,評估單元103能根據(jù)不斷更新后的解碼器能力信息表選擇有對應解碼能力的解碼器。也就是說,當媒體播放器在播放任何一個媒體文件時,實際就是對解碼器能力信息表的一個訓練過程,當媒體播放器播放的媒體文件越多,則訓練樣本的基數(shù)越大,由信息處理單元104中維護的解碼器能力信息表則越詳細。這樣對解碼器能力有更充分的認識后,評估單元103就能在多個解碼器中更有效地選擇有對應解碼能力的解碼器。根據(jù)本申請的另一實施方式,當評估單元103在查詢解碼器能力信息表時發(fā)現(xiàn)有至少兩個解碼器具備對該媒體文件進行解碼的能力時,評估單元103將根據(jù)當前資源使用情況選擇解碼器。具體而言,在信息處理單元104或媒體播放器100’的存儲單元(未示出)中,還預設有解碼器資源占用表,其中記錄了每個解碼器的資源占用情況,即,與每個解碼器分別相關的首頻流和視頻流的息和相應的資源占用情況。在操作中,信息處理單元104利用從分離單元101接收的音頻流和視頻流的信息以及在解碼單元102利用所選出的解碼器進行解碼時該解碼器的系統(tǒng)資源占用情況(如,CPU占用率、占用內存和電量消耗等),更新解碼器資源占用表。也就是說,每進行一次播放操作,信息處理單元104就對解碼器資源占用表進行一次更新,S卩,進行一次訓練,從而更詳細地掌握該解碼器的資源占用情況。
當評估單元103在查詢解碼器能力信息表時發(fā)現(xiàn)有至少兩個解碼器具備對該媒體文件進行解碼的能力時,通過查詢由信息處理單元104維護的解碼器資源占用表,并結合當前資源使用情況(如,當前CPU占用率、當前占用內存和當前電量消耗等),以從具備對所述媒體文件進行解碼的能力的至少兩個解碼器中選擇解碼器,從而盡量避免由于系統(tǒng)資源不足而導致媒體文件無法正常播放的情況出現(xiàn)。圖3示出了根據(jù)本申請另一個實施方式的媒體播放器100”的示意圖。如圖3所示,與圖2所示的媒體播放器100’的區(qū)別在于,其還可包括后處理單元105。解碼單元102在對音頻流和視頻流進行解碼操作時,實時地將解碼后的數(shù)據(jù)發(fā)送至后處理單元105,后處理單元105對解碼后的音頻流和視頻流進行同步操作,并將音頻流和視頻流的同步狀況發(fā)送至信息處理單元104,例如該解碼器解碼后音頻流和視頻流是否同步。信息處理單元104根據(jù)從后處理單元105接收的音頻流和視頻流的同步狀況,更新解碼器資源占用表。也就是說,音頻流和視頻流的同步狀況也是解碼器資源占用表中所記錄的事項,其也可作為評估單元103在選擇解碼器時所考慮的條件之一。根據(jù)本申請的另一實施方式,評估單元103根據(jù)解碼器資源占用表和當前資源使用情況對具備對媒體文件進行解碼的能力的至少兩個解碼器進行加權評估。根據(jù)一個實施例,加權評估的計算公式為:
權利要求
1.種媒體播放器,包括: 分離單元,用于獲取由媒體文件分離出的音頻流和視頻流的信息; 評估單元,用于根據(jù)所述分離單元獲取的信息,從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器;以及 解碼單元,用于利用所選擇的解碼器對所述音頻流和視頻流進行解碼。
2.權利要求1所述的媒體播放器,還包括: 信息處理單元,用于維護解碼器能力信息表,其中所述信息處理單元從所述分離單元接收音頻流和視頻流的信息,從所述解碼單元接收所利用的解碼器的標識和是否解碼成功的狀態(tài)信息,以更新所述解碼器能力信息表, 其中所述評估單元通過查詢所述解碼器能力信息表,從所述多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器。
3.權利要求2所述的媒體播放器,其中,如果所述狀態(tài)信息表明所述音頻流或視頻流解碼失敗,則所述信息處理單元更新所述解碼器能力信息表,并且所述評估單元通過重新查詢更新后的解碼器能力信息表,選擇對所述媒體文件具備解碼能力的解碼器。
4.權利要求1至3中任一項所述的媒體播放器,其中,當有至少兩個解碼器具備對所述媒體文件進行解碼的能力時,所述評估單元根據(jù)當前資源使用情況選擇解碼器。
5.權利要求4所述的媒體播放器,其中所述信息處理單元還用于維護解碼器資源占用表,其中,所述信息處理單元 根據(jù)從所述分離單元接收的音頻流和視頻流的信息以及所述解碼單元所利用的解碼器在對音頻流和視頻流進行解碼時所占用的資源情況,更新所述解碼器資源占用表,其中所述評估單元通過查詢所述解碼器資源占用表,從具備對所述媒體文件進行解碼的能力的至少兩個解碼器中選擇解碼器。
6.權利要求5所述的媒體播放器,其中,所述評估單元根據(jù)所述解碼器資源占用表和所述當前資源使用情況對具備對所述媒體文件進行解碼的能力的至少兩個解碼器進行加權評估。
7.權利要求5或6所述的媒體播放器,還包括: 后處理單元,用于對解碼后的音頻流和視頻流進行同步操作,并將音頻流和視頻流的同步狀況發(fā)送至所述信息處理單元,所述信息處理單元根據(jù)從所述后處理單元接收的音頻流和視頻流的同步狀況,更新所述解碼器資源占用表。
8.權利要求6或7所述的媒體播放器,其中所述評估單元根據(jù)所述解碼器資源占用表和所述當前資源使用情況對所述至少兩個解碼器進行加權評估的計算公式為:
9.權利要求8所述的媒體播放器,其中 所述加權項包括:所述媒體播放器的CPU占用率加權項、內存占用率加權項、剩余電量加權項以及音頻流和視頻流同步加權項中的一個或多個。
10.種媒體文件的播放方法,包括: 獲取由媒體文件分離出的音頻流和視頻流的信息; 根據(jù)所獲取的信息從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器;以及 利用所選擇的解碼器對所述音頻流和視頻流進行解碼。
11.權利要求10所述的方法,其中,根據(jù)所獲取的信息從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器的步驟包括: 查詢解碼器能力信息表,所述解碼器能力信息表記錄了與所述多個解碼器中的每個分別相關的音頻流和視頻流的信息和能否解碼成功的相應解碼狀態(tài)信息。
12.權利要求11所述的方法,還包括: 檢測利用所選擇的解碼器是否對所述音頻流和視頻流成功解碼;以及 根據(jù)檢測結果,更新所述解碼器能力信息表。
13.權利要求12所述的方法,其中,如果所述檢測結果表明對所述音頻流或視頻流的解碼失敗,則在更新所述解碼器能力信息表之后,重新查詢更新后的解碼器能力信息表,從而重新選擇對所述媒體文件具備解碼能力的解碼器。
14.權利要求11至 13中任一項所述的方法,其中,根據(jù)所獲取的信息從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器的步驟還包括: 通過查詢所述解碼器能力信息表,根據(jù)所獲取的信息,判斷是否有至少兩個解碼器具備對所述媒體文件進行解碼的能力,其中如果有至少兩個解碼器具備對所述媒體文件進行解碼的能力,則根據(jù)當前資源使用情況選擇解碼器。
15.權利要求14所述的方法,其中,根據(jù)當前資源使用情況選擇解碼器的步驟包括: 查詢解碼器資源占用表,所述解碼器資源占用表記錄了與所述多個解碼器中的每個分別相關的首頻流和視頻流的息和相應的資源占用情況。
16.權利要求15所述的方法,還包括: 根據(jù)所選擇的解碼器對所述音頻流和視頻流進行解碼時的資源占用情況,更新所述解碼器資源占用表。
17.權利要求15或16所述的方法,其中,根據(jù)當前資源使用情況選擇解碼器的步驟還包括: 根據(jù)所述解碼器資源占用表和所述當前資源使用情況,對具備對所述媒體文件進行解碼的能力的至少兩個解碼器進行加權評估。
18.權利要求15至17中任一項所述的方法,還包括: 對解碼后的音頻流和視頻流進行同步操作,并根據(jù)音頻流和視頻流的同步狀況,更新所述解碼器資源占用表。
19.權利要求17或18所述的方法,其中對具備對所述媒體文件進行解碼的能力的至少兩個解碼器進行加權評估的計算公式為: κ =Ix 7=1 其中,K為對于每個解碼器的加權評估結果,η為正整數(shù),表示需要在加權評估中考慮的加權項數(shù),Kj為每項加權項的加權系數(shù),Wj為第j項加權項的評估值;在計算出所述至少兩個解碼器中的每個的加權評估結果后,選擇加權評估結果最大的解碼器用于對所述音頻流和視頻流進行解碼。
20.權利要求19所述的方法,其中 所述加權項包括=CPU占用率加權項、內存占用率加權項、剩余電量加權項以及音頻流和視頻流同步加權項中的一個或 多個。
全文摘要
本申請公開了一種媒體播放器,包括分離單元,用于獲取由媒體文件分離出的音頻流和視頻流的信息;評估單元,用于根據(jù)所述分離單元獲取的信息,從多個解碼器中選擇對所述媒體文件具備解碼能力的解碼器;以及解碼單元,用于利用所選擇的解碼器對所述音頻流和視頻流進行解碼。
文檔編號H04N21/434GK103096163SQ20111033947
公開日2013年5月8日 申請日期2011年11月1日 優(yōu)先權日2011年11月1日
發(fā)明者張世俊, 黃曉偉, 郭勐, 張儉 申請人:中國移動通信集團公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
望谟县| 株洲县| 海盐县| 法库县| 南涧| 宁陵县| 通许县| 尼玛县| 宁远县| 灯塔市| 哈尔滨市| 安泽县| 田阳县| 广饶县| 武隆县| 潮安县| 平定县| 华蓥市| 宁德市| 崇礼县| 普宁市| 吉首市| 顺昌县| 诸城市| 那坡县| 普格县| 通道| 当雄县| 巴楚县| 游戏| 英超| 忻城县| 太谷县| 漾濞| 昌邑市| 泌阳县| 抚宁县| 枣强县| 闻喜县| 乌拉特中旗| 三亚市|