[0069]通過步驟221先將需要緩沖的節(jié)目流存儲在相應的緩沖區(qū)鏈表中,再經(jīng)過步驟222進行循環(huán)抽幀,并根據(jù)步驟223將抽幀的數(shù)據(jù)轉(zhuǎn)為圖片,存儲在圖片鏈表中,然后步驟224會播放圖片,這樣將需要緩沖的節(jié)目流,通過抽幀和圖片的轉(zhuǎn)化,變?yōu)閳D片播放,可以通過軟件解碼實現(xiàn),不需要另外添加硬件解碼器,降低CPU的占有率,提高實用性。
[0070]如圖3所示,本發(fā)明的ffmpeg對所述節(jié)目流進行處理,獲得圖片,并播放圖片的具體的實現(xiàn)過程:
[0071](I)從流媒體服務器接收媒體流,并按照188*200的大小放入到每個塊大小為188*200的緩沖區(qū)鏈表。
[0072](2)查詢緩沖區(qū)鏈表是否為空,如果不是空的,則循環(huán)從緩沖區(qū)鏈表中取緩沖區(qū)進行抽幀的操作。
[0073](3)抽幀后的I幀數(shù)據(jù)轉(zhuǎn)為為圖片存儲在機頂盒本地,經(jīng)圖片路徑存入圖片鏈表,并刪除取到的鏈表緩沖區(qū)塊。
[0074](4)查詢圖片路徑鏈表是否為空,如果不是空的,循環(huán)從圖片鏈表中取圖片路徑展示到頁面,5秒鐘后刪除圖片路徑節(jié)點以及展示的圖片本身。
[0075]如圖4所示,相應的,本發(fā)明實施例的還提供了一種圖片播放的裝置,其中,包括:
[0076]獲取模塊1,用于檢測到當前頻道的節(jié)目流進行播放時,獲取硬件解碼器資源的占用情況;
[0077]第一處理模塊,用于在所述硬件解碼器資源處于全部被占用的第一時刻,若接收到當前節(jié)目流的圖片播放指令,且仍占用原有的硬件解碼器資源時,對所述節(jié)目流進行處理,獲得圖片,并播放圖片。其中,對節(jié)目流的處理可以通過軟件ffmpeg實現(xiàn),當然以上軟件處理僅僅是舉例說明,具體可以對節(jié)目流處理的任何軟件均應用于此,在此不一一舉例。
[0078]本發(fā)明實施例中,通過獲取模塊I監(jiān)測到屬于節(jié)目流播放時,得到硬件解碼器資源的剩余情況,從而在硬件解碼器資源全部被占用時,通過第一處理模塊對當前需要緩沖的節(jié)目流進行相應圖片處理,這樣可以通過軟件進行節(jié)目流解碼,將節(jié)目流變成圖片播放,減輕CPU的負擔,同時通過圖片播放的緩沖,減輕卡頓,提高用戶使用的舒適度。
[0079]如圖4所示,在本發(fā)明上述實施例的圖片播放的裝置中,還包括:
[0080]提示模塊3,用于提示播放能力不足。其中,提示模塊3可以是電子節(jié)目菜單EPG。
[0081]本發(fā)明的又一實施例的圖片播放的裝置中,還包括:
[0082]申請模塊4,用于定時申請硬件解碼器資源;其中,可以通過定時器設定一定的時間進行申請硬件解碼器資源。
[0083]第二處理模塊5,用于若申請到空閑的硬件解碼器資源時,則停止圖片播放,并利用所述空閑的硬件解碼器資源對當前節(jié)目流進行硬件解碼,并從所述第一時刻播放解碼后的節(jié)目流。其中,對于獲取模塊1,第一處理模塊,申請模塊4以及第二處理模塊5可以融合稱為硬件解碼器資源管理模塊,具有硬件解碼器資源的申請/釋放/查詢能力。
[0084]本發(fā)明實施例中,在軟件解碼對節(jié)目流的處理中,用戶需要高清播放視頻,申請模塊4需要對硬件解碼器進行實時的占有率的查詢,在有空閑的硬件解碼器資源存在時,第二處理模塊5進行處理解碼,恢復正常的高清視頻的播放,為用戶提供方便。
[0085]本發(fā)明的又一實施例的圖片播放的裝置中,所述第一處理模塊包括:
[0086]第一處理子模塊2,用于對所述節(jié)目流進行抽幀以及生成圖片處理,獲得圖片,并播放圖片。
[0087]本發(fā)明的又一實施例的圖片播放的裝置中,所述第一處理子模塊2包括:
[0088]存儲單元20,用于將從流媒體服務器獲取的節(jié)目流,存入緩沖區(qū)鏈表中;
[0089]抽幀單元21,用于從所述緩沖區(qū)鏈表中的取緩沖區(qū)中,循環(huán)抽幀的多個幀;
[0090]圖片生成單元22,用于抽幀出的每幀數(shù)據(jù)轉(zhuǎn)為圖片,經(jīng)圖片路徑存入圖片鏈表;
[0091]圖片播放單元24,用于循環(huán)播放所述圖片鏈表中的圖片。
[0092]本發(fā)明的又一實施例的圖片播放的裝置中,所述第一處理子模塊2還包括:第一刪除單元23,用于刪除取過的所述取緩沖區(qū)。
[0093]本發(fā)明的又一實施例的圖片播放的裝置中,所述第一處理子模塊2還包括:第二刪除單元25,用于經(jīng)預定時間后,刪除圖片路徑節(jié)點以及所播放的圖片。
[0094]相應地,本發(fā)明實施例還提供一種機頂盒,包括如上述所述的圖片播放的裝置。
[0095]在本發(fā)明實施例的圖片播放的裝置中,通過獲取模塊I監(jiān)測到屬于節(jié)目流播放時,得到硬件解碼器資源的剩余情況,從而在硬件解碼器資源全部被占用時,通過提示模塊3進行提示后,然后第一處理模塊對當前需要緩沖的節(jié)目流進行相應圖片處理,這樣可以通過軟件解碼進行節(jié)目流解碼,將存儲單元20中的數(shù)據(jù),通過抽幀單元21抽幀出來數(shù)據(jù)后,利用圖片生成單元22將所抽幀的數(shù)據(jù)變?yōu)閳D片,圖片播放單元24將圖片顯示至頁面播放,減輕CPU的負擔,同時用戶需要高清播放視頻,申請模塊4需要對硬件解碼器進行實時的占有率的查詢,在有空閑的硬件解碼器存在時,第二處理模塊5進行解碼,也就是恢復正常的高清視頻的播放,為用戶提供方便。以上圖片播放的裝置所有實現(xiàn)實施例及其有益效果均適用于該機頂盒。
[0096]以上所述是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
【主權項】
1.一種圖片播放的方法,其特征在于,包括: 檢測到當前頻道的節(jié)目流進行播放時,獲取硬件解碼器資源的占用情況; 在所述硬件解碼器資源處于全部被占用的第一時刻,若接收到當前節(jié)目流的圖片播放指令,且仍占用原有的硬件解碼器資源時,對所述節(jié)目流進行處理,獲得圖片,并播放圖片。
2.根據(jù)權利要求1所述的圖片播放的方法,其特征在于,在所述硬件解碼器資源處于全部被占用的第一時刻時,還包括: 提示播放能力不足的步驟。
3.根據(jù)權利要求1所述的圖片播放的方法,其特征在于,播放圖片的過程中,還包括: 定時申請硬件解碼器資源; 若申請到空閑的硬件解碼器資源時,則停止圖片播放,并利用所述空閑的硬件解碼器資源對當前節(jié)目流進行硬件解碼,并從所述第一時刻播放解碼后的節(jié)目流。
4.根據(jù)權利要求1所述的圖片播放的方法,其特征在于,對所述節(jié)目流進行處理,獲得圖片,并播放圖片的步驟包括: 對所述節(jié)目流進行抽幀以及生成圖片處理,獲得圖片,并播放圖片。
5.根據(jù)權利要求4所述的圖片播放的方法,其特征在于,對所述節(jié)目流進行抽幀以及生成圖片處理,獲得圖片,并播放圖片的步驟包括: 將從流媒體服務器獲取的節(jié)目流,存入緩沖區(qū)鏈表中; 從所述緩沖區(qū)鏈表中的取緩沖區(qū)中,循環(huán)抽幀的多個幀; 抽幀出的每幀數(shù)據(jù)轉(zhuǎn)為圖片,經(jīng)圖片路徑存入圖片鏈表; 循環(huán)播放所述圖片鏈表中的圖片。
6.根據(jù)權利要求5所述的圖片播放方法,其特征在于,經(jīng)圖片路徑存入圖片鏈表后還包括: 刪除取過的所述取緩沖區(qū)。
7.根據(jù)權利要求5所述的圖片播放方法,其特征在于,循環(huán)播放所述圖片鏈表中的圖片后還包括: 經(jīng)預定時間后,刪除圖片路徑節(jié)點以及所播放的圖片。
8.一種圖片播放的裝置,其特征在于,包括: 獲取模塊,用于檢測到當前頻道的節(jié)目流進行播放時,獲取硬件解碼器資源的占用情況; 第一處理模塊,用于在所述硬件解碼器資源處于全部被占用的第一時刻,若接收到當前節(jié)目流的圖片播放指令,且仍占用原有的硬件解碼器資源時,對所述節(jié)目流進行處理,獲得圖片,并播放圖片。
9.根據(jù)權利要求8所述的圖片播放的裝置,其特征在于,還包括: 提示模塊,用于提示播放能力不足。
10.根據(jù)權利要求8所述的圖片播放的裝置,其特征在于,還包括: 申請模塊,用于定時申請硬件解碼器資源; 第二處理模塊,用于若申請到空閑的硬件解碼器資源時,則停止圖片播放,并利用所述空閑的硬件解碼器資源對當前節(jié)目流進行硬件解碼,并從所述第一時刻播放解碼后的節(jié)目流。
11.根據(jù)權利要求8所述的圖片播放的裝置,其特征在于,所述第一處理模塊包括:第一處理子模塊,用于對所述節(jié)目流進行抽幀以及生成圖片處理,獲得圖片,并播放圖片。
12.根據(jù)權利要求11所述的圖片播放的裝置,其特征在于,所述第一處理子模塊包括: 存儲單元,用于將從流媒體服務器獲取的節(jié)目流,存入緩沖區(qū)鏈表中;抽幀單元,用于從所述緩沖區(qū)鏈表中的取緩沖區(qū)中,循環(huán)抽幀的多個幀;圖片生成單元,用于抽幀出的每幀數(shù)據(jù)轉(zhuǎn)為圖片,經(jīng)圖片路徑存入圖片鏈表;圖片播放單元,用于循環(huán)播放所述圖片鏈表中的圖片。
13.根據(jù)權利要求12所述的圖片播放的裝置,其特征在于,所述第一處理子模塊還包括:第一刪除單元,用于刪除取過的所述取緩沖區(qū)。
14.根據(jù)權利要求12所述的圖片播放的裝置,其特征在于,所述第一處理子模塊還包括:第二刪除單元,用于經(jīng)預定時間后,刪除圖片路徑節(jié)點以及所播放的圖片。
15.一種機頂盒,其特征在于,包括如權利要求8至14任一項所述的圖片播放的裝置。
【專利摘要】本發(fā)明提供一種圖片播放的方法、裝置及機頂盒,涉及多媒體技術領域,解決在發(fā)現(xiàn)硬件解碼器資源已經(jīng)完全被占用后,進行硬件解碼使cpu負擔過重,加重視頻卡頓,讓用戶無法選擇高清節(jié)目播放的問題。其中,所述圖片播放的方法,包括:檢測到當前頻道的節(jié)目流進行播放時,獲取硬件解碼器資源的占用情況;在所述硬件解碼器資源處于全部被占用的第一時刻,若接收到當前節(jié)目流的圖片播放指令,且仍占用原有的硬件解碼器資源時,對所述節(jié)目流進行處理,獲得圖片,并播放圖片。在硬件解碼器資源被完全占有后,不用添加新的硬件解碼器,利用軟件解碼處理節(jié)目流,從而減少CPU的負擔。
【IPC分類】H04N21-262, H04N21-462, H04N21-472
【公開號】CN104661059
【申請?zhí)枴緾N201310589446
【發(fā)明人】陳勇, 王峰
【申請人】中興通訊股份有限公司
【公開日】2015年5月27日
【申請日】2013年11月20日
【公告號】WO2014183566A1