本發(fā)明涉及視頻技術(shù)領(lǐng)域,尤其涉及一種碼率推薦方法及裝置。
背景技術(shù):
現(xiàn)有的視頻網(wǎng)絡(luò)播放,針對(duì)相同的視頻節(jié)目,內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)服務(wù)器可以為客戶端提供與視頻節(jié)目對(duì)應(yīng)的多種清晰度的視頻,例如:針對(duì)電視劇A(A為電視劇名稱),CDN服務(wù)器可提供標(biāo)清視頻、高清視頻或超清視頻,各種清晰度對(duì)應(yīng)的視頻相互獨(dú)立,各自擁有不同的播放源地址;用戶在客戶端上可以選擇自己想要的清晰度的視頻進(jìn)行播放。不同等級(jí)的清晰度的碼率存在較大差異,例如,高清視頻的碼率為1Mbps,超清視頻的碼率為1.5Mbps,播放清晰度越高的視頻,占用的CDN服務(wù)器帶寬越大。隨著視頻網(wǎng)絡(luò)用戶的不斷增加,CDN服務(wù)器的帶寬經(jīng)常接近滿負(fù)荷運(yùn)行,可能會(huì)引起用戶的播放卡頓。
技術(shù)實(shí)現(xiàn)要素:
技術(shù)問題
有鑒于此,本發(fā)明提出一種碼率推薦方法及裝置,能夠降低CDN服務(wù)器的帶寬壓力,減少用戶播放卡頓。
解決方案
為了解決上述技術(shù)問題,提出了一種碼率推薦方法,所述方法包括:獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息;接收客戶端的播放請(qǐng)求,所述播放請(qǐng)求包括所述客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;查找與所述客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息;基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率;向所述客戶端下發(fā)包含所述推薦碼率的通知。
為了解決上述技術(shù)問題,提出了一種碼率推薦方法,所述方法包括:向服務(wù)端發(fā)送播放請(qǐng)求,所述播放請(qǐng)求包括客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;接收所述服務(wù)端下發(fā)的關(guān)于推薦碼率的通知,其中所述通知是基于所述視頻清晰度和與所述客戶端有關(guān)的信息而生成的;根據(jù)所述通知中的推薦碼率確定以所申請(qǐng)的視頻清晰度來播放視頻的碼率。
為了解決上述技術(shù)問題,提出了一種碼率推薦裝置,其特征在于,所述裝置包括:獲取部件,用于獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息;接收部件,用于接收客戶端的播放請(qǐng)求,所述播放請(qǐng)求包括所述客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;查找部件,用于查找與所述客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息;選擇部件,用于基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率;第一通知部件,用于向所述客戶端下發(fā)包含所述推薦碼率的通知。
為了解決上述技術(shù)問題,提出了一種碼率推薦裝置,所述裝置包括:發(fā)送部件,用于向服務(wù)端發(fā)送播放請(qǐng)求,所述播放請(qǐng)求包括客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;第一接收部件,用于接收所述服務(wù)端下發(fā)的關(guān)于推薦碼率的通知,其中所述通知是基于所述視頻清晰度和與所述客戶端有關(guān)的信息而生成的;碼率確定部件,用于根據(jù)所述通知中的推薦碼率確定以所申請(qǐng)的視頻清晰度來播放視頻的碼率。
有益效果
通過獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息,接收客戶端的播放請(qǐng)求,查找與該客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息,基于該客戶端申請(qǐng)播放的視頻清晰度、與該客戶端有關(guān)的信息以及相匹配的統(tǒng)計(jì)信息,從與視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)該客戶端的推薦碼率,并向該客戶端下發(fā)包含該推薦碼率的通知,根據(jù)本發(fā)明實(shí)施例的碼率推薦方法及裝置針對(duì)同一視頻清晰度設(shè)置對(duì)應(yīng)的多個(gè)碼率,使服務(wù)端能夠依據(jù)CDN服務(wù)器的工作狀態(tài)及客戶端的信息為申請(qǐng)播放某一視頻清晰度的客戶端推薦該清晰度下的適當(dāng)碼率,能夠降低CDN服務(wù)器的帶寬壓力,減少用戶播放卡頓,提高用戶的觀看體驗(yàn)。
根據(jù)下面參考附圖對(duì)示例性實(shí)施例的詳細(xì)說明,本發(fā)明的其它特征及方面將變得清楚。
附圖說明
包含在說明書中并且構(gòu)成說明書的一部分的附圖與說明書一起示出了本發(fā)明的示例性實(shí)施例、特征和方面,并且用于解釋本發(fā)明的原理。
圖1示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的碼率推薦方法的流程圖;
圖2示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的一個(gè)示例的碼率推薦方法的流程圖;
圖3示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的碼率推薦方法的流程圖;
圖4示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一個(gè)示例的碼率推薦方法的流程圖;
圖5示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的碼率推薦裝置的的結(jié)構(gòu)圖;
圖6示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的一個(gè)示例的碼率推薦裝置的結(jié)構(gòu)圖;
圖7示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的碼率推薦裝置的結(jié)構(gòu)圖;
圖8示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一個(gè)示例的碼率推薦裝置的結(jié)構(gòu)圖;
圖9示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一種碼率推薦設(shè)備的結(jié)構(gòu)框圖。
具體實(shí)施方式
以下將參考附圖詳細(xì)說明本發(fā)明的各種示例性實(shí)施例、特征和方面。附圖中相同的附圖標(biāo)記表示功能相同或相似的元件。盡管在附圖中示出了實(shí)施例的各種方面,但是除非特別指出,不必按比例繪制附圖。
在這里專用的詞“示例性”意為“用作例子、實(shí)施例或說明性”。這里作為“示例性”所說明的任何實(shí)施例不必解釋為優(yōu)于或好于其它實(shí)施例。
另外,為了更好的說明本發(fā)明,在下文的具體實(shí)施方式中給出了眾多的具體細(xì)節(jié)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,沒有某些具體細(xì)節(jié),本發(fā)明同樣可以實(shí)施。在一些實(shí)例中,對(duì)于本領(lǐng)域技術(shù)人員熟知的方法、手段、元件和電路未作詳細(xì)描述,以便于凸顯本發(fā)明的主旨。
實(shí)施例1
圖1示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的碼率推薦方法的流程圖。如圖1所示,該方法可適用于服務(wù)端,該碼率推薦方法主要包括:
步驟101,獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息;
步驟102,接收客戶端的播放請(qǐng)求,所述播放請(qǐng)求包括所述客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;
步驟103,查找與所述客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息;
步驟104,基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率;
步驟105,向所述客戶端下發(fā)包含所述推薦碼率的通知。
通過獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息,接收客戶端的播放請(qǐng)求,查找與該客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息,基于該客戶端申請(qǐng)播放的視頻清晰度、與該客戶端有關(guān)的信息以及相匹配的統(tǒng)計(jì)信息,從與視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)該客戶端的推薦碼率,并向該客戶端下發(fā)包含該推薦碼率的通知,根據(jù)本發(fā)明實(shí)施例的碼率推薦方法針對(duì)同一視頻清晰度設(shè)置了對(duì)應(yīng)的多個(gè)碼率,使服務(wù)端能夠依據(jù)CDN服務(wù)器的工作狀態(tài)及客戶端的信息為申請(qǐng)某一視頻清晰度的客戶端推薦該清晰度下的適當(dāng)碼率,能夠降低CDN服務(wù)器的帶寬壓力,減少用戶播放卡頓,提高用戶的觀看體驗(yàn)。
以下以APP端作為客戶端為例,來說明服務(wù)端接收APP端的播放請(qǐng)求,響應(yīng)播放請(qǐng)求,為APP端推薦適當(dāng)?shù)拇a率的具體示例。
在一個(gè)示例中,同一視頻清晰度可對(duì)應(yīng)多個(gè)碼率,例如,標(biāo)清對(duì)應(yīng)的較高檔碼率為414kb/s,分辨率為640*360,對(duì)應(yīng)的較低檔碼率為282kb/s,分辨率為448*336。可以為每種視頻清晰度設(shè)定一個(gè)碼率范圍,可以通過轉(zhuǎn)碼操作將某一視頻清晰度對(duì)應(yīng)的分辨率最高的視頻轉(zhuǎn)碼為若干個(gè)分辨率較低的視頻,即可通過轉(zhuǎn)碼操作將某一視頻清晰度對(duì)應(yīng)的碼率最高的視頻轉(zhuǎn)碼為該視頻清晰度對(duì)應(yīng)的碼率范圍內(nèi)的若干個(gè)碼率較低的視頻,從而實(shí)現(xiàn)同一視頻清晰度可對(duì)應(yīng)多個(gè)碼率。
在一個(gè)示例中,上述步驟101中所述統(tǒng)計(jì)信息包括CDN服務(wù)器在各時(shí)間的帶寬使用率,所述帶寬使用率為所述CDN服務(wù)器已使用帶寬與總帶寬的比率。
舉例而言,可在不同地域分別布置CDN服務(wù)器,各CDN服務(wù)器為其服務(wù)覆蓋地域范圍內(nèi)的客戶端提供視頻播放服務(wù)。例如,可在北京、石家莊等地分別布置CDN服務(wù)器,分別為北京、石家莊等地的APP端提供視頻播放服務(wù)。各CDN服務(wù)器可定期(例如每5分鐘,該實(shí)時(shí)統(tǒng)計(jì)的時(shí)間間隔可根據(jù)運(yùn)營經(jīng)驗(yàn)進(jìn)行設(shè)定)統(tǒng)計(jì)并記錄當(dāng)前時(shí)間的帶寬使用率,可將統(tǒng)計(jì)的當(dāng)前時(shí)間的帶寬使用率上報(bào)至服務(wù)端,服務(wù)端也可主動(dòng)訪問各CDN服務(wù)器以獲取各CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率。如表1所示,服務(wù)端獲取北京、石家莊CDN服務(wù)器在某日部分整點(diǎn)時(shí)間的帶寬使用率。
表1
在一個(gè)示例中,上述步驟102中與所述客戶端有關(guān)的信息可包括所述客戶端的IP地址。
在該示例中,APP端向服務(wù)端發(fā)送播放請(qǐng)求,該播放請(qǐng)求可包括APP端申請(qǐng)播放的視頻清晰度(例如標(biāo)清)和APP端的IP地址。在網(wǎng)絡(luò)的地址規(guī)劃和分配中可為不同地域的運(yùn)營商分配不同的IP地址段,當(dāng)某個(gè)移動(dòng)APP端在接入某運(yùn)營商的移動(dòng)網(wǎng)絡(luò)時(shí),該運(yùn)營商在其所分配的IP地址段中為該移動(dòng)APP端分配一個(gè)IP地址。因此,可從APP端的IP地址分析出APP端所歸屬的地域及接入的運(yùn)營商。
本領(lǐng)域技術(shù)人員應(yīng)理解,與所述客戶端有關(guān)的信息不限于客戶端的IP地址,還可以包括能夠指示客戶端所處地域范圍的任意其他信息。
在一個(gè)示例中,上述步驟103中查找與所述客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息可包括:查找與所述客戶端的IP地址和當(dāng)前時(shí)間相匹配的CDN服務(wù)器的帶寬使用率。
在該示例中,服務(wù)端可根據(jù)APP端的IP地址分析出該APP端所歸屬的地域,例如分析出該APP端歸屬的地域?yàn)楸本?,服?wù)端還可獲取當(dāng)前時(shí)間,例如從服務(wù)端自身的時(shí)間系統(tǒng)中提取當(dāng)前時(shí)間,或者從APP端發(fā)送的請(qǐng)求中包含的當(dāng)前時(shí)間中獲取,這樣一來,服務(wù)端可按照預(yù)定的規(guī)則查找到北京CDN服務(wù)器當(dāng)前時(shí)間的實(shí)時(shí)帶寬使用率,例如,實(shí)時(shí)統(tǒng)計(jì)間隔可為5分鐘,即每隔5分鐘進(jìn)行一次實(shí)時(shí)統(tǒng)計(jì)。以表1作為統(tǒng)計(jì)信息為例,假設(shè)如果當(dāng)前時(shí)間為23:02,則可以按照“就近”原則這一預(yù)定的規(guī)則,查找到北京23:00的帶寬使用率97%作為當(dāng)前時(shí)間的帶寬使用率。假如,由于傳輸延遲或其他原因不能實(shí)時(shí)獲取當(dāng)前時(shí)間的帶寬使用率,服務(wù)端可在歷史記錄中查找到最新的與當(dāng)前時(shí)間對(duì)應(yīng)的歷史帶寬使用率。例如,服務(wù)端如果不能查找到北京CDN服務(wù)器在夜間23:00的實(shí)時(shí)帶寬使用率,可在歷史記錄中查找到昨天23:00的歷史帶寬使用率。
在一個(gè)示例中,上述步驟104中基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率,可包括:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率小于預(yù)設(shè)閾值的情況下,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最高碼率作為針對(duì)所述客戶端的推薦碼率。
在該示例中,預(yù)設(shè)閾值可根據(jù)運(yùn)營策略和運(yùn)營經(jīng)驗(yàn)進(jìn)行調(diào)整,并且不同時(shí)間、不同地域?qū)?yīng)的預(yù)定閾值可以不同。為便于描述在該示例中,可將預(yù)設(shè)閾值設(shè)置為固定值85%,當(dāng)CDN服務(wù)器的帶寬使用率小于85%情況下,可認(rèn)為該CDN服務(wù)器的帶寬還有一定余量,可為用戶推薦某一視頻清晰度對(duì)應(yīng)的最高碼率,以提供給用戶較好地播放體驗(yàn)。例如,在凌晨1:00的時(shí)候,APP端向服務(wù)端發(fā)送申請(qǐng)播放標(biāo)清視頻節(jié)目的播放請(qǐng)求,服務(wù)端可通過分析該APP端的IP地址,判斷出該APP端歸屬于北京CDN服務(wù)器,可查找到北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率為37%(如表1所示),由此可知北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率小于預(yù)設(shè)閾值(85%),可從標(biāo)清對(duì)應(yīng)的多個(gè)碼率中(414kb/s、282kb/s)選擇碼率為414kb/s的最高碼率作為針對(duì)該APP端的推薦碼率。以上示例,服務(wù)端在APP端所歸屬的CDN服務(wù)器當(dāng)前時(shí)間的帶寬余量較充足的情況下,為APP端推薦申請(qǐng)清晰度對(duì)應(yīng)的最高碼率,為用戶提供了較好的播放體驗(yàn)。
在一個(gè)示例中,上述步驟104中基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率,可包括:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率大于或等于預(yù)設(shè)閾值的情況下,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最低碼率作為針對(duì)所述客戶端的推薦碼率。
在該示例中,可將預(yù)設(shè)閾值設(shè)置為85%,當(dāng)CDN服務(wù)器的帶寬使用率大于或等于85%情況下,可認(rèn)為該CDN服務(wù)器的帶寬余量比較緊張,可為用戶推薦某一視頻清晰度對(duì)應(yīng)的最低碼率。例如,在夜間23:00的時(shí)候,APP端向服務(wù)端發(fā)送申請(qǐng)播放標(biāo)清視頻節(jié)目的播放請(qǐng)求,服務(wù)端可通過分析該APP端的IP地址,判斷出該APP端歸屬于石家莊CDN服務(wù)器,可查找到石家莊CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率為90%(如表1所示),由此可知石家莊CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率大于預(yù)設(shè)閾值(85%),可從標(biāo)清對(duì)應(yīng)的多個(gè)碼率中(414kb/s、282kb/s)選擇碼率為282kb/s的最低碼率作為針對(duì)該APP端的推薦碼率。以上示例,服務(wù)端在APP端所歸屬的CDN服務(wù)器當(dāng)前時(shí)間的帶寬余量較緊張的情況下,為APP端推薦申請(qǐng)清晰度對(duì)應(yīng)的最低碼率,不僅節(jié)省了CDN服務(wù)器的帶寬,而且為用戶提供了比較流暢的播放體驗(yàn)。
在一個(gè)示例中,上述步驟102中與所述客戶端有關(guān)的信息還可包括所述客戶端的用戶屬性,基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率,可包括:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率大于或等于預(yù)設(shè)閾值的情況下,基于所述客戶端的用戶屬性,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率。
例如,歸屬于石家莊CDN服務(wù)器的兩個(gè)用戶屬性不同的APP端A與APP端B在23:00向服務(wù)端發(fā)送申請(qǐng)標(biāo)清視頻節(jié)目的播放請(qǐng)求,其中,APP端A的用戶屬性的優(yōu)先等級(jí)高于APP端B的,服務(wù)端可查找到石家莊CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率為90%(如表1所示),由此可知石家莊CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率大于預(yù)設(shè)閾值(85%),可從標(biāo)清對(duì)應(yīng)的多個(gè)碼率中(414kb/s、282kb/s)選擇282kb/s的較低碼率作為針對(duì)該APP端B的推薦碼率,選擇411kb/s的較高碼率作為針對(duì)該APP端A的推薦碼率。以上示例,可在帶寬資源緊張的情況下,針對(duì)用戶屬性不同的APP端推薦不同的碼率,在節(jié)省帶寬的同時(shí),為不同用戶屬性的用戶提供不同的視覺享受,在保證不同屬性用戶的流暢的播放體驗(yàn)的同時(shí),也考慮到為其中部分用戶(例如高優(yōu)先等級(jí)的用戶)提供更高的碼率、更好的播放體驗(yàn)。
在一個(gè)示例中,所述用戶屬性可包括未登錄用戶、已登錄非會(huì)員用戶和已登錄會(huì)員用戶其中之一。
在該示例中,已登錄會(huì)員用戶的優(yōu)先等級(jí)高于已登錄非會(huì)員用戶的優(yōu)先等級(jí),已登錄非會(huì)員用戶的優(yōu)先等級(jí)高于未登錄用戶的優(yōu)先等級(jí)。例如,歸屬于北京CDN服務(wù)器的APP端A、APP端B和APP端C在19:00都向服務(wù)端發(fā)送申請(qǐng)播放標(biāo)清視頻節(jié)目(例如瑯琊榜第1集)的播放請(qǐng)求,其中,APP端A為未登錄用戶,APP端B為已登錄非會(huì)員用戶,APP端C為已登錄會(huì)員用戶,服務(wù)端可通過分析這三個(gè)APP端的IP地址,判斷出這三個(gè)APP端歸屬于北京CDN服務(wù)器,可查找到北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率為70%(如表1所示),由此可知北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率小于預(yù)設(shè)閾值(85%),可從標(biāo)清對(duì)應(yīng)的多個(gè)碼率中(414kb/s、282kb/s)選擇414kb/s碼率作為針對(duì)這三個(gè)APP端的推薦碼率。當(dāng)這三個(gè)APP端觀看完瑯琊榜第1集,在20:00再次向服務(wù)端發(fā)送申請(qǐng)播放標(biāo)清視頻節(jié)目(例如瑯琊榜第2集)的播放請(qǐng)求,服務(wù)端可通過分析這三個(gè)APP端的IP地址,判斷出這三個(gè)APP端歸屬于北京CDN服務(wù)器,可查找到北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率為88%(如表1所示),由此可知北京CDN服務(wù)器當(dāng)前時(shí)間的帶寬使用率大于預(yù)設(shè)閾值(85%),CDN服務(wù)器帶寬余量緊張,可從標(biāo)清對(duì)應(yīng)的多個(gè)碼率中(414kb/s、282kb/s)選擇282kb/s作為針對(duì)APP端A(未登錄用戶)的推薦碼率,選擇414kb/s作為針對(duì)APP端B(已登錄非會(huì)員用戶)和APP端C(已登錄會(huì)員用戶)的推薦碼率,這樣,在CDN服務(wù)器帶寬余量緊張的情況下,可先保證優(yōu)先等級(jí)高的用戶享有較高的推薦碼率,優(yōu)先等級(jí)低的用戶享有較低的推薦碼率,以節(jié)省CDN服務(wù)器的帶寬。進(jìn)一步地,在降低未登錄用戶的推薦碼率后,如果CDN服務(wù)器的帶寬余量仍然緊張,CDN服務(wù)器的帶寬使用率仍然大于預(yù)設(shè)閾值,可進(jìn)一步降低已登錄非會(huì)員用戶的推薦碼率,進(jìn)一步節(jié)省CDN服務(wù)器的帶寬。進(jìn)一步地,如果在降低已登錄非會(huì)員用戶的推薦碼率后,如果CDN服務(wù)器的帶寬余量仍然緊張,CDN服務(wù)器的帶寬使用率仍然大于預(yù)設(shè)閾值,可進(jìn)一步考慮降低已登錄會(huì)員用戶的推薦碼率,再進(jìn)一步節(jié)省CDN服務(wù)器的帶寬的同時(shí),保證用戶流暢的播放體驗(yàn)。
本領(lǐng)域技術(shù)人員應(yīng)理解,與所述客戶端有關(guān)的信息不限于客戶端的用戶屬性,還可以包括能夠指示客戶端優(yōu)先等級(jí)的任意其他信息。
在一個(gè)示例中,基于所述客戶端的用戶屬性,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率,具體可包括:如果客戶端的用戶屬性為未登錄用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最低碼率作為針對(duì)所述客戶端的推薦碼率;如果客戶端的用戶屬性為已登錄非會(huì)員用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇中間碼率作為針對(duì)所述客戶端的推薦碼率;如果客戶端的用戶屬性為已登錄會(huì)員用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最高碼率作為針對(duì)所述客戶端的推薦碼率。
舉例而言,如果某種清晰度對(duì)應(yīng)有3種或3種以上的碼率時(shí),可選擇最低碼率、中間碼率和最高碼率分別作為未登錄用戶、已登錄非會(huì)員用戶和已登錄會(huì)員用戶的推薦碼率,在CDN服務(wù)器帶寬余量緊張的情況下,可逐步降低優(yōu)先等級(jí)低的用戶的推薦碼率,在節(jié)省CDN服務(wù)器帶寬的同時(shí),保證用戶流暢的播放體驗(yàn),降低推薦碼率的步驟與上一示例類似,此處為簡明起見,不再贅述。
圖2示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的一個(gè)示例的碼率推薦方法的流程圖。在該示例中,如圖2所示,該碼率推薦方法,還可包括:步驟106,向所述客戶端下發(fā)播放信息,所述播放信息包括所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率的視頻的播放源地址。例如,APP端向服務(wù)端發(fā)送申請(qǐng)標(biāo)清視頻節(jié)目的播放請(qǐng)求,服務(wù)端可響應(yīng)該請(qǐng)求,向APP端下發(fā)包括對(duì)于針對(duì)該視頻節(jié)目的標(biāo)清的碼率為414kb/s的視頻的播放源地址、碼率為282kb/s的視頻的播放源地址的播放信息。APP端在收到這些地址后,可以按照服務(wù)端下發(fā)的通知中所推薦的碼率(例如推薦的碼率為282kb/s),利用碼率為282kb/s的視頻的播放源地址向CDN服務(wù)器請(qǐng)求視頻資源進(jìn)行下載或播放。
實(shí)施例2
圖3示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的碼率推薦方法的流程圖。該方法可應(yīng)用于客戶端,如圖3所示,該碼率推薦方法主要包括:
步驟301,向服務(wù)端發(fā)送播放請(qǐng)求,所述播放請(qǐng)求包括客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;
步驟302,接收所述服務(wù)端下發(fā)的關(guān)于推薦碼率的通知,其中所述通知是基于所述視頻清晰度和與所述客戶端有關(guān)的信息而生成的;
步驟303,根據(jù)所述通知中的推薦碼率確定以所申請(qǐng)的視頻清晰度來播放視頻的碼率。
通過向服務(wù)端發(fā)送播放請(qǐng)求,接收所述服務(wù)端下發(fā)的基于該播放請(qǐng)求而生成的推薦碼率的通知,根據(jù)所述通知中的推薦碼率確定以所申請(qǐng)的視頻清晰度來播放視頻的碼率,根據(jù)本發(fā)明實(shí)施例的碼率推薦方法,使客戶端能夠獲得服務(wù)端依據(jù)CDN服務(wù)器的工作狀態(tài)及客戶端的信息為用戶推薦的、所申請(qǐng)視頻清晰度下的適當(dāng)?shù)拇a率,能夠降低CDN服務(wù)器的帶寬壓力,而且減少用戶播放卡頓,提高用戶的觀看體驗(yàn)。
在一個(gè)示例中,上述步驟301中與所述客戶端相關(guān)的信息可包括所述客戶端的IP地址。關(guān)于服務(wù)端可根據(jù)APP端的IP地址分析出該APP端所歸屬的地域、并可查找歸屬地域的CDN服務(wù)器的帶寬使用率的說明及有益效果可參見實(shí)施例1,此處為簡明起見,不再贅述。
在一個(gè)示例中,上述步驟301中與所述客戶端相關(guān)的信息可包括所述客戶端的用戶屬性,所述用戶屬性包括未登錄用戶、已登錄非會(huì)員用戶和已登錄會(huì)員用戶其中之一。關(guān)于服務(wù)端針對(duì)用戶屬性不同的APP端推薦相應(yīng)的碼率的說明及有益效果可參見實(shí)施例1,此處為簡明起見,不再贅述。
圖4示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一個(gè)示例的碼率推薦方法的流程圖。在該示例中,如圖4所示,該碼率推薦方法還可包括:步驟304,接收所述服務(wù)端下發(fā)的播放信息,所述播放信息包括所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率的視頻的播放源地址;步驟305,利用與所確定的播放視頻的碼率相對(duì)應(yīng)的視頻的播放源地址向CDN服務(wù)器請(qǐng)求視頻資源。關(guān)于APP端利用服務(wù)端下發(fā)的推薦碼率的通知和播放信息向CDN服務(wù)器請(qǐng)求視頻資源的說明及有益效果可參見實(shí)施例1,此處為簡明起見,不再贅述。
實(shí)施例3
圖5示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的碼率推薦裝置的的結(jié)構(gòu)圖。該實(shí)施例的裝置500可用于實(shí)現(xiàn)實(shí)施例1中方法各步驟的操作,其中各種具體示例及其有益效果可參見實(shí)施例1,為簡明起見這里不再重復(fù)描述。
如圖5所示,該實(shí)施例的碼率推薦裝置500包括:獲取部件501,用于獲取與內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器的工作狀態(tài)相關(guān)的統(tǒng)計(jì)信息;接收部件502,用于接收客戶端的播放請(qǐng)求,所述播放請(qǐng)求包括所述客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;查找部件503,用于查找與所述客戶端有關(guān)的信息相匹配的統(tǒng)計(jì)信息;選擇部件504,用于基于所述客戶端申請(qǐng)播放的視頻清晰度、與所述客戶端有關(guān)的信息以及所述相匹配的統(tǒng)計(jì)信息,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率;第一通知部件505,用于向所述客戶端下發(fā)包含所述推薦碼率的通知。
在一個(gè)示例中,所述統(tǒng)計(jì)信息可包括CDN服務(wù)器在各時(shí)間的帶寬使用率,所述帶寬使用率為所述CDN服務(wù)器已使用帶寬與總帶寬的比率。
在一個(gè)示例中,與所述客戶端有關(guān)的信息可包括所述客戶端的IP地址。
在一個(gè)示例中,所述查找部件503可具體用于:查找與所述客戶端的IP地址和當(dāng)前時(shí)間相匹配的CDN服務(wù)器的帶寬使用率。
在一個(gè)示例中,所述選擇部件504可具體用于:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率小于預(yù)設(shè)閾值的情況下,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最高碼率作為針對(duì)所述客戶端的推薦碼率。
在一個(gè)示例中,所述選擇部件504可具體用于:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率大于或等于預(yù)設(shè)閾值的情況下,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最低碼率作為針對(duì)所述客戶端的推薦碼率。
在一個(gè)示例中,與所述客戶端相關(guān)的信息可包括所述客戶端的用戶屬性;其中,所述選擇部件504可具體用于:在所查找到的相匹配的CDN服務(wù)器的帶寬使用率大于或等于預(yù)設(shè)閾值的情況下,基于所述客戶端的用戶屬性,從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇針對(duì)所述客戶端的推薦碼率。
在一個(gè)示例中,所述用戶屬性包括未登錄用戶、已登錄非會(huì)員用戶和已登錄會(huì)員用戶其中之一。
在一個(gè)示例中,所述選擇部件504可具體用于:如果客戶端的用戶屬性為未登錄用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最低碼率作為針對(duì)所述客戶端的推薦碼率;如果客戶端的用戶屬性為已登錄非會(huì)員用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇中間碼率作為針對(duì)所述客戶端的推薦碼率;如果客戶端的用戶屬性為已登錄會(huì)員用戶,則從所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率中選擇最高碼率作為針對(duì)所述客戶端的推薦碼率。
圖6示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的一個(gè)示例的碼率推薦裝置的結(jié)構(gòu)圖。在該示例中,裝置500在圖5所示的基礎(chǔ)上還可包括第二通知部件506,用于向所述客戶端下發(fā)播放信息,所述播放信息包括所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率的視頻的播放源地址。
實(shí)施例4
圖7示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的碼率推薦裝置的結(jié)構(gòu)圖。該實(shí)施例的碼率推薦裝置700可用于實(shí)現(xiàn)實(shí)施例2中方法各步驟的操作,其中各種具體示例及其有益效果可參見實(shí)施例2,為簡明起見這里不再重復(fù)描述。
如圖7所示,該實(shí)施例的碼率推薦裝置700包括:發(fā)送部件701,用于向服務(wù)端發(fā)送播放請(qǐng)求,所述播放請(qǐng)求包括客戶端申請(qǐng)播放的視頻清晰度和與所述客戶端有關(guān)的信息;第一接收部件702,用于接收所述服務(wù)端下發(fā)的關(guān)于推薦碼率的通知,其中所述通知是基于所述視頻清晰度和與所述客戶端有關(guān)的信息而生成的;碼率確定部件703,用于根據(jù)所述通知中的推薦碼率確定以所申請(qǐng)的視頻清晰度來播放視頻的碼率。
在一個(gè)示例中,與所述客戶端相關(guān)的信息可包括所述客戶端的IP地址。
在一個(gè)示例中,與所述客戶端相關(guān)的信息可包括所述客戶端的用戶屬性,所述用戶屬性包括未登錄用戶、已登錄非會(huì)員用戶和已登錄會(huì)員用戶其中之一。
圖8示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一個(gè)示例的碼率推薦裝置的結(jié)構(gòu)圖。在該示例中,碼率推薦裝置700在圖7的基礎(chǔ)上還可包括:第二接收部件704,用于接收所述服務(wù)端下發(fā)的播放信息,所述播放信息包括所述視頻清晰度對(duì)應(yīng)的多個(gè)碼率的視頻的播放源地址;請(qǐng)求部件705,用于利用與所確定的播放視頻的碼率相對(duì)應(yīng)的視頻的播放源地址向CDN服務(wù)器請(qǐng)求視頻資源。
實(shí)施例5
圖9示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的一種碼率推薦設(shè)備的結(jié)構(gòu)框圖。所述碼率推薦設(shè)備1100可以是具備計(jì)算能力的主機(jī)服務(wù)器、個(gè)人計(jì)算機(jī)PC、或者可攜帶的便攜式計(jì)算機(jī)或終端等。本發(fā)明具體實(shí)施例并不對(duì)計(jì)算節(jié)點(diǎn)的具體實(shí)現(xiàn)做限定。
所述碼率推薦設(shè)備1100包括處理器(processor)1110、通信接口(Communications Interface)1120、存儲(chǔ)器(memory)1130和總線1140。其中,處理器1110、通信接口1120、以及存儲(chǔ)器1130通過總線1140完成相互間的通信。
通信接口1120用于與網(wǎng)絡(luò)設(shè)備通信,其中網(wǎng)絡(luò)設(shè)備包括例如虛擬機(jī)管理中心、共享存儲(chǔ)等。
處理器1110用于執(zhí)行程序。處理器1110可能是一個(gè)中央處理器CPU,或者是專用集成電路ASIC(Application Specific Integrated Circuit),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。
存儲(chǔ)器1130用于存放文件。存儲(chǔ)器1130可能包含高速RAM存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤存儲(chǔ)器。存儲(chǔ)器1130也可以是存儲(chǔ)器陣列。存儲(chǔ)器1130還可能被分塊,并且所述塊可按一定的規(guī)則組合成虛擬卷。
在一種可能的實(shí)施方式中,上述程序可為包括計(jì)算機(jī)操作指令的程序代碼。該程序具體可用于實(shí)現(xiàn)實(shí)施例1中方法各步驟的操作或?qū)嵤├?中方法各步驟的操作。
本領(lǐng)域普通技術(shù)人員可以意識(shí)到,本文所描述的實(shí)施例中的各示例性單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來實(shí)現(xiàn)。這些功能究竟以硬件還是軟件形式來實(shí)現(xiàn),取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以針對(duì)特定的應(yīng)用選擇不同的方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
如果以計(jì)算機(jī)軟件的形式來實(shí)現(xiàn)所述功能并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),則在一定程度上可認(rèn)為本發(fā)明的技術(shù)方案的全部或部分(例如對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分)是以計(jì)算機(jī)軟件產(chǎn)品的形式體現(xiàn)的。該計(jì)算機(jī)軟件產(chǎn)品通常存儲(chǔ)在計(jì)算機(jī)可讀取的非易失性存儲(chǔ)介質(zhì)中,包括若干指令用以使得計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各實(shí)施例方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。