頻包時就觸發(fā)電視自動切換至較低分辨率播放。本方法 中是通過將當前播放視頻A的當前播放分辨率切換至該視頻A的最低分辨率進行播放,以 獲得最大流暢度播放。其中,假設(shè)當前播放視頻A包括四個分辨率等級,例如,4KU080P、 720P和480P,則選擇最低分辨率進行播放時,則直接切換至480P進行播放,這樣,可以防止 分辨率被切換后與當前網(wǎng)速不匹配,以致電視機不斷去切換分辨率,使用戶無法流暢的觀 看視頻。需要說明的是,該步驟是基于視頻A處于播放狀態(tài),再去讀取預設(shè)的視頻緩存區(qū)內(nèi) 存儲的視頻數(shù)據(jù),當視頻A正處于暫?;蛘呖爝M狀態(tài)等其他狀態(tài)時,則只執(zhí)行暫停或者快 進的指令。
[0076] 進一步地,參照圖4,圖4為本發(fā)明視頻播放分辨率切換方法第三實施例的流程示 意圖;基于上述實施例,本實施例中,在上述步驟S1之前還增加了以下步驟,如圖4所示,所 述視頻播放分辨率切換方法還包括:
[0077] 步驟A1、獲取顯示屏幕的物理分辨率;
[0078] 電視屏幕的物理分辨率可預先存儲至電視的存儲器中,需要時從存儲器讀取即 可。當電視機未存儲有屏幕的物理分辨率時,則可通過以下方法來實現(xiàn)電視屏幕的物理分 辨率的獲取,具體地,參照圖5,圖5為圖4所示的視頻播放分辨率切換方法的細化流程示意 圖;如圖5所示,所述步驟A1包括:
[0079] 步驟A101、分別檢測電視屏幕水平方向和堅直方向的三原色數(shù)量;
[0080] 步驟A102、根據(jù)檢測到的所述電視屏幕水平方向的三原色數(shù)量計算出所述電視屏 幕水平方向的分辨率X,根據(jù)檢測到的所述電視屏幕堅直方向的三原色數(shù)量計算出所述電 視屏幕堅直方向的分辨率Y,所述電視屏幕的物理分辨率為Χ*γ。
[0081] 由于每一像素都是由紅綠藍三原色組成的,故獲取到的三原色數(shù)量應該是像素數(shù) 量的三倍,也即屏幕分辨率為1920 Χ1080時,我們獲取到的水平方向的三原色個數(shù)應該是 1920 χ3 = 5760個,堅直方向的三原色個數(shù)應該是1080x3 = 3240個,將5760和3240分別 除以3即可得到水平方向的分辨率1920、以及堅直方向的分辨率1080,故我們便可知道整 個屏幕的分辨率應為1920x1080,在切換屏幕分辨率時不能超出這個范圍。
[0082] 步驟Α2、選擇所述可切換分辨率中小于或等于所述物理分辨率的切換分辨率,將 所選擇的切換分辨率作為所述可切換分辨率,轉(zhuǎn)到所述步驟S1,以計算所選擇的,切換分辨 率的切換時間間隔。
[0083] 讀取屏幕的分辨率以確定視頻可以切換的清晰度(也即分辨率),如果視頻的可 切換分辨率超出屏幕物理分辨率就無需計算高于物理分辨率的視頻分辨率對應的切換等 待時間,例如屏幕分辨率為1920 χ1080,而視頻可切換的分辨率為3840x2160,明顯超出 了屏幕物理分辨率,這時就不要再計算分辨率為3840x2160的切換等待時間,只需計算比 3840x2160小的視頻分辨率即可,因為即使將視頻播放分辨率切換至1920 χ1080以上的分 辨率,也無法使畫面顯示更清晰,而且還浪費網(wǎng)絡流量。需要說明的是,若該視頻的可切換 分辨率都大于當前播放設(shè)備的物理分辨率,則以視頻的可切換分辨率中最低分辨率進行播 放。
[0084] 進一步地,參照圖6,圖6為本發(fā)明視頻播放分辨率切換方法第四實施例的流程示 意圖;基于上述實施例,為了節(jié)省后臺操作,本實施例中,在上述步驟S1,或者上述步驟S0, 或者步驟上述Α1之前還增加了以下步驟,如圖6所示,所述視頻播放分辨率切換方法還包 括:
[0085] 步驟Β1、檢測當前播放視頻的播放時長;
[0086] 步驟Β2、當所述視頻播放時長小于第二預設(shè)閾值時,則保持所述視頻以當前播放 分辨率進行播放。
[0087] 計算每秒的視頻幀率、最終的總視頻幀張數(shù),然后用后者除以前者,得到視頻的長 度即能夠播放的時間長度。讀取視頻包的大小,通過讀取的視頻包中的每一幀圖像計算整 個視頻幀的總和,按照每秒60幅圖像的計數(shù),獲取到整個視頻包的時間長短,比如:1s發(fā)現(xiàn) 60張視頻幀,總共有18000張視頻幀,說明系統(tǒng)300s的圖像。Is發(fā)現(xiàn)24張視頻幀,總共有 240張視頻幀,說明系統(tǒng)有10s的圖像。讀取的視頻幀的時間越長,則說明視頻播放的時間 越長,讀取的視頻幀的時間越短,則說明視頻播放的時間越短,而視頻源短,一般是一些手 機和IPAD錄像,這些設(shè)備的分辨率有限,故視頻的分辨率一般也較低,因此,本實施例中直 接使電視以所述視頻的最低分辨率來播放該視頻。
[0088] 可以理解的是,由于本實施例中先檢測當前播放視頻的播放時長,且當視頻播放 時間較短時,則無需后臺自動跟隨網(wǎng)絡信號強度去切換分辨率,因此,可減少后臺一些不必 要的操作。
[0089] 本發(fā)明方法通過獲取當前輸入的網(wǎng)絡信號的強度以及獲取當前播放視頻的視頻 幀率來計算出該視頻可切換分辨率的切換時間間隔,然后基于當前網(wǎng)絡信號強度,選擇最 佳切換時間間隔及對應的可切換分辨率進行切換,從而實現(xiàn)了智能電視能夠自動根據(jù)網(wǎng)速 切換分辨率,無需用戶手動操作,節(jié)省了用戶的操作時間。
[0090] 本發(fā)明進一步提供一種視頻播放分辨率切換系統(tǒng)。
[0091] 參照圖7,圖7為本發(fā)明視頻播放分辨率切換系統(tǒng)第一實施例的結(jié)構(gòu)示意圖;在一 實施例中,所述視頻播放分辨率切換系統(tǒng)包括:
[0092] 第一獲取模塊10,用于獲取當前網(wǎng)絡信號的強度,同時獲取當前播放視頻的視頻 幀率。
[0093] 本實施例中,可以是實時獲取當前網(wǎng)絡信號的強度以及當前播放視頻的視頻幀 率,或者是在檢測到視頻緩存區(qū)內(nèi)視頻數(shù)據(jù)包的數(shù)量小于第一預設(shè)閾值時,去獲取當前網(wǎng) 絡信號的強度以及當前播放視頻的視頻幀率。例如,當用戶打開視頻播放終端,選擇視頻A 以一個較高的分辨率進行播放,視頻播放終端包括電視、電腦或者其他智能播放裝置,本實 施例中以智能電視為例。此時,電視會從網(wǎng)絡獲取視頻A的視頻包,然后緩存至一預先設(shè)置 的視頻緩存區(qū)內(nèi),以等待讀取播放。應當理解的是,電視當前輸入的網(wǎng)速越好,視頻包的傳 輸速度越快,即網(wǎng)速越好時,所述預設(shè)的視頻緩存區(qū)內(nèi)存儲的視頻數(shù)據(jù)包的數(shù)量越多,網(wǎng)速 較差時,存儲的視頻數(shù)據(jù)包的數(shù)量相對較少。并且,預設(shè)的視頻緩存區(qū)內(nèi)存儲的視頻數(shù)據(jù)包 的數(shù)量越多時,就可以以較高的視頻分辨率來播放視頻,以獲得更好的觀看效果。當存儲的 視頻數(shù)據(jù)包的數(shù)量較少或者一段時間內(nèi)該預設(shè)的視頻緩存區(qū)沒有視頻包時,電視就會出現(xiàn) 播放卡屏或者顯示視頻緩存中,使用戶暫時無法正常觀看。由此,若用戶想要繼續(xù)流暢的觀 看電視,就必須檢測當前網(wǎng)速并根據(jù)當前網(wǎng)速去調(diào)整視頻播放分辨率。
[0094] 應當說明的是,本實施例中的電視機中設(shè)有網(wǎng)絡信號檢測元件或者用于檢測網(wǎng)速 的應用軟件,通過網(wǎng)絡信號檢測元件檢測電視當前輸入的網(wǎng)絡信號的強度或者通過應用軟 件讀取電視當前輸入的網(wǎng)絡信號的強度。需要說明的是,當前電視視頻的視頻幀率優(yōu)選為 60赫茲。
[0095] 運算模塊20,用于根據(jù)所述當前網(wǎng)絡信號強度、當前播放視頻的可切換分辨率及 當前播放視頻的視頻幀率計算所述可切換分辨率的切換時間間隔。
[0096] 所述運算模塊20具體采用以下公式計算可切換分辨率的切換時間間隔,所述預 設(shè)的計算公式H = (P*FV(K*128*1024),其中,Η為切換時間間隔,單位為秒,P為該視頻可 以切換的分辨率,例如該視頻可以切換為4Κ、1080Ρ、720Ρ及480Ρ中的任意一個,F(xiàn)為視頻 幀率,Κ為電視當前輸入的網(wǎng)絡信號的強度,單位為兆。
[0097] 根據(jù)當前網(wǎng)絡帶寬與當前播放視頻的各可切換分辨率可以計算出當前網(wǎng)絡帶寬 下,將當前分辨率切換至各可切換分辨率所需要的等待時間,因此,根據(jù)這些時間就可以設(shè) 置電視等待對應的時間之后就自動切換至對應的分辨率進行播放或者選擇當前網(wǎng)速對應 的最佳的切換分辨率來進行切換。以下通過具體實例來詳細闡述本實施例如何計算切換時 間間隔:
[0098] 例如,電視當前的播放視頻為Α,視頻幀率為60赫茲,且以最低分辨率正在播放, 當前播放網(wǎng)速8兆,即網(wǎng)絡帶寬為8兆。假設(shè)視頻Α可以切換的分辨率有4Κ、1080Ρ、720Ρ 及480Ρ,即當前以480Ρ的分辨率在正在播放,計算時,則分別計算出當前播放網(wǎng)速為8兆的 情況下,要使視頻播放流暢,切