本發(fā)明涉及視頻應(yīng)用技術(shù),具體而言,涉及一種視頻應(yīng)用測試方法及裝置。
背景技術(shù):
隨著視頻直播行業(yè)的興起、寬帶的提速,用戶間的溝通交互,從文字語音年代,跨越到視頻互動時(shí)代,視頻直播行業(yè)正風(fēng)生水起。只有在此新興領(lǐng)域中把握住技術(shù)性能優(yōu)勢,才能在本行業(yè)中有所突破。
直播視頻的打開和刷新速度,作為視頻性能的指標(biāo)之一,直接影響用戶的體驗(yàn)和耐性。因此,有必要對直播視頻的打開速度進(jìn)行測試,以便后續(xù)改進(jìn)。然而,當(dāng)今檢測視頻打開速度的方法,通常是從應(yīng)用實(shí)現(xiàn)的角度進(jìn)行計(jì)算。對于應(yīng)用實(shí)現(xiàn)的角度來說,比如直播app應(yīng)用的打開視頻基本流程為:點(diǎn)擊進(jìn)入直播間->直播間界面加載->加載播放器->播放器獲取視頻地址->打開視頻數(shù)據(jù)流->播放視頻。然后程序可以在每一個(gè)步驟中埋點(diǎn)計(jì)算各步驟間的時(shí)間。
但這僅僅是應(yīng)用實(shí)現(xiàn)角度的計(jì)算,與用戶的實(shí)際體驗(yàn)有一定偏差。如用戶的操作在上述過程中卡了,或其他軟件窗口遮擋了播放器,用戶實(shí)際依然是屬于沒能正常打開視頻的情況。而應(yīng)用實(shí)現(xiàn)角度計(jì)算不會考慮上述情況,所以,對于上述情況,通過應(yīng)用實(shí)現(xiàn)角度計(jì)算的時(shí)間就會有偏差。同時(shí),這種方法也需要了解應(yīng)用的具體實(shí)現(xiàn)方式或者需要專門的應(yīng)用開發(fā)者才能對此進(jìn)行計(jì)算。顯然這種方法具有局限性,無法滿足便捷、準(zhǔn)確地測試視頻打開的速度的需求。
針對上述問題,目前尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了視頻應(yīng)用測試方法及裝置,以至少解決無法便捷準(zhǔn)確地測試視頻打開的速度的技術(shù)問題。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種視頻應(yīng)用測試方法,包括:獲取視頻錄像,其中,視頻錄像中錄制了終端屏幕中視頻應(yīng)用打開的過程;獲取視頻錄像中的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀;獲取起始幀和截止幀之間的時(shí)間間隔,其中,時(shí)間間隔用于指示在視頻應(yīng)用中打開視頻過程所需要的時(shí)間。
進(jìn)一步地,獲取視頻錄像中的起始幀和截止幀包括:計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度;將相似度與閾值進(jìn)行比較得到比較結(jié)果;根據(jù)比較結(jié)果分別確定起始幀和截止幀。
進(jìn)一步地,根據(jù)比較結(jié)果分別確定起始幀和截止幀包括:在當(dāng)前幀與前一幀的相似度小于第一閾值時(shí),確定當(dāng)前幀是否為起始幀;若不是起始幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出起始幀為止;在判斷出起始幀之后,在后續(xù)的相似度小于第二閾值的相鄰幀中確定當(dāng)前幀是否為截止幀;若不是截止幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出截止幀為止,其中,第一閾值與第二閾值相同或不同。
進(jìn)一步地,確定當(dāng)前幀是否為起始幀或截止幀包括:在當(dāng)前幀與前一幀的相似度小于第一閾值或第二閾值時(shí),暫停播放視頻錄像;顯示提示信息,其中,提示信息用于提示用戶確認(rèn)當(dāng)前幀是否為起始幀或者截止幀;接收用戶輸入的確認(rèn)信息;根據(jù)用戶的輸入確認(rèn)當(dāng)前幀是否為起始幀或截止幀。
進(jìn)一步地,計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度包括:對相鄰兩幀圖像進(jìn)行RGB的通道分離,分離出R、G、B三個(gè)通道;分別針對相鄰兩幀圖像中的每幀圖像分離出的R、G、B通道,計(jì)算出各自的灰度直方圖;比較相鄰兩幀圖像各自的灰度直方圖的重合度,根據(jù)比較結(jié)果,分別計(jì)算R、G、B通道的相似度;根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度。
進(jìn)一步地,根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度包括:將R、G、B通道的相似度取平均值或者加權(quán)取平均值,作為相鄰兩幀圖像的相似度。
進(jìn)一步地,分別計(jì)算R、G、B通道的相似度包括:初始化R、G、B通道的相似度權(quán)值;對于R、G、B通道中的每一個(gè),分別對相鄰兩幀圖像的灰度直方圖橫坐標(biāo)的256個(gè)灰度級逐個(gè)進(jìn)行比較:若當(dāng)次比較的灰度級相等,則相似度權(quán)值加1;若當(dāng)次比較的灰度級不相等,則按以下公式計(jì)算各個(gè)通道的相似度權(quán)值:對于相鄰兩幀的R、G、B通道之一的第i個(gè)灰度級,相似度權(quán)值=相似度權(quán)值+(1-abs(當(dāng)前幀的第i個(gè)灰度級-上一幀的第i個(gè)灰度級)/max(當(dāng)前幀的第i個(gè)灰度級,上一幀的第i個(gè)灰度級));相鄰兩幀的R、G、B通道之一的相似度值=該通道的相似度權(quán)值總和/256,此相似度值即為相鄰兩幀的該通道的灰度直方圖的重合度。
進(jìn)一步地,獲取起始幀和截止幀之間的時(shí)間間隔包括:在獲取視頻錄像中的起始幀和截止幀后,分別記錄起始幀和截止幀的幀步數(shù);根據(jù)如下公式計(jì)算起始幀與截止幀之間的時(shí)間間隔:時(shí)間間隔=(截止幀的幀步數(shù)-起始幀的幀步數(shù))/視頻幀率,其中,視頻幀率為視頻錄像的視頻幀率。
根據(jù)本發(fā)明的另一個(gè)方面,提供了一種視頻應(yīng)用測試裝置,包括:視頻錄像獲取單元,被配置為獲取視頻錄像,其中,視頻錄像中錄制了終端屏幕中視頻應(yīng)用打開的過程;起始幀和截止幀獲取單元,被配置為獲取視頻錄像中的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀;時(shí)間間隔獲取單元,被配置為獲取起始幀和截止幀之間的時(shí)間間隔,其中,時(shí)間間隔被配置為指示在視頻應(yīng)用中打開視頻過程所需要的時(shí)間。
進(jìn)一步地,起始幀和截止幀獲取單元進(jìn)一步包括計(jì)算單元,計(jì)算單元被配置為:計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度;將相似度與閾值進(jìn)行比較得到比較結(jié)果;根據(jù)比較結(jié)果分別確定起始幀和截止幀。
進(jìn)一步地,計(jì)算單元根據(jù)比較結(jié)果確定起始幀和截止幀包括:在當(dāng)前幀與前一幀的相似度小于第一閾值時(shí),確定當(dāng)前幀是否為起始幀;若不是起始幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出起始幀為止;在判斷出起始幀之后,在后續(xù)的相似度小于第二閾值的相鄰幀中確定當(dāng)前幀是否為截止幀;若不是截止幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出截止幀為止,其中,第一閾值與第二閾值相同或不同。
進(jìn)一步地,計(jì)算單元確定當(dāng)前幀是否為起始幀或截止幀包括:在當(dāng)前幀與前一幀的相似度小于第一閾值或第二閾值時(shí),暫停播放視頻錄像;顯示提示信息,其中,提示信息用于提示用戶確認(rèn)當(dāng)前幀是否為起始幀或者截止幀;接收用戶輸入的確認(rèn)信息;以及根據(jù)用戶的輸入確認(rèn)當(dāng)前幀是否為起始幀或截止幀。
進(jìn)一步地,計(jì)算單元計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度包括:對相鄰兩幀圖像進(jìn)行RGB的通道分離,分離出R、G、B三個(gè)通道;分別針對相鄰兩幀圖像中的每幀圖像分離出的R、G、B通道,計(jì)算出各自的灰度直方圖;比較相鄰兩幀圖像各自的灰度直方圖的重合度,根據(jù)比較結(jié)果,分別計(jì)算R、G、B通道的相似度;以及根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度。
進(jìn)一步地,計(jì)算單元根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度包括:將R、G、B通道的相似度取平均值或者加權(quán)取平均值,作為相鄰兩幀圖像的相似度。
進(jìn)一步地,計(jì)算單元分別計(jì)算R、G、B通道的相似度包括:初始化R、G、B通道的相似度權(quán)值;對于R、G、B通道中的每一個(gè),分別對相鄰兩幀圖像的灰度直方圖橫坐標(biāo)的256個(gè)灰度級逐個(gè)進(jìn)行比較:若當(dāng)次比較的灰度級相等,則相似度權(quán)值加1;若當(dāng)次比較的灰度級不相等,則按以下公式計(jì)算各個(gè)通道的相似度權(quán)值:對于相鄰兩幀的R、G、B通道之一的第i個(gè)灰度級,相似度權(quán)值=相似度權(quán)值+(1-abs(當(dāng)前幀的第i個(gè)灰度級-上一幀的第i個(gè)灰度級)/max(當(dāng)前幀的第i個(gè)灰度級,上一幀的第i個(gè)灰度級));相鄰兩幀的R、G、B通道之一的相似度值=該通道的相似度權(quán)值總和/256,此相似度值即為相鄰兩幀的該通道的灰度直方圖的重合度。
進(jìn)一步地,時(shí)間間隔獲取單元獲取起始幀和截止幀之間的時(shí)間間隔包括:在獲取視頻錄像中的起始幀和截止幀后,分別記錄起始幀和截止幀的幀步數(shù);以及計(jì)算單元根據(jù)如下公式計(jì)算起始幀與截止幀之間的時(shí)間間隔:時(shí)間間隔=(截止幀的幀步數(shù)-起始幀的幀步數(shù))/視頻幀率,其中,視頻幀率為視頻錄像的視頻幀率。
相對于現(xiàn)有技術(shù)中的技術(shù)方案,解決了無法便捷準(zhǔn)確地測試視頻打開的速度的技術(shù)問題。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的視頻應(yīng)用測試方法流程圖;
圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的視頻應(yīng)用測試裝置示意圖;
圖3為本發(fā)明另一個(gè)實(shí)施例的視頻應(yīng)用測試裝置示意圖;
圖4為本發(fā)明另一個(gè)實(shí)施例的錄制視頻應(yīng)用打開過程的流程示意圖;
圖5為本發(fā)明另一個(gè)實(shí)施例的初始化單元的操作流程示意圖;
圖6為本發(fā)明實(shí)施例的相似度計(jì)算單元操作流程示意圖;以及
圖7為本發(fā)明實(shí)施例的記錄、刪除、保存單元操作流程示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
本發(fā)明實(shí)施例提供一種視頻應(yīng)用測試方法及裝置,能夠精確測試出用戶使用應(yīng)用時(shí),實(shí)際打開視頻的速度和體驗(yàn),有效降低誤差影響。為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方式作詳細(xì)地描述。
需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
本發(fā)明的實(shí)施例提供了一種視頻應(yīng)用測試方法。
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的視頻應(yīng)用測試方法流程圖,如題1所示。
該視頻應(yīng)用測試方法包括:
步驟S102,獲取視頻錄像,其中,視頻錄像中錄制了終端屏幕中視頻應(yīng)用打開的過程;
步驟S104,獲取視頻錄像中的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀;
步驟S106,獲取起始幀和截止幀之間的時(shí)間間隔,其中,時(shí)間間隔用于指示在視頻應(yīng)用中打開視頻過程所需要的時(shí)間。
本發(fā)明該實(shí)施例中,通過獲取視頻應(yīng)用中執(zhí)行打開視頻播放操作的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀,即可獲取打開視頻應(yīng)用的時(shí)間,因?yàn)槠鹗紟c截止幀對應(yīng)著視頻應(yīng)用從開始打開至成功打開的過程,所以,通過此方式,無需如現(xiàn)有技術(shù)中通過在每一個(gè)步驟中埋點(diǎn)計(jì)算各步驟的時(shí)間,而可以簡便地計(jì)算視頻應(yīng)用的打開時(shí)間,由此提高了計(jì)算的效率。
上述實(shí)施例中描述了視頻應(yīng)用測試方法,該方法中,獲取視頻錄像中的起始幀和截止幀可以有多種方式,在一個(gè)可選實(shí)施例中,可以采用如下方式:計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度;將相似度與閾值進(jìn)行比較得到比較結(jié)果;根據(jù)比較結(jié)果分別確定起始幀和截止幀。該實(shí)施例中,通過計(jì)算相鄰兩幀圖像相似度的方式來確定起始幀與截止幀,能夠加快確定的效率及準(zhǔn)確性。
此外,根據(jù)相似度的比較結(jié)果分別確定起始幀和截止幀也可以有多種方式,在一個(gè)可選實(shí)施例中,可采用以下方式:在當(dāng)前幀與前一幀的相似度小于第一閾值時(shí),確定當(dāng)前幀是否為起始幀;若不是起始幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出起始幀為止;在判斷出起始幀之后,在后續(xù)的相似度小于第二閾值的相鄰幀中確定當(dāng)前幀是否為截止幀;若不是截止幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出截止幀為止,其中,第一閾值與第二閾值相同或不同。該實(shí)施例中,通過計(jì)算的相似度值與預(yù)設(shè)的閾值進(jìn)行比較,實(shí)現(xiàn)了對起始幀與截止幀的準(zhǔn)確判定。
此外,確定當(dāng)前幀是否為起始幀可以有多種方式,例如,通過人工觀察的方式、通過預(yù)定的標(biāo)準(zhǔn)自動確認(rèn)的方式,等等。在本發(fā)明一個(gè)可選實(shí)施例中,可采用如下方式:在當(dāng)前幀與前一幀的相似度小于第一閾值或第二閾值時(shí),暫停播放視頻錄像;顯示提示信息,其中,提示信息用于提示用戶確認(rèn)當(dāng)前幀是否為起始幀或者截止幀;接收用戶輸入的確認(rèn)信息;根據(jù)用戶的輸入確認(rèn)當(dāng)前幀是否為起始幀或截止幀。該實(shí)施例中,在計(jì)算的相似度限于預(yù)設(shè)的閾值時(shí),暫停播放視頻錄像,顯示提示信息,使測試者能夠及時(shí)進(jìn)行判斷,而且通過暫停播放視頻錄像,使得測試者更容易進(jìn)行判斷。
此外,計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度也可以有多種方式,在一個(gè)可選實(shí)施例中,采用以下方式:對相鄰兩幀圖像進(jìn)行RGB的通道分離,分離出R、G、B三個(gè)通道;分別針對相鄰兩幀圖像中的每幀圖像分離出的R、G、B通道,計(jì)算出各自的灰度直方圖;比較相鄰兩幀圖像各自的灰度直方圖的重合度,根據(jù)比較結(jié)果,分別計(jì)算R、G、B通道的相似度;根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度。該實(shí)施例中,描述了相鄰兩幀圖像之間的相似度的一種具體計(jì)算方法,通過該方法,能夠準(zhǔn)確獲取相鄰兩幀圖像之間的相似度,為后續(xù)比較奠定基礎(chǔ)。
此外,根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度可以有多種方式。在一個(gè)可選實(shí)施例中,采用如下方式:將R、G、B通道的相似度取平均值或者加權(quán)取平均值,作為相鄰兩幀圖像的相似度。該實(shí)施例中,描述了R、G、B通道相似度的取值方式,可根據(jù)精度或效率的要求選擇一種方式。
此外,計(jì)算R、G、B通道的相似度可以有多種方式。在一個(gè)可選實(shí)施例中,采用如下方式進(jìn)行計(jì)算:初始化R、G、B通道的相似度權(quán)值;對于R、G、B通道中的每一個(gè),分別對相鄰兩幀圖像的灰度直方圖橫坐標(biāo)的256個(gè)灰度級逐個(gè)進(jìn)行比較:若當(dāng)次比較的灰度級相等,則相似度權(quán)值加1;若當(dāng)次比較的灰度級不相等,則按以下公式計(jì)算各個(gè)通道的相似度權(quán)值:對于相鄰兩幀的R、G、B通道之一的第i個(gè)灰度級,相似度權(quán)值=相似度權(quán)值+(1-abs(當(dāng)前幀的第i個(gè)灰度級-上一幀的第i個(gè)灰度級)/max(當(dāng)前幀的第i個(gè)灰度級,上一幀的第i個(gè)灰度級));相鄰兩幀的R、G、B通道之一的相似度值=該通道的相似度權(quán)值總和/256,此相似度值即為相鄰兩幀的該通道的灰度直方圖的重合度。該實(shí)施例中,描述了灰度直方圖的具體計(jì)算方式,通過該方式能夠準(zhǔn)確高效地計(jì)算出相鄰兩幀圖像的灰度直方圖。
此外,獲取起始幀和截止幀之間的時(shí)間間隔可以有多種方式。例如,直接通過計(jì)時(shí)的方式確定起始幀和截止幀對應(yīng)的時(shí)間、通過其他方式間接確定起始幀和截止幀對應(yīng)的時(shí)間。在一個(gè)可選實(shí)施例中,可以采用以下方式:在獲取視頻錄像中的起始幀和截止幀后,分別記錄起始幀和截止幀的幀步數(shù);根據(jù)如下公式計(jì)算起始幀與截止幀之間的時(shí)間間隔:時(shí)間間隔=(截止幀的幀步數(shù)-起始幀的幀步數(shù))/視頻幀率,其中,視頻幀率為視頻錄像的視頻幀率。該實(shí)施例中,通過記錄起始幀和截止幀的幀步數(shù),即可簡便地計(jì)算出起始幀與截止幀之間的時(shí)間間隔。
本發(fā)明的實(shí)施例提供了一種視頻應(yīng)用測試裝置。
圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的視頻應(yīng)用測試裝置示意圖。如圖2所示:
該視頻應(yīng)用測試裝置包括:
視頻錄像獲取單元202,被配置為獲取視頻錄像,其中,視頻錄像中錄制了終端屏幕中視頻應(yīng)用打開的過程;
起始幀和截止幀獲取單元204,被配置為獲取視頻錄像中的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀;
時(shí)間間隔獲取單元206,被配置為獲取起始幀和截止幀之間的時(shí)間間隔,其中,時(shí)間間隔被配置為指示在視頻應(yīng)用中打開視頻過程所需要的時(shí)間。本發(fā)明中,通過視頻應(yīng)用測試裝置獲取視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀和開始播放視頻的第一個(gè)幀,即可獲取打開視頻應(yīng)用的時(shí)間,而無需如現(xiàn)有技術(shù)中通過在每一個(gè)步驟中埋點(diǎn)計(jì)算各步驟的時(shí)間。
本發(fā)明該實(shí)施例中,通過起始幀和截止幀獲取單元獲取視頻應(yīng)用中執(zhí)行打開視頻播放操作的起始幀和截止幀,其中,起始幀為在視頻應(yīng)用中執(zhí)行打開視頻播放操作的第一個(gè)幀,截止幀為終端屏幕顯示的視頻應(yīng)用中開始播放視頻的第一個(gè)幀,即可獲取打開視頻應(yīng)用的時(shí)間,因?yàn)槠鹗紟c截止幀對應(yīng)著視頻應(yīng)用從開始打開至成功打開的過程,所以,通過此方式,無需如現(xiàn)有技術(shù)中通過在每一個(gè)步驟中埋點(diǎn)計(jì)算各步驟的時(shí)間,而可以簡便地計(jì)算視頻應(yīng)用的打開時(shí)間,由此提高了計(jì)算的效率。
此外,起始幀和截止幀獲取單元204獲取視頻錄像中的起始幀和截止幀可以有多種方式,起始幀和截止幀獲取單元204還可以包括多個(gè)單元,由多個(gè)單元中的一個(gè)或多個(gè)實(shí)現(xiàn)獲取起始幀和截止幀的功能。在本發(fā)明一個(gè)可選實(shí)施例中,起始幀和截止幀獲取單元進(jìn)一步包括計(jì)算單元,計(jì)算單元被配置為:計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度;將相似度與閾值進(jìn)行比較得到比較結(jié)果;根據(jù)比較結(jié)果分別確定起始幀和截止幀。該實(shí)施例中,該實(shí)施例中,通過計(jì)算相鄰兩幀圖像相似度的方式來確定起始幀與截止幀,能夠加快確定的效率及準(zhǔn)確性。
此外,計(jì)算單元根據(jù)比較結(jié)果確定起始幀和截止幀可采用多種方式。在一個(gè)可選實(shí)施例中,采用如下方式:在當(dāng)前幀與前一幀的相似度小于第一閾值時(shí),確定當(dāng)前幀是否為起始幀;若不是起始幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出起始幀為止;在判斷出起始幀之后,在后續(xù)的相似度小于第二閾值的相鄰幀中確定當(dāng)前幀是否為截止幀;若不是截止幀,則繼續(xù)后續(xù)相鄰幀的判斷,直至確定出截止幀為止,其中,第一閾值與第二閾值相同或不同。該實(shí)施例中,該實(shí)施例中,通過計(jì)算的相似度值與預(yù)設(shè)的閾值進(jìn)行比較,實(shí)現(xiàn)了對起始幀與截止幀的準(zhǔn)確判定。
此外,計(jì)算單元確定當(dāng)前幀是否為起始幀或截止幀可以采用多種方式,在一個(gè)可選實(shí)施例中,可采用如下方式:在當(dāng)前幀與前一幀的相似度小于第一閾值或第二閾值時(shí),暫停播放視頻錄像;顯示提示信息,其中,提示信息用于提示用戶確認(rèn)當(dāng)前幀是否為起始幀或者截止幀;接收用戶輸入的確認(rèn)信息;以及根據(jù)用戶的輸入確認(rèn)當(dāng)前幀是否為起始幀或截止幀。該實(shí)施例中,該實(shí)施例中,在計(jì)算的相似度限于預(yù)設(shè)的閾值時(shí),暫停播放視頻錄像,顯示提示信息,使測試者能夠及時(shí)進(jìn)行判斷,而且通過暫停播放視頻錄像,使得測試者更容易進(jìn)行判斷。
此外,計(jì)算單元計(jì)算視頻錄像中相鄰兩幀圖像之間的相似度可以采用多種方式,在一個(gè)可選實(shí)施例中,可以采用如下方式:對相鄰兩幀圖像進(jìn)行RGB的通道分離,分離出R、G、B三個(gè)通道;分別針對相鄰兩幀圖像中的每幀圖像分離出的R、G、B通道,計(jì)算出各自的灰度直方圖;比較相鄰兩幀圖像各自的灰度直方圖的重合度,根據(jù)比較結(jié)果,分別計(jì)算R、G、B通道的相似度;以及根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度。該實(shí)施例中,該實(shí)施例中,描述了相鄰兩幀圖像之間的相似度的一種具體計(jì)算方法,通過該方法,能夠準(zhǔn)確獲取相鄰兩幀圖像之間的相似度,為后續(xù)比較奠定基礎(chǔ)。
此外,計(jì)算單元根據(jù)R、G、B通道的相似度獲取相鄰兩幀圖像的相似度可以有多種方式,在一個(gè)可選實(shí)施例中,可以采用如下方式:將R、G、B通道的相似度取平均值或者加權(quán)取平均值,作為相鄰兩幀圖像的相似度。該實(shí)施例中,該實(shí)施例中,描述了R、G、B通道相似度的取值方式,可根據(jù)精度或效率的要求選擇一種方式。
此外,計(jì)算單元分別計(jì)算R、G、B通道的相似度可以有多種方式。在一個(gè)可選實(shí)施例中,可以采用如下方式:初始化R、G、B通道的相似度權(quán)值;對于R、G、B通道中的每一個(gè),分別對相鄰兩幀圖像的灰度直方圖橫坐標(biāo)的256個(gè)灰度級逐個(gè)進(jìn)行比較:若當(dāng)次比較的灰度級相等,則相似度權(quán)值加1;若當(dāng)次比較的灰度級不相等,則按以下公式計(jì)算各個(gè)通道的相似度權(quán)值:對于相鄰兩幀的R、G、B通道之一的第i個(gè)灰度級,相似度權(quán)值=相似度權(quán)值+(1-abs(當(dāng)前幀的第i個(gè)灰度級-上一幀的第i個(gè)灰度級)/max(當(dāng)前幀的第i個(gè)灰度級,上一幀的第i個(gè)灰度級));相鄰兩幀的R、G、B通道之一的相似度值=該通道的相似度權(quán)值總和/256,此相似度值即為相鄰兩幀的該通道的灰度直方圖的重合度。該實(shí)施例中,該實(shí)施例中,描述了灰度直方圖的具體計(jì)算方式,通過該方式能夠準(zhǔn)確高效地計(jì)算出相鄰兩幀圖像的灰度直方圖。
此外,時(shí)間間隔獲取單元獲取起始幀和截止幀之間的時(shí)間間隔可以有多種方式。在一個(gè)可選實(shí)施例中,采用如下方式:在獲取視頻錄像中的起始幀和截止幀后,分別記錄起始幀和截止幀的幀步數(shù);以及計(jì)算單元根據(jù)如下公式計(jì)算起始幀與截止幀之間的時(shí)間間隔:時(shí)間間隔=(截止幀的幀步數(shù)-起始幀的幀步數(shù))/視頻幀率,其中,視頻幀率為視頻錄像的視頻幀率。該實(shí)施例中,通過記錄起始幀和截止幀的幀步數(shù),即可簡便地計(jì)算出起始幀與截止幀之間的時(shí)間間隔。
圖3為本發(fā)明另一個(gè)實(shí)施例的視頻應(yīng)用測試裝置示意圖;如圖3所示,具體地,該裝置包括:
錄制單元302,本發(fā)明實(shí)施例具體的視頻應(yīng)用為網(wǎng)絡(luò)視頻直播,此單元的作用為通過模擬用戶啟動打開視頻觀看的操作,進(jìn)行行為錄制,并生成錄像,為后續(xù)的用戶行為的視頻錄像分析作準(zhǔn)備。此單元的具體運(yùn)作流程,將在圖4實(shí)施例的流程示意圖中進(jìn)行更詳細(xì)描述。
初始化單元304,此單元的作用為,對為后續(xù)單元播放和計(jì)算前,對各設(shè)置進(jìn)行初始化工作。此單元的具體描述,將在圖5實(shí)施例的流程示意圖中進(jìn)行更詳細(xì)的描述。
播放單元306,為本發(fā)明該實(shí)施例的核心單元。除了自身單元外,還包括相似度計(jì)算單元和記錄、刪除、保存處理等單元。其作用為,對模擬用戶行為的視頻錄像進(jìn)行播放、分析、計(jì)算和記錄保存等工作。播放單元306包括相似度計(jì)算單元306-2和處理單元306-4。
其中,相似度計(jì)算單元306-2為本發(fā)明該實(shí)施例的核心算法單元。作用為,對視頻播放的每一幀圖像進(jìn)行圖像相似度計(jì)算,并把結(jié)果輸出給后續(xù)單元進(jìn)行需求處理和計(jì)算。此單元的具體描述,將在圖6實(shí)施例的流程示意圖中進(jìn)行更詳細(xì)的描述。處理單元306-4包括:記錄單元、刪除單元、保存單元。此處理單元作用為,根據(jù)相似度計(jì)算的結(jié)果和當(dāng)前播放的視頻幀,配合實(shí)際用戶啟動打開視頻直播的行為,對實(shí)際所需進(jìn)行幀節(jié)點(diǎn)記錄、刪除和計(jì)算保存等工作。此單元的具體描述,將在圖7實(shí)施例的流程示意圖中進(jìn)行更詳細(xì)的描述。
輸出顯示單元308,此單元的作用為,把最終記錄、計(jì)算和保存的幀節(jié)點(diǎn)和測試結(jié)果,以圖表的形式顯示輸出到顯示單元中,方便測試人員確認(rèn)測試結(jié)果,測試結(jié)果包括,實(shí)際記錄的幀節(jié)點(diǎn)的幀步數(shù)、幀節(jié)點(diǎn)的圖像相似度值、視頻錄像的全部圖像幀的相似度值的直方圖和記錄幀節(jié)點(diǎn)間的時(shí)間間隔。
該實(shí)施例僅僅是本發(fā)明的一個(gè)優(yōu)選實(shí)施例而已,顯然本發(fā)明實(shí)施例的測試裝置不限于這種實(shí)施方式。例如,相似度計(jì)算單元、記錄單元、刪除單元、保存單元中的一個(gè)或多個(gè)可以獨(dú)立于播放單元?;蛘?,本發(fā)明中也可以不采用播放單元,而是直接對獲取的圖像進(jìn)行識別處理,從中獲取起始幀和截止幀。
圖4為本發(fā)明另一個(gè)實(shí)施例的錄制單元錄制視頻應(yīng)用打開過程的流程示意圖;此錄制單元的具體工作流程如下:
S402:設(shè)置錄制的對象,若用戶的應(yīng)用為PC端視頻直播應(yīng)用,錄制對象可以設(shè)置為PC桌面;若用戶的應(yīng)用為手機(jī)端視頻直播應(yīng)用,錄制對象可設(shè)置為手機(jī)端屏幕。
S404:通過S402步驟,錄制對象設(shè)置完畢后,便可以啟動錄制,對后續(xù)用戶行為的操作進(jìn)行全程視頻記錄。錄制單元錄制時(shí),會一幀一幀地截取用戶操作的屏幕(這可通過現(xiàn)場錄制來實(shí)現(xiàn),或者也可以通過網(wǎng)絡(luò)對用戶的屏幕進(jìn)行截屏來實(shí)現(xiàn)),把用戶打開視頻的行為過程記錄下來,并生成視頻錄像文件。
S406:開啟視頻直播應(yīng)用。
S408:打開觀看視頻直播應(yīng)用,具體可能包括選擇要觀看的直播主播、點(diǎn)擊進(jìn)入主播所在房間頻道、等待直播應(yīng)用加載房間頻道UI、視頻播放器、最終正常打開視頻流。
步驟S406和S408可看做是模擬用戶的開啟、打開視頻直播的操作。
S410:完成上述行為操作后,則可以停止錄制。
S412:把生成的視頻錄像輸出到后續(xù)處理單元進(jìn)行處理。
圖5為本發(fā)明另一個(gè)實(shí)施例的初始化單元的操作流程示意圖;此單元的具體工作流程如下:
S502:該步驟為初始化工作之一,即,獲取上述的錄像文件,為后續(xù)單元作輸入準(zhǔn)備。
S504:從錄像文件中,獲取其視頻幀率,并初始化。
S506:初始化相似度閾值,其作用為,后續(xù)播放單元根據(jù)此數(shù)值控制播放時(shí)的暫停節(jié)奏。此數(shù)值的具體用途會在圖6示意圖中,作更具體的描述。
S508:初始化記錄的幀節(jié)點(diǎn)數(shù),其作用為,為后續(xù)記錄、保存單元提供記錄幀節(jié)點(diǎn)數(shù)量的參考依據(jù)。
圖6為本發(fā)明實(shí)施例的相似度計(jì)算單元操作流程示意圖;此單元的具體工作流程如下:
S602:視頻播放單元播放過程中,相似度計(jì)算單元會每次讀取播放的相鄰每一幀視頻,為后續(xù)相似度計(jì)算作準(zhǔn)備。
S604:對讀取進(jìn)來的相鄰2幀圖像進(jìn)行RGB的通道分離,分離出R、G、B 3個(gè)通道,輸出給后續(xù)的圖像相似度算法進(jìn)行計(jì)算。
S606:R通道的圖像相似度計(jì)算,首先分別對2幀圖像分離出的R通道,計(jì)算出各自的灰度直方圖。進(jìn)一步地,初始化圖像相似度權(quán)值。更進(jìn)一步地,比較相鄰2幀灰度直方圖的重合度,(這里可以描述更深入,包括加入計(jì)算公式)。根據(jù)2幀灰度直方圖的重合情況,計(jì)算出加權(quán)值。此加權(quán)值,即為R通道的相似度值。
其中,步驟S606中具體包括以下內(nèi)容:首先,初始化圖像相似度權(quán)值為0。進(jìn)一步地,比較相鄰2幀R通道的灰度直方圖的重合度。具體地,分別對相鄰2幀灰度直方圖橫坐標(biāo)的逐個(gè)灰度級進(jìn)行比較,R通道有256個(gè)灰度級,因此需比較256次;若當(dāng)次比較的灰度級相等,相似度權(quán)值加1;否則,相似度權(quán)值的計(jì)算,按以下公式進(jìn)行:假設(shè)當(dāng)前正在比較前后2幀的R通道的第i個(gè)灰度級,則相似度權(quán)值=相似度權(quán)值+(1-abs(當(dāng)前幀的第i個(gè)灰度級-上一幀的第i個(gè)灰度級)/max(當(dāng)前幀的第i個(gè)灰度級,上一幀的第i個(gè)灰度級))。最終相鄰2幀的R通道的相似度值=相似度權(quán)值總和/256,此相似度值即為相鄰2幀的R通道的灰度直方圖的重合度,本發(fā)明稱之為R通道的相似度值。
S608:G通道的圖像相似度計(jì)算,其計(jì)算過程與R通道原理一致。
S610:B通道的圖像相似度計(jì)算,其計(jì)算過程與R通道原理一致。
S612:把R、G、B 3個(gè)通道的加權(quán)值取平均值,即為這2幀圖像的相似度值。
圖7為本發(fā)明實(shí)施例的記錄、刪除、保存單元操作流程示意圖。具體的運(yùn)作步驟包括:
S702:播放單元根據(jù)初始化單元中設(shè)置的相似度閾值,判斷是否暫停播放。若相似度計(jì)算單元輸出的當(dāng)前幀與上一幀圖像的相似度值高于相似度閾值時(shí),則跳過,繼續(xù)播放和計(jì)算下一幀相似度;若相似度計(jì)算單元輸出的當(dāng)前幀與上一幀圖像的相似度值低于相似度閾值時(shí),暫停播放,同時(shí)可以發(fā)出提示音,提示測試者進(jìn)行查看。
S704:暫停播放后,測試者觀看當(dāng)前暫停的圖像畫面,判斷是否為需要記錄的幀節(jié)點(diǎn)。若是,則把此幀節(jié)點(diǎn)輸入到記錄單元;否則,把此幀節(jié)點(diǎn)輸入到刪除單元。其中,在判斷是否為起始幀與截止幀時(shí),可采用相同的相似度閾值也可以采用不同的相似度閾值。
其中,在本發(fā)明打開視頻應(yīng)用場景中,需要記錄的幀節(jié)點(diǎn)包括起始幀和截止幀。起始幀,為開始進(jìn)入打開視頻流程的瞬間時(shí)刻;截止幀,為順利打開視頻畫面并開始正式播放的瞬間一刻。起始幀和截止幀之間,可能還有的流程包括,加載視頻播放器、獲取視頻地址、打開視頻流、等待加載視頻畫面等等。不同的直播應(yīng)用實(shí)現(xiàn),上述的流程可能有所差異。而本發(fā)明的測試方法,不限于上述應(yīng)用場景,所需記錄的幀節(jié)點(diǎn)數(shù)目,視不同應(yīng)用場景的需求,可能會有所不同。
S706:記錄單元,保存所需記錄的幀節(jié)點(diǎn)。為后續(xù)保存單元計(jì)算幀間時(shí)間間隔作準(zhǔn)備。
S708:刪除單元,刪除無效幀節(jié)點(diǎn)。
S710:保存單元,根據(jù)初始化單元的錄像幀率,計(jì)算出所記錄的幀節(jié)點(diǎn)的幀間時(shí)間間隔。具體地,計(jì)算公式為:幀間時(shí)間間隔=(記錄的截止幀步數(shù)-記錄的起始幀步數(shù))/視頻幀率。在本發(fā)明實(shí)施例中,此幀間間隔,即為用戶打開視頻直播到可以正常觀看過程中,所需的實(shí)際時(shí)間。
本發(fā)明的測試方法,主要在觀看者端進(jìn)行應(yīng)用測試??梢詰?yīng)用于測試多個(gè)不同的直播app應(yīng)用,無需了解程序?qū)崿F(xiàn),也能檢測出不同直播app的打開視頻速度。測試結(jié)果可以應(yīng)用于多個(gè)不同app直播應(yīng)用的打開視頻速度的性能比較。
上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
在本發(fā)明的上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。本領(lǐng)域技術(shù)人員可以意識到,本發(fā)明中上述實(shí)施例,可以進(jìn)行各種組合。
在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如單元的劃分,可以為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
作為分離部件說明的單元(模塊)可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。