本發(fā)明涉及視頻播放技術(shù)領(lǐng)域,特別涉及一種智能監(jiān)測(cè)視頻卡頓的方法及裝置。
背景技術(shù):
在現(xiàn)有技術(shù)中,使用軟解碼的解碼方式來解碼視頻對(duì)系統(tǒng)的性能的需求很高。在有限的系統(tǒng)的性能的條件下,很可能導(dǎo)致CPU、GPU和內(nèi)存的負(fù)荷過大,從而導(dǎo)致視頻卡頓。如何妥善的及時(shí)的監(jiān)測(cè)到視頻卡頓,就成為了業(yè)界亟待解決的課題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種智能監(jiān)測(cè)視頻卡頓的方法及裝置,用以通過設(shè)置計(jì)時(shí)器的方式來準(zhǔn)確的即時(shí)的發(fā)現(xiàn)視頻卡頓。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種智能監(jiān)測(cè)視頻卡頓的方法,包括:
在視頻播放器中設(shè)置計(jì)時(shí)器;
當(dāng)所述視頻播放器開始解碼視頻文件時(shí),同時(shí)開啟所述計(jì)時(shí)器;
實(shí)時(shí)監(jiān)控所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻;
根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓,包括:
實(shí)時(shí)判斷所述計(jì)時(shí)時(shí)刻與所述播放進(jìn)度時(shí)刻是否存在時(shí)間差;
當(dāng)存在上述時(shí)間差時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓,包括:
實(shí)時(shí)判斷所述時(shí)間差的數(shù)值是否增大;
當(dāng)所述時(shí)間差的數(shù)值增大時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,還包括:
當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),清零所述時(shí)間差;
當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)所述視頻播放器再次發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),清零所述時(shí)間差,包括:
當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),將所述計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為所述播放進(jìn)度時(shí)刻的數(shù)值。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種智能監(jiān)測(cè)視頻卡頓的裝置,包括:
設(shè)置模塊,用于在視頻播放器中設(shè)置計(jì)時(shí)器;
開啟模塊,用于當(dāng)所述視頻播放器開始解碼視頻文件時(shí),同時(shí)開啟所述計(jì)時(shí)器;
監(jiān)控模塊,用于實(shí)時(shí)監(jiān)控所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻;
判斷模塊,用于根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述判斷模塊,包括:
第一判斷子模塊,用于實(shí)時(shí)判斷所述計(jì)時(shí)時(shí)刻與所述播放進(jìn)度時(shí)刻是否存在時(shí)間差;
第一確認(rèn)子模塊,用于當(dāng)存在上述時(shí)間差時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述判斷模塊,還包括:
第二判斷子模塊,用于實(shí)時(shí)判斷所述時(shí)間差的數(shù)值是否增大;
第二確認(rèn)子模塊,用于當(dāng)所述時(shí)間差的數(shù)值增大時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,還包括:
清零模塊,用于當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),清零所述時(shí)間差;
確認(rèn)模塊,用于當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)所述視頻播放器再次發(fā)生了卡頓。
在一個(gè)實(shí)施例中,所述清零模塊,包括:
設(shè)置子模塊,用于當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),將所述計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為所述播放進(jìn)度時(shí)刻的數(shù)值。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
附圖說明
附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
圖1為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法的流程圖;
圖2為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法的步驟S14的流程圖;
圖3為本發(fā)明另一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法的步驟S14的流程圖;
圖4為本發(fā)明另一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法的流程圖;
圖5為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法的步驟S41的流程圖;
圖6為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置的框圖;
圖7為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置的判斷模塊64的框圖;
圖8為本發(fā)明另一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置的判斷模塊64的框圖;
圖9為本發(fā)明另一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置的框圖;
圖10為本發(fā)明一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置的清零模塊91的框圖。
具體實(shí)施方式
以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
圖1是根據(jù)一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的方法流程圖,如圖1所示,該智能監(jiān)測(cè)視頻卡頓的方法,包括以下步驟S11-S14:
在步驟S11中,在視頻播放器中設(shè)置計(jì)時(shí)器;
在步驟S12中,當(dāng)所述視頻播放器開始解碼視頻文件時(shí),同時(shí)開啟所述計(jì)時(shí)器;
在步驟S13中,實(shí)時(shí)監(jiān)控所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻;
在步驟S14中,根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓。
在一個(gè)實(shí)施例中,在現(xiàn)有技術(shù)中,使用軟解碼的解碼方式來解碼視頻對(duì)系統(tǒng)的性能的需求很高。在有限的系統(tǒng)的性能的條件下,很可能導(dǎo)致CPU、GPU和內(nèi)存的負(fù)荷過大,從而導(dǎo)致視頻卡頓。本實(shí)施例中的技術(shù)方案可妥善的及時(shí)的監(jiān)測(cè)到視頻卡頓,就成為了業(yè)界亟待解決的課題。
詳細(xì)步驟如下,在視頻播放器中設(shè)置計(jì)時(shí)器。
當(dāng)該視頻播放器開始解碼視頻文件時(shí),同時(shí)開啟該計(jì)時(shí)器。
實(shí)時(shí)監(jiān)控該視頻播放器的播放進(jìn)度時(shí)刻和該計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻。
根據(jù)該視頻播放器的播放進(jìn)度時(shí)刻和該計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷該視頻播放器是否發(fā)生了卡頓。進(jìn)一步的,實(shí)時(shí)判斷該計(jì)時(shí)時(shí)刻與該播放進(jìn)度時(shí)刻是否存在時(shí)間差。當(dāng)存在上述時(shí)間差時(shí),確認(rèn)該視頻播放器發(fā)生了卡頓?;蛘邔?shí)時(shí)判斷該時(shí)間差的數(shù)值是否增大,當(dāng)該時(shí)間差的數(shù)值增大時(shí),確認(rèn)該視頻播放器發(fā)生了卡頓。
除此之外,還包括當(dāng)確認(rèn)該視頻播放器發(fā)生了卡頓時(shí),清零該時(shí)間差。進(jìn)一步的,當(dāng)確認(rèn)該視頻播放器發(fā)生了卡頓時(shí),將該計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為該播放進(jìn)度時(shí)刻的數(shù)值。當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)該視頻播放器再次發(fā)生了卡頓。
本實(shí)施例中的技術(shù)方案可通過設(shè)置計(jì)時(shí)器的方式來準(zhǔn)確的即時(shí)的發(fā)現(xiàn)視頻卡頓。
在一個(gè)實(shí)施例中,如圖2所示,步驟S14包括如下步驟S21-S22:
在步驟S21中,實(shí)時(shí)判斷所述計(jì)時(shí)時(shí)刻與所述播放進(jìn)度時(shí)刻是否存在時(shí)間差;
在步驟S22中,當(dāng)存在上述時(shí)間差時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,實(shí)時(shí)判斷該計(jì)時(shí)時(shí)刻與該播放進(jìn)度時(shí)刻是否存在時(shí)間差。當(dāng)存在上述時(shí)間差時(shí),確認(rèn)該視頻播放器發(fā)生了卡頓。例如,該計(jì)時(shí)時(shí)刻為12分20秒,而該播放進(jìn)度時(shí)刻為12分22秒??傻贸鲇?jì)時(shí)時(shí)刻12分20秒與該播放進(jìn)度時(shí)刻12分22秒存在時(shí)間差,故確認(rèn)該視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,如圖3所示,步驟S14還包括如下步驟S31-S32:
在步驟S31中,實(shí)時(shí)判斷所述時(shí)間差的數(shù)值是否增大;
在步驟S32中,當(dāng)所述時(shí)間差的數(shù)值增大時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
在一個(gè)實(shí)施例中,實(shí)時(shí)判斷該時(shí)間差的數(shù)值是否增大。當(dāng)該時(shí)間差的數(shù)值增大時(shí),確認(rèn)該視頻播放器發(fā)生了卡頓。例如,在某一個(gè)時(shí)刻T1,該計(jì)時(shí)時(shí)刻為12分20秒,而該播放進(jìn)度時(shí)刻為12分22秒。在時(shí)刻T1之后的時(shí)刻T2,該計(jì)時(shí)時(shí)刻變?yōu)?2分40秒,該播放進(jìn)度時(shí)刻為22分37秒??傻贸鲈跁r(shí)刻T2,計(jì)時(shí)時(shí)刻22分40秒與該播放進(jìn)度時(shí)刻22分37秒存在時(shí)間差為3秒,即時(shí)間差的數(shù)值增大了,確認(rèn)該視頻播放器在時(shí)刻T2發(fā)生了卡頓。
在一個(gè)實(shí)施例中,如圖4所示,還包括如下步驟S41-S42:
在步驟S41中,當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),清零所述時(shí)間差;
在步驟S42中,當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)所述視頻播放器再次發(fā)生了卡頓。
在一個(gè)實(shí)施例中,當(dāng)確認(rèn)該視頻播放器發(fā)生了卡頓時(shí),清零該時(shí)間差。當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)該視頻播放器再次發(fā)生了卡頓。例如,在某一個(gè)時(shí)刻T1,該計(jì)時(shí)時(shí)刻為12分20秒,而該播放進(jìn)度時(shí)刻為12分22秒。可得出計(jì)時(shí)時(shí)刻12分20秒與該播放進(jìn)度時(shí)刻12分22秒存在時(shí)間差,立即清除該時(shí)間差,將該計(jì)時(shí)時(shí)刻和該播放進(jìn)度時(shí)刻統(tǒng)一為一個(gè)任意的時(shí)間時(shí)刻。在時(shí)刻T1之后的時(shí)刻T3,當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)該視頻播放器再次發(fā)生了卡頓。
在一個(gè)實(shí)施例中,如圖5所示,步驟S41包括如下步驟S51:
在步驟S51中,當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),將所述計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為所述播放進(jìn)度時(shí)刻的數(shù)值。
在一個(gè)實(shí)施例中,當(dāng)確認(rèn)該視頻播放器發(fā)生了卡頓時(shí),清零該時(shí)間差,并將該計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為該播放進(jìn)度時(shí)刻的數(shù)值。當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)該視頻播放器再次發(fā)生了卡頓。例如,在某一個(gè)時(shí)刻T1,該計(jì)時(shí)時(shí)刻為12分20秒,而該播放進(jìn)度時(shí)刻為12分22秒??傻贸鲇?jì)時(shí)時(shí)刻12分20秒與該播放進(jìn)度時(shí)刻12分22秒存在時(shí)間差,立即清除該時(shí)間差,在較佳的實(shí)施例中,將該該播放進(jìn)度時(shí)刻12分20秒改為該計(jì)時(shí)時(shí)刻12分22秒。在時(shí)刻T1之后的時(shí)刻T3,當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)該視頻播放器再次發(fā)生了卡頓。
在一個(gè)實(shí)施例中,圖6是根據(jù)一示例性實(shí)施例示出的一種智能監(jiān)測(cè)視頻卡頓的裝置框圖。如圖6示,該裝置包括設(shè)置模塊61、開啟模塊62、監(jiān)控模塊63和判斷模塊64。
該設(shè)置模塊61,用于在視頻播放器中設(shè)置計(jì)時(shí)器;
該開啟模塊62,用于當(dāng)所述視頻播放器開始解碼視頻文件時(shí),同時(shí)開啟所述計(jì)時(shí)器;
該監(jiān)控模塊63,用于實(shí)時(shí)監(jiān)控所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻;
該判斷模塊64,用于根據(jù)所述視頻播放器的播放進(jìn)度時(shí)刻和所述計(jì)時(shí)器中的計(jì)時(shí)時(shí)刻,判斷所述視頻播放器是否發(fā)生了卡頓。
如圖7所示,該判斷模塊64包括第一判斷子模塊71和第一確認(rèn)子模塊72。
該第一判斷子模塊71,用于實(shí)時(shí)判斷所述計(jì)時(shí)時(shí)刻與所述播放進(jìn)度時(shí)刻是否存在時(shí)間差;
該第一確認(rèn)子模塊72,用于當(dāng)存在上述時(shí)間差時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
如圖8所示,該判斷模塊64還包括第二判斷子模塊81和第二確認(rèn)子模塊82。
該第二判斷子模塊81,用于實(shí)時(shí)判斷所述時(shí)間差的數(shù)值是否增大;
該第二確認(rèn)子模塊82,用于當(dāng)所述時(shí)間差的數(shù)值增大時(shí),確認(rèn)所述視頻播放器發(fā)生了卡頓。
如圖9所示,還包括清零模塊91和確認(rèn)模塊92。
該清零模塊91,用于當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),清零所述時(shí)間差;
該確認(rèn)模塊92,用于當(dāng)再次判斷出存在時(shí)間差時(shí),確認(rèn)所述視頻播放器再次發(fā)生了卡頓。
如圖10所示,該清零模塊91還包括設(shè)置子模塊101。
該設(shè)置子模塊101,用于當(dāng)確認(rèn)所述視頻播放器發(fā)生了卡頓時(shí),將所述計(jì)時(shí)時(shí)刻的數(shù)值設(shè)置為所述播放進(jìn)度時(shí)刻的數(shù)值。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。