本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種設(shè)置緩存的方法和裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,人們已經(jīng)習(xí)慣通過互聯(lián)網(wǎng)獲取更多的信息。于此同時(shí),數(shù)字視頻技術(shù)和智能終端的廣泛普及使用戶能夠通過智能終端獲取網(wǎng)絡(luò)視頻進(jìn)行觀看。
當(dāng)前,越來越多的用戶通過各種網(wǎng)站在線觀看視頻。針對這種在線的視頻觀看,通常會(huì)在終端的流媒體處理和播放軟件中設(shè)定視頻緩存,對當(dāng)前播放點(diǎn)之后的視頻進(jìn)行預(yù)下載,以便用戶能夠保持流暢觀看。
此外,緩存會(huì)在用戶關(guān)閉終端應(yīng)用時(shí)或者更滯后一定時(shí)間統(tǒng)一刪除,以使當(dāng)前播放點(diǎn)之前的數(shù)據(jù)可以仍緩存在終端供用戶回放。當(dāng)前播放點(diǎn)之后的視頻通常也不會(huì)無限加載,而是會(huì)根據(jù)終端預(yù)設(shè)的數(shù)據(jù)量進(jìn)行下載,一方面保障用戶能夠流暢觀看并支持適當(dāng)快進(jìn),另一方面避免過度緩存增加無謂用戶流量或者增大終端與流量的資源開銷。
在目前常見的緩存設(shè)置方法中,緩存區(qū)的總體大小是固定的,緩存流媒體的獲取方式和填充方式也是固定的。在總體大小固定的緩存區(qū)內(nèi),可以通過前后搜索來進(jìn)行視頻播放。然而,如果后向緩存區(qū)設(shè)置得過小,當(dāng)用戶快進(jìn)搜索的范圍超出緩存范圍時(shí),則需要用戶等待以便重新讀??;如果后向緩存區(qū)設(shè)置得過大,則會(huì)大量占用終端資源,同時(shí)也可能導(dǎo)致預(yù)下載的大量內(nèi)容用戶并不需要,浪費(fèi)流量資源。類似地,如果前向緩存區(qū)設(shè)置得過大,則會(huì)占用終端大量的內(nèi)存資源;如果前向緩存區(qū)設(shè)置得過小(看過即刪),則可能影響用戶回看之前播放的內(nèi)容。
現(xiàn)有的緩存方法中,緩存區(qū)大小固定,當(dāng)前向或者后向的緩存設(shè)置不合理時(shí),將嚴(yán)重影響用戶觀看體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
鑒于以上所述一個(gè)或多個(gè)問題,本發(fā)明實(shí)施例提供了一種設(shè)置緩存的方法和裝置。
第一方面,提供了一種設(shè)置緩存的方法,包括以下步驟:
獲取用戶觀看視頻時(shí)的操作參數(shù);
基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;
基于操作習(xí)慣,設(shè)置緩存的容量大小。
第二方面,提供了一種設(shè)置緩存的裝置,包括:
獲取模塊,用于獲取用戶觀看視頻時(shí)的操作參數(shù);
識(shí)別模塊,用于基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;
第一設(shè)置模塊,用于基于操作習(xí)慣,設(shè)置緩存的容量大小。
本發(fā)明實(shí)施例通過獲取用戶觀看視頻時(shí)的操作參數(shù),基于操作參數(shù)識(shí)別該用戶的操作習(xí)慣,并根據(jù)用戶的操作習(xí)慣來設(shè)置緩存容量的大小,不僅可以契合用戶需求,而且節(jié)約終端資源和用戶的數(shù)量流量,并保障網(wǎng)絡(luò)資源的正常使用。另外,通過靈活設(shè)置緩存容量大小,可以動(dòng)態(tài)分配和調(diào)整服務(wù)器端和終端側(cè)的緩存資源,從而減小終端和服務(wù)器端負(fù)擔(dān),并充分利用已有網(wǎng)絡(luò)和終端資源,達(dá)到更好的用戶體驗(yàn)。
附圖說明
從下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式的描述中可以更好地理解本發(fā)明其中,相同或相似的附圖標(biāo)記表示相同或相似的特征。
圖1為本發(fā)明一實(shí)施例的設(shè)置緩存的方法流程示意圖;
圖2為本發(fā)明另一實(shí)施例的設(shè)置緩存的方法流程示意圖;
圖3為本發(fā)明一實(shí)施例的設(shè)置緩存的裝置結(jié)構(gòu)示意圖。
圖4為本發(fā)明另一實(shí)施例的設(shè)置緩存的裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)表達(dá)得更加清楚明白,下面結(jié)合附圖及具體實(shí)施例對本發(fā)明再作進(jìn)一步詳細(xì)的說明。
圖1為本發(fā)明一實(shí)施例的設(shè)置緩存的方法的流程示意圖。
如圖1所示,設(shè)置緩存的方法可以包括以下步驟:S110,獲取用戶觀看視頻時(shí)的操作參數(shù);S120,基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;S130,基于操作習(xí)慣,設(shè)置緩存的容量大小。
在一些實(shí)施例中,操作參數(shù)可以包括以下項(xiàng)中的至少一項(xiàng):搜索次數(shù)、搜索方向和搜索頻率。
在一些實(shí)施例中,操作習(xí)慣還可以包括:快進(jìn)的習(xí)慣和/或快退的習(xí)慣。
本發(fā)明實(shí)施例通過獲取用戶觀看視頻時(shí)的操作參數(shù),基于操作參數(shù)識(shí)別該用戶的操作習(xí)慣,并根據(jù)用戶的操作習(xí)慣來設(shè)置緩存容量的大小,不僅可以契合用戶需求,而且節(jié)約終端資源和用戶的數(shù)量流量,并保障網(wǎng)絡(luò)資源的正常使用。另外,通過靈活設(shè)置緩存容量大小,可以動(dòng)態(tài)分配和調(diào)整服務(wù)器端和終端側(cè)的緩存資源,從而減小終端和服務(wù)器端負(fù)擔(dān),并充分利用已有網(wǎng)絡(luò)和終端資源,達(dá)到更好的用戶體驗(yàn)。
在一些實(shí)施例中,基于操作習(xí)慣,設(shè)置緩存的容量大小的步驟(即S130)可以包括:當(dāng)快進(jìn)的次數(shù)或者頻率達(dá)到預(yù)設(shè)的閾值時(shí),增大前向的緩存區(qū)的大小。
在一些實(shí)施例中,基于操作習(xí)慣,設(shè)置緩存的容量大小的步驟(即S130)還可以包括:當(dāng)快退的操作次數(shù)或者頻率達(dá)到預(yù)設(shè)的閾值時(shí),增大后向的緩存區(qū)的大小。
在一些實(shí)施例中,在基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣的步驟(即S120)之后,還包括以下步驟:將用戶的操作習(xí)慣與用戶的賬戶綁定。
在一些實(shí)施例中,針對用戶操作習(xí)慣設(shè)置或者調(diào)整緩存容量的策略的實(shí)現(xiàn)方式可以為:
獲取用戶觀看同類視頻過程中的進(jìn)度條seek操作信息,包括seek方向(快進(jìn)/快退),seek次數(shù)或者seek頻率。操作越頻繁則對應(yīng)的大小和比例越大,分析并記錄用戶使用的seek習(xí)慣和特點(diǎn)。當(dāng)用戶頻繁進(jìn)行前向seek操作時(shí)增大前向seek緩存區(qū)大小。當(dāng)用戶頻繁進(jìn)行后向seek時(shí)增大后向緩存區(qū)大小。
1)當(dāng)某一用戶觀看視頻時(shí)基本不進(jìn)行進(jìn)度條調(diào)整時(shí),采用默認(rèn)的緩存策略;
默認(rèn)的緩存設(shè)置參數(shù)為通過服務(wù)器獲取的用戶的初始值或者視頻APP預(yù)設(shè)的初始值,包括緩存區(qū)總體大小,前向/后向緩存區(qū)大小,緩存獲取的碼流速度閾值等。其中通過服務(wù)器獲取的初始值可以是服務(wù)器根據(jù)不同區(qū)域和用戶群體給出不同模板。
2)當(dāng)檢測到某一用戶觀看視頻時(shí)具有頻繁的快進(jìn)操作時(shí),例如在30分鐘視頻播放時(shí)間內(nèi)快進(jìn)的次數(shù)達(dá)到5次以上,則增加用戶的后向緩存的大小,或者當(dāng)為緩存總量固定的環(huán)形緩存視頻時(shí),增大其中后向緩存占比大小。同理,若用戶頻繁回看之前的內(nèi)容,則增大前向緩存的大小或者緩存占比。
3)考慮到默認(rèn)的緩存設(shè)置可能已經(jīng)能夠滿足用戶快進(jìn)或者快退的操作,終端可以在考慮用戶快進(jìn)快退操作頻次的基礎(chǔ)上進(jìn)一步檢測,用戶快進(jìn)或者快退后是否需要等待緩存加載,例如當(dāng)用戶僅進(jìn)行小幅度的快進(jìn)時(shí)(請求播放的時(shí)間點(diǎn)滯后于當(dāng)前播放時(shí)間點(diǎn)10秒左右)現(xiàn)有的緩存策略能夠支持用戶不卡頓的直接觀看,但是若用戶進(jìn)行大幅度的快進(jìn)時(shí)(請求播放的時(shí)間點(diǎn)滯后于當(dāng)前播放時(shí)間點(diǎn)10分鐘左右)終端將能夠感知用戶需要等待緩存重新加載,即現(xiàn)有的緩存策略不能滿足用戶的播放習(xí)慣。通過分析記錄用戶快進(jìn)/快退后需要等待緩存加載的頻次進(jìn)而對前向或者后向緩存的大小或者占比進(jìn)行調(diào)整。
當(dāng)用戶頻繁進(jìn)行后向seek操作時(shí),終端會(huì)在初始值基礎(chǔ)上在閾值內(nèi)調(diào)大緩存獲取速度以更快地填充后向片源方便觀看。而當(dāng)用戶前向seek操作較多時(shí),則可適當(dāng)降低或保持不變終端緩存獲取速度。
圖2為本發(fā)明另一實(shí)施例的設(shè)置緩存的方法的流程示圖。
如圖2所示,設(shè)置緩存的方法可以包括以下步驟:S110,獲取用戶觀看視頻時(shí)的操作參數(shù);S120,基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;S140,基于操作習(xí)慣,結(jié)合用戶當(dāng)前選擇觀看的視頻的片源類型、片源格式、和播放情況中一個(gè)或多個(gè)設(shè)置緩存的容量大小。
在一些實(shí)施例中,基于操作習(xí)慣,結(jié)合用戶當(dāng)前選擇觀看的視頻的片源類型、片源格式、和播放情況中一個(gè)或多個(gè)設(shè)置緩存的容量大小的步驟(即S140)可以包括:當(dāng)片源類型為點(diǎn)播類型時(shí),將緩存的總?cè)萘看笮≡O(shè)置為固定值。
在一些實(shí)施例中,基于操作習(xí)慣,結(jié)合用戶當(dāng)前選擇觀看的視頻的片源類型、片源格式、和播放情況中一個(gè)或多個(gè)設(shè)置緩存的容量大小的步驟(即S140)還可以包括:當(dāng)片源類型為直播時(shí),將緩存的總?cè)萘看笮≡O(shè)置為變動(dòng)值。
在一些實(shí)施例中,將緩存的總?cè)萘看笮≡O(shè)置為變動(dòng)值的步驟可以包括:任意增大緩存中的前向緩存的大小。
在一些實(shí)施例中,設(shè)置緩存的方法可以例如由終端側(cè)的緩存識(shí)別模塊、緩存執(zhí)行模塊以及環(huán)形緩存區(qū)共同完成。
在一些實(shí)施例中,終端側(cè)的緩存識(shí)別模塊是核心,其負(fù)責(zé)識(shí)別、分析和記錄終端側(cè)的相關(guān)播放數(shù)據(jù),根據(jù)用戶使用習(xí)慣(包括喜歡的片源類型,包括點(diǎn)播、直播和片源的視頻格式和內(nèi)容源,喜歡進(jìn)行的seek操作,比如seek的次數(shù)、方向和頻率),結(jié)合當(dāng)前用戶側(cè)的網(wǎng)絡(luò)情況(比如,在不同用戶使用習(xí)慣下,不同內(nèi)容源的實(shí)際碼流獲取速度,網(wǎng)絡(luò)延遲和抖動(dòng)情況等),給出緩存調(diào)整的參數(shù)建議。
在一些實(shí)施例中,針對片源類型設(shè)置或者調(diào)整緩存策略的實(shí)現(xiàn)方式具體可以如下所示:
確定用戶使用該應(yīng)用程序時(shí)播放的片源類型,即為點(diǎn)播還是直播,將點(diǎn)播視頻的緩存總量設(shè)為固定值,即通過環(huán)形緩存處理點(diǎn)播的視頻;將直播視頻的緩存總量設(shè)為變動(dòng)值,即其中的前向緩存可以無限增加,便于用戶隨時(shí)回看。而后向緩存可以設(shè)為較大的固定值或者盡可能多的加載,或者也可將直播視頻的緩存總量也設(shè)為變動(dòng)值,但是要大于點(diǎn)播視頻的緩存總量,并且相應(yīng)增加前向緩存大小。
考慮到點(diǎn)播視頻用戶完整回看的可能性不大,因此采用環(huán)形緩存可以節(jié)約終端的內(nèi)存資源;而對于直播視頻,考慮到用戶在直播過程中可能沒有時(shí)間回看之前的片段,因此暫不刪除前向緩存,以便結(jié)束直播后,用戶可以補(bǔ)看之前錯(cuò)過的片段,而直播的后向緩存也不加限制(即盡可能多的加載),以便保證直播的實(shí)時(shí)性。
當(dāng)用戶播放的片源中大部分的碼率都是碼率偏大時(shí),終端會(huì)在初始值基礎(chǔ)上在閾值內(nèi)調(diào)大緩存獲取速度以更快地填充后向片源方便觀看。而當(dāng)用戶播放的片源大部分碼率偏小時(shí),則可適當(dāng)降低或保持不變終端緩存獲取速度,在用戶播放大碼率片源時(shí)才根據(jù)情況增大。
在一些實(shí)施例中,針對片源格式調(diào)整緩存策略的實(shí)現(xiàn)方式具體可以如下所示:
因各種格式的片源其數(shù)據(jù)量大小不同,因此需要基于片源格式動(dòng)態(tài)調(diào)整視頻緩存的大小以便保證用戶的快進(jìn)/快退的操作時(shí)間。例如當(dāng)片源為H.264格式時(shí)100M的緩存能滿足80秒的離線瀏覽,但當(dāng)片源為H.265格式時(shí),100M的緩存能滿足160秒的離線瀏覽,為了使用戶不明顯感知緩存差異,需要按照片源格式為其換算一定比例的緩存大小。
當(dāng)用戶播放的片源中大部分壓縮率較低時(shí),終端會(huì)在初始值基礎(chǔ)上在閾值內(nèi)調(diào)大緩存獲取速度以更快地填充后向片源方便觀看。而當(dāng)用戶播放的片源大部分分壓縮率較高時(shí),則可適當(dāng)降低或保持不變終端緩存獲取速度。
在一些實(shí)施例中,針對網(wǎng)絡(luò)情況調(diào)整緩存策略的方式具體可以如下所示:
在該用戶播放的片源出現(xiàn)較多的網(wǎng)絡(luò)卡頓和延遲時(shí),通知緩存執(zhí)行模塊適當(dāng)調(diào)高緩存區(qū)整體大小和緩存獲取速度,以便在網(wǎng)絡(luò)波動(dòng)過程中能夠獲取更大的向后讀取的可能性,而當(dāng)播放的片源非常流暢和卡頓情況極少的情況,可以適當(dāng)調(diào)低緩存大小和緩存獲取速度,降低終端開銷和服務(wù)器端的開銷。
可以由緩存執(zhí)行模塊根據(jù)設(shè)置參數(shù),對緩存內(nèi)的內(nèi)容進(jìn)行填充,并負(fù)責(zé)反饋相關(guān)執(zhí)行數(shù)據(jù)。對于環(huán)形緩存,當(dāng)整個(gè)緩沖區(qū)的內(nèi)容未滿時(shí),首先向后填充。當(dāng)整個(gè)緩存區(qū)已經(jīng)滿時(shí),則由最新緩存的內(nèi)容取代最舊緩存的內(nèi)容,但是取代的內(nèi)容不會(huì)超過視頻播放的進(jìn)度點(diǎn)。
還可以由緩存執(zhí)行模塊將執(zhí)行的結(jié)果和相關(guān)參數(shù)上報(bào)給服務(wù)器,尤其需要上報(bào)上述用戶操作習(xí)慣,因?yàn)樵擁?xiàng)調(diào)整與用戶強(qiáng)相關(guān),而為了保持參數(shù)調(diào)整的大概率合理性,其他幾種調(diào)整策略也都是與用戶近期觀看內(nèi)容和網(wǎng)絡(luò)情況動(dòng)態(tài)調(diào)整的綜合結(jié)果相關(guān)。服務(wù)器獲取各賬戶的用戶操作習(xí)慣并保存,以便用戶下次登錄時(shí),可將已存的用戶操作習(xí)慣下發(fā)至當(dāng)前登錄終端,以便當(dāng)前終端根據(jù)用戶習(xí)慣和網(wǎng)絡(luò)情況對該終端上的緩存參數(shù)進(jìn)行調(diào)整。
下面以用戶觀看視頻為例,具體說明緩存設(shè)置方法的實(shí)現(xiàn)方式,該方法包括以下步驟:
步驟1,用戶登錄,獲取用戶賬號(hào)信息;
步驟2,獲取該用戶緩存設(shè)置;
若服務(wù)器側(cè)未保存有該用戶的習(xí)慣參數(shù),則此時(shí)用戶緩存設(shè)置為該區(qū)域該類型用戶的默認(rèn)緩存設(shè)置,并至步驟3;若服務(wù)器側(cè)具有該用戶的操作習(xí)慣參數(shù),例如習(xí)慣頻繁回看,則將該習(xí)慣下發(fā)至該用戶當(dāng)前終端的應(yīng)用,并至步驟4;
步驟3,用戶觀看點(diǎn)播視頻,同時(shí)進(jìn)行頻繁的后向seek操作,此時(shí)網(wǎng)絡(luò)狀況極佳,此時(shí)可以適當(dāng)降低用戶終端的緩存區(qū)大小,適當(dāng)調(diào)高后向seek緩存區(qū)比例,同時(shí)通知服務(wù)器端在范圍內(nèi)適當(dāng)降低緩存碼流獲取速度。
步驟4,用戶播放HLS類型直播碼流,因?yàn)橛脩袅?xí)慣頻繁回看,因此調(diào)大前向緩存(或不限前向緩存量);又因?yàn)榭D和延遲情況較明顯,緩存識(shí)別模塊通知緩存執(zhí)行模塊進(jìn)一步調(diào)大緩存區(qū)大小,適當(dāng)調(diào)整前向緩存區(qū)比例,方便用戶在碼率變化較大的情況下獲取更多前向緩存,優(yōu)化用戶播放體驗(yàn)。
在本實(shí)施例中,具體緩存總大小、前向緩存大小、后向緩存大小及終端獲取緩存速度的執(zhí)行結(jié)果,與以上情況1、情況2、情況3和情況4的判斷結(jié)果綜合產(chǎn)生,比如將總緩存大小分為7檔從1到10,逐漸變大。前向緩存大小從2到10,后向緩存大小從0到8。緩存獲取速度分為5檔從a到e,逐漸變大。那么某一項(xiàng)調(diào)整結(jié)果由情況1的因子*情況1的系數(shù)+情況2的因子*情況2的系數(shù)+情況3的因子*情況3的系數(shù)+情況4的因子*情況4的系數(shù)得出綜合結(jié)果。
比如前向緩存大小,當(dāng)多種情況同時(shí)發(fā)生時(shí),比如情況1和情況2同時(shí)發(fā)生,情況1用戶喜歡頻繁前向會(huì)看操作因子為2,系數(shù)默認(rèn)為2;情況2,用戶觀看直播碼率的情況占到90%以上,操作因子為2,系數(shù)默認(rèn)為4;情況3和情況4符合默認(rèn)情況,則調(diào)大前向緩存的影響值為12,此時(shí)根基折算值適當(dāng)調(diào)大前向緩存的大小。同時(shí)近期用戶播放的片源頻繁出現(xiàn)卡頓情況,操作因子為2,系數(shù)默認(rèn)為2,那么在此基礎(chǔ)上調(diào)大緩存區(qū)大小的的影響值為4,那么會(huì)執(zhí)行模塊會(huì)綜合調(diào)大整體緩存區(qū),同時(shí)根據(jù)影響值調(diào)大后向緩存區(qū)的大小和比例。具體的操作因子、系數(shù)和影響值的計(jì)算方法和參數(shù)設(shè)置與執(zhí)行結(jié)果的關(guān)系皆可根據(jù)具體用戶使用情況和效果進(jìn)行預(yù)先設(shè)置和后續(xù)調(diào)整。
由此,通過上述實(shí)施例可以識(shí)別、分析和記錄終端側(cè)的相關(guān)播放數(shù)據(jù),根據(jù)用戶使用習(xí)慣(包括喜歡的片源類型,包括點(diǎn)播、直播和片源的視頻格式和內(nèi)容源,喜歡進(jìn)行的seek(搜索)操作,比如seek的次數(shù)、方向和頻率),結(jié)合當(dāng)前用戶側(cè)的網(wǎng)絡(luò)情況(比如,在不同用戶使用習(xí)慣下,不同內(nèi)容源的實(shí)際碼流獲取速度,網(wǎng)絡(luò)延遲和抖動(dòng)情況等),給出緩存調(diào)整的參數(shù)建議。
上述實(shí)施例可以根據(jù)各用戶操作習(xí)慣確定視頻流緩存設(shè)置。還可以將用戶操作習(xí)慣與用戶賬戶綁定,便于各終端及時(shí)識(shí)別用戶操作習(xí)慣以便對緩存進(jìn)行調(diào)整,此外,除根據(jù)用戶操作習(xí)慣外,還結(jié)合相應(yīng)片源類型、格式或者網(wǎng)絡(luò)情況對終端和服務(wù)器端的緩存開銷進(jìn)行調(diào)整,達(dá)到最大利用資源的目的。
需要說明的是,在不沖突的情況下,各實(shí)施例中的特征可以相互組合。圖1和圖2的操作步驟的順序進(jìn)行靈活調(diào)整。為了簡明,在此不再贅述這方面內(nèi)容。
圖3為本發(fā)明一實(shí)施例的設(shè)置緩存的裝置結(jié)構(gòu)示意圖。
如圖3所示,設(shè)置緩存的裝置300可以包括:獲取模塊310、識(shí)別模塊320和第一設(shè)置模塊330。其中,獲取模塊310可以用于獲取用戶觀看視頻時(shí)的操作參數(shù);識(shí)別模塊320可以用于基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;第一設(shè)置模塊330可以用于基于操作習(xí)慣,設(shè)置緩存的容量大小。
需要說明的是,各實(shí)施例中所示的功能單元或者功能模塊的實(shí)現(xiàn)方式可以為硬件、軟件、固件或者它們的組合。當(dāng)以硬件方式實(shí)現(xiàn)時(shí),其可以例如是電子電路、專用集成電路(ASIC)、適當(dāng)?shù)墓碳?、插件、功能卡等等。?dāng)以軟件方式實(shí)現(xiàn)時(shí),本發(fā)明的元素是被用于執(zhí)行所需任務(wù)的程序或者代碼段。程序或者代碼段可以存儲(chǔ)在機(jī)器可讀介質(zhì)中,或者通過載波中攜帶的數(shù)據(jù)信號(hào)在傳輸介質(zhì)或者通信鏈路上傳送?!皺C(jī)器可讀介質(zhì)”可以包括能夠存儲(chǔ)或傳輸信息的任何介質(zhì)。機(jī)器可讀介質(zhì)的例子包括電子電路、半導(dǎo)體存儲(chǔ)器設(shè)備、ROM、閃存、可擦除ROM(EROM)、軟盤、CD-ROM、光盤、硬盤、光纖介質(zhì)、射頻(RF)鏈路,等等。代碼段可以經(jīng)由諸如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等的計(jì)算機(jī)網(wǎng)絡(luò)被下載。
可以理解,設(shè)置緩存的裝置300可以是終端設(shè)備,例如,手機(jī)、平板電腦和計(jì)算機(jī)等。用于終端的緩存設(shè)置的裝置中的各個(gè)功能單元可以進(jìn)行不同程度的組合應(yīng)用,為了簡明,不再贅述各種組合的實(shí)現(xiàn)方式,本領(lǐng)域的技術(shù)人員可以按實(shí)際需要將上述的各個(gè)功能單元或者功能模塊進(jìn)行靈活調(diào)整,或者進(jìn)行靈活組合等操作。此外,在具體配置上述各功能單元或者功能模塊時(shí),只要能夠?qū)崿F(xiàn)具體的功能即可,具體制造方法或者產(chǎn)品的型號(hào)等不做限制,各個(gè)功能單元或者功能模塊的連接位置關(guān)系也不做限制。
圖4為本發(fā)明另一實(shí)施例的設(shè)置緩存的裝置結(jié)構(gòu)示意圖。
如圖4所示,設(shè)置緩存的裝置400可以包括:獲取模塊310、識(shí)別模塊320、第一設(shè)置模塊330和第二設(shè)置模塊340。其中,獲取模塊310可以用于獲取用戶觀看視頻時(shí)的操作參數(shù);識(shí)別模塊320可以用于基于操作參數(shù),識(shí)別該用戶的操作習(xí)慣;第一設(shè)置模塊330可以用于基于操作習(xí)慣,設(shè)置緩存的容量大??;第二設(shè)置模塊340可以用于基于操作習(xí)慣,結(jié)合用戶當(dāng)前選擇觀看的視頻的片源類型、片源格式、和播放情況中一個(gè)或多個(gè)設(shè)置緩存的容量大小。
本領(lǐng)域普通技術(shù)人員可以意識(shí)到,上述各個(gè)功能單元或者模塊,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
在一些實(shí)施例中,操作參數(shù)包括以下項(xiàng)中的至少一項(xiàng):搜索次數(shù)、搜索方向和搜索頻率。
在一些實(shí)施例中,操作習(xí)慣包括:快進(jìn)的習(xí)慣和/或快退的習(xí)慣。
在一些實(shí)施例中,第一設(shè)置模塊330還用于:當(dāng)快進(jìn)的次數(shù)或者頻率達(dá)到預(yù)設(shè)的閾值時(shí),增大前向的緩存區(qū)的大小。
在一些實(shí)施例中,第一設(shè)置模塊330還用于:當(dāng)快退的操作次數(shù)或者頻率達(dá)到預(yù)設(shè)的閾值時(shí),增大后向的緩存區(qū)的大小。
作為一個(gè)可選的實(shí)施例,可以在圖2或者圖3的基礎(chǔ)上增加綁定單元。綁定單元可以用于將用戶的操作習(xí)慣與用戶的賬戶綁定。
在一些實(shí)施例中,第二設(shè)置模塊340還用于:當(dāng)片源類型為點(diǎn)播類型時(shí),將緩存的總?cè)萘看笮≡O(shè)置為固定值。
在一些實(shí)施例中,第二設(shè)置模塊340還用于:當(dāng)片源類型為直播時(shí),將緩存的總?cè)萘看笮≡O(shè)置為變動(dòng)值。
在一些實(shí)施例中,第二設(shè)置模塊340還用于:當(dāng)片源類型為直播時(shí),任意增大緩存中的前向緩存的大小。
在一些實(shí)施例中,設(shè)置緩存的裝置可以包括:上述緩存識(shí)別模塊、緩存執(zhí)行模塊以及環(huán)形緩存區(qū)。
由此,本發(fā)明上述實(shí)施例提出了針對用戶操作習(xí)慣調(diào)整緩存策略,由終端獲取用戶觀看視頻過程中進(jìn)度條seek操作信息,包括seek方向、seek次數(shù)或者seek頻率(或進(jìn)一步檢測是否等待緩存加載)。操作越頻繁(等待越頻繁)則調(diào)整對應(yīng)方向緩存的大小和比例越大。此外,本發(fā)明上述實(shí)施例還公開了根據(jù)片源類型、片源格式或者網(wǎng)絡(luò)情況調(diào)整緩存策略的具體方案。另外,終端能夠根據(jù)用戶視頻的觀看習(xí)慣調(diào)整緩存設(shè)置,更契合用戶需求。在此基礎(chǔ)上結(jié)合其他策略調(diào)整方案,能夠使緩存設(shè)置靈活,充分利用已有網(wǎng)絡(luò)和終端資源,提升用戶體驗(yàn)。
需要說明的是,上述各實(shí)施例的裝置可作為上述各實(shí)施例的方法中的執(zhí)行主體,可以實(shí)現(xiàn)各個(gè)方法中的相應(yīng)流程,上述各個(gè)實(shí)施例中的內(nèi)容可以互相參考使用,為了簡潔,此方面內(nèi)容不再贅述。
以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使對應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。