本發(fā)明涉及一種定位播放卡頓原因的方法,具體涉及一種快速定位播放卡頓現(xiàn)象原因的方法,屬于多媒體播放技術(shù)領(lǐng)域。
背景技術(shù):
近年來,隨著移動互聯(lián)網(wǎng)的飛速發(fā)展,消費類電子產(chǎn)品呈現(xiàn)出了爆發(fā)式增長,每年消費類電子產(chǎn)品的出貨量都達(dá)到了億臺以上。音視頻內(nèi)容播放功能是消費類電子產(chǎn)品的核心功能之一,也是用戶日常使用頻率最高的功能之一,因此音視頻內(nèi)容播放的效果就直接關(guān)系到了用戶對產(chǎn)品的體驗與評價,如何提升音視頻內(nèi)容的播放效果,從而改善用戶視聽體驗成為了消費電子產(chǎn)品的核心需求之一。為了提升音視頻內(nèi)容播放的視聽體驗,就必須解決音視頻內(nèi)容播放過程中出現(xiàn)的問題,只有快速定位到問題的根源,才能實現(xiàn)問題的快速解決。
如何快速定位音視頻文件播放卡頓現(xiàn)象的原因,目前本技術(shù)領(lǐng)域技術(shù)人員采用的主要技術(shù)手段是通過對播放器底層緩沖區(qū)進行實時監(jiān)控,并獲取緩沖區(qū)中返回的各種異常信息來一步一步進行原因的排查、分析和定位,此類方法的使用需要完整掌握播放器技術(shù)領(lǐng)域的專業(yè)知識和專業(yè)技能,普通開發(fā)人員和測試人員無法使用此類方法進行分析和定位,從而限制了此類方法的推廣和使用,同時,此類方法分析步驟繁瑣,執(zhí)行效率低,也阻礙了問題的快速解決。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是針對當(dāng)前消費電子產(chǎn)品上音視頻文件在播放過程中出現(xiàn)的卡頓現(xiàn)象,提出了一種能夠快速定位此類卡頓現(xiàn)象原因的方法。
本發(fā)明的目的通過下述技術(shù)方案來實現(xiàn):
一種快速定位播放卡頓現(xiàn)象原因的方法,包括如下步驟:
步驟1:在音視頻文件播放過程中,對音視頻文件的實時碼率值進行實時提取與保存,并設(shè)定系統(tǒng)cpu占用率門檻值與內(nèi)存空閑的門檻值;
步驟2:在音視頻文件播放過程中,實時計算播放器讀取音視頻文件的實時讀取速率;
步驟3:比較步驟1、步驟2中所得的碼率值和讀取速率值,判斷步驟1的碼率值是否大于步驟2的讀取速率值,并記錄比較結(jié)果;若比較的結(jié)果為小于時,則繼續(xù)回到步驟1,繼續(xù)監(jiān)測播放卡頓現(xiàn)象;若比較的結(jié)果為大于時,則繼續(xù)執(zhí)行步驟4;
步驟4:實時測試音視頻文件存儲設(shè)備的文件讀取性能,并記錄文件讀取的平均速率值;
步驟5:比較步驟1的實時碼率值與步驟4的文件讀取的速率值,并記錄比較結(jié)果;若比較結(jié)果為大于時,則給出卡頓現(xiàn)象原因的顯性提示,存儲設(shè)備讀取性能不足;若比較結(jié)果為小于或等于,則繼續(xù)執(zhí)行下面步驟6;
步驟6:實時獲取系統(tǒng)cpu占用率值,并保存記錄值;
步驟7:比較步驟6所記錄的cpu占用率值與步驟1所設(shè)定的cpu占用率門檻值,并記錄比較結(jié)果;若比較結(jié)果為大于cpu占用率門檻值,則給出顯性的卡頓現(xiàn)象原因提示,系統(tǒng)繁忙所致;若比較結(jié)果為小于門檻值,則繼續(xù)執(zhí)行下面步驟8;
步驟8:實時獲取系統(tǒng)內(nèi)存空閑值,并記錄;
步驟9:將步驟8的值與步驟1中設(shè)定的內(nèi)存空閑的門檻值進行比較,并記錄結(jié)果;若結(jié)果為小于內(nèi)存空閑的門檻值,則給出顯性的卡頓現(xiàn)象原因提示,系統(tǒng)內(nèi)存資源不足;若結(jié)果為大于內(nèi)存空閑的門檻值,則不做提示,并返回到步驟1,繼續(xù)進行下一輪卡頓現(xiàn)象監(jiān)控;
以上步驟一直循環(huán)運行,直到音視頻文件播放退出。
更進一步的方案是:
步驟1中的實時碼率值,單位為比特每秒(bps)。
更進一步的方案是:
步驟2中的實時讀取速率,單位為比特每秒(bps)。
更進一步的方案是:
步驟1中,系統(tǒng)cpu占用率門檻值與內(nèi)存空閑的門檻值的大小根據(jù)系統(tǒng)不同配置靈活設(shè)置,也可以多次監(jiān)測取出合理值進行設(shè)定。
本發(fā)明采用的,比如步驟一中,音視頻文件實時碼率信息提取的方法;步驟二中,獲取播放器讀取文件實時速率的方法;步驟六中,獲取系統(tǒng)cpu占用率的方法;步驟八中,獲取系統(tǒng)內(nèi)存空閑值的方法,均為本領(lǐng)域的常規(guī)方法,在此不再贅述。
通過采用以上技術(shù)方案,本發(fā)明具備以下的有益效果:
在音視頻文件播放過程中,通過實時監(jiān)測播放卡頓現(xiàn)象,并進行實時分析,給出卡頓現(xiàn)象的原因分析與顯性的提示,通過此類顯性的提示信息,開發(fā)人員可以快速獲取到卡頓現(xiàn)象的根本原因,并根據(jù)所提示的方向進行二次分析,避免了多方向分析原因,聚焦根本原因,大大地提升解決音視頻文件播放卡頓現(xiàn)象問題的效率。
附圖說明
附圖1是本發(fā)明的快速定位播放卡頓現(xiàn)象原因的具體實現(xiàn)流程圖。
具體實施方式
以下結(jié)合附圖1的實現(xiàn)流程圖,對本發(fā)明的具體實施方式進行詳細(xì)的說明。本發(fā)明公開了一種快速定位音視頻文件播放卡頓現(xiàn)象原因的方法,其具體實施包括如下步驟:
啟動設(shè)備的視頻播放器,播放保存在本地存儲設(shè)備中的一個視頻文件,該視頻文件的名字為“test.ts”:
步驟一,在“test.ts”文件播放過程中,對“test.ts”文件的實時碼率信息進行實時提取與保存,記錄該值為br,并設(shè)定系統(tǒng)cpu占用率的門檻值與內(nèi)存空閑的門檻值,分別記錄為cps和mfs;
步驟二,在“test.ts”文件播放過程中,實時計算播放器讀取“test.ts”文件的實時讀取速率,記錄為dr;
步驟三,比較步驟一、步驟二中所得的兩個速率值,即br與dr,判斷步驟一的br值是否大于步驟二的dr值,并記錄比較結(jié)果;若br<=dr時,則繼續(xù)回到步驟一,繼續(xù)監(jiān)測播放“test.ts”文件的卡頓現(xiàn)象;若br>dr時,則繼續(xù)執(zhí)行步驟四;
步驟四,實時測試“test.ts”文件存儲設(shè)備的文件讀取性能,并記錄文件讀取的平均速率值,記錄為dr2;
步驟五,比較步驟一的實時碼率信息值br與步驟四的文件讀取速率值dr2,并記錄比較結(jié)果;若br>dr2時,則給出卡頓現(xiàn)象原因的顯性提示,存儲設(shè)備讀取性能不足;若br<=dr2時,則繼續(xù)執(zhí)行下面步驟六;
步驟六,實時獲取系統(tǒng)cpu占用率值,并保存記錄該值,記錄為cp;
步驟七,比較步驟六所記錄的cpu占用率值cp與步驟一所設(shè)定的cpu門檻值cps,并記錄比較結(jié)果;若cp>cps時,則給出顯性的卡頓現(xiàn)象原因提示,系統(tǒng)繁忙所致;若cp<=cps時,則繼續(xù)執(zhí)行下面步驟八;
步驟八,實時獲取系統(tǒng)內(nèi)存空閑值,并記錄該值,記錄為mf;
步驟九,將步驟八的值mf與步驟一中設(shè)定的內(nèi)存門檻值mfs進行比較,并記錄結(jié)果;若mf<mfs時,則給出顯性的卡頓現(xiàn)象原因提示,系統(tǒng)內(nèi)存資源不足;若mf>=mfs,則不做提示,并返回到步驟一,繼續(xù)進行下一輪卡頓現(xiàn)象監(jiān)控。
按照此流程不斷循環(huán),直到視頻文件“test.ts”播放完畢退出。
盡管這里參照本發(fā)明的解釋性實施例對本發(fā)明進行了描述,上述實施例僅為本發(fā)明較佳的實施方式,本發(fā)明的實施方式并不受上述實施例的限制,應(yīng)該理解,本領(lǐng)域技術(shù)人員可以設(shè)計出很多其他的修改和實施方式,這些修改和實施方式將落在
本技術(shù):
公開的原則范圍和精神之內(nèi)。