国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法

      文檔序號(hào):7659297閱讀:175來源:國知局
      專利名稱:一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,屬于通信領(lǐng)域。特別涉及流媒體技術(shù)領(lǐng)域。
      背景技術(shù)
      流媒體是指一種基于流式傳輸技術(shù)來傳輸?shù)拿襟w,流式媒體在播放前并不需要下載整個(gè)文件,其數(shù)據(jù)流隨時(shí)傳送隨時(shí)播放。利用流媒體技術(shù),可以向用戶提供數(shù)字廣播組播電視、VOD點(diǎn)播、視頻錄像等諸多寬帶多媒體業(yè)務(wù)。流媒體系統(tǒng)采用內(nèi)容分發(fā)網(wǎng)絡(luò)架構(gòu),將流媒體服務(wù)器部署到網(wǎng)絡(luò)的相應(yīng)節(jié)點(diǎn)。流媒體服務(wù)器利用流媒體協(xié)議將實(shí)時(shí)的媒體數(shù)據(jù)分發(fā)到流媒體終端,或?qū)⒎菍?shí)時(shí)的內(nèi)容利用傳統(tǒng)的文件傳輸協(xié)議分發(fā)到流媒體終端,由流媒體終端設(shè)備實(shí)時(shí)呈現(xiàn)給用戶。
      在流媒體系統(tǒng)中使用的流媒體服務(wù)器擔(dān)負(fù)著將預(yù)先編碼壓縮或?qū)崟r(shí)編碼壓縮的媒體以流的方式推送到網(wǎng)絡(luò)中去的任務(wù),對其有很高的性能和可靠性要求。在實(shí)際的應(yīng)用過程中,由于媒體源端(實(shí)時(shí)編碼壓縮的設(shè)備)發(fā)送的數(shù)據(jù)包速率不穩(wěn)定,傳輸網(wǎng)絡(luò)延遲、流媒體服務(wù)器設(shè)備處理能力不穩(wěn)定等因素,會(huì)造成流媒體設(shè)備發(fā)送出的數(shù)據(jù)包速率不穩(wěn)定的現(xiàn)象,從而帶來數(shù)據(jù)包到達(dá)流媒體終端的時(shí)間間隔不同于媒體源端發(fā)出數(shù)據(jù)包的時(shí)間間隔的問題。如果流媒體終端直接將接收到的具有這種延遲抖動(dòng)的數(shù)據(jù)包進(jìn)行視音頻解碼,將會(huì)出現(xiàn)聲音的抖動(dòng)或者是視頻上的花屏,直接影響用戶體驗(yàn)。
      目前常規(guī)解決流媒體服務(wù)器發(fā)送數(shù)據(jù)包速率抖動(dòng)的方法是通過將從媒體源端收到的數(shù)據(jù)包進(jìn)行緩沖。如圖1所示,流媒體服務(wù)器收到源端流數(shù)據(jù)包之后,將數(shù)據(jù)包存儲(chǔ)在緩沖器中,而緩沖器以恒定的時(shí)間間隔讀出各數(shù)據(jù)包,以便將不同時(shí)間到達(dá)的數(shù)據(jù)包重建成連續(xù)的數(shù)據(jù)流,并以此恒定的速率將數(shù)據(jù)包發(fā)送給機(jī)頂盒。該發(fā)包速率為流媒體服務(wù)器從源端接收到數(shù)據(jù)包的平均速率,平均速率與流媒體服務(wù)器收包總數(shù)成正比,與收包時(shí)間成反比。
      如果源端在發(fā)送數(shù)據(jù)包過程中出現(xiàn)長時(shí)間的停止發(fā)送現(xiàn)象,在媒體源端恢復(fù)發(fā)送數(shù)據(jù)包之后,則該平均發(fā)送速率不準(zhǔn)確,流媒體服務(wù)器會(huì)通過緩沖器中包的數(shù)量來對發(fā)送速率進(jìn)行調(diào)整,但是在這個(gè)過程中,由于發(fā)送速率的不穩(wěn)定,則恢復(fù)到發(fā)送數(shù)據(jù)包的正常速率所需的時(shí)間比較長,勢必會(huì)出現(xiàn)上述提到的延遲抖動(dòng)問題。

      發(fā)明內(nèi)容
      本發(fā)明所要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)中在媒體源端出現(xiàn)長時(shí)間停止發(fā)送數(shù)據(jù)包,當(dāng)恢復(fù)發(fā)送數(shù)據(jù)包之后,流媒體服務(wù)器發(fā)送數(shù)據(jù)包速率恢復(fù)到正常速率所需的時(shí)間比較長的缺點(diǎn),并解決現(xiàn)有技術(shù)中存在的延遲抖動(dòng)問題。
      為了達(dá)到本發(fā)明所提到的目的,本發(fā)明提供了一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率方法,該方法采取的步驟如下S201、進(jìn)入本次發(fā)包流程時(shí),判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,是的話,結(jié)束所述本次發(fā)包流程,否的話,進(jìn)入步驟S202;S202、當(dāng)本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送數(shù)據(jù)包,否則進(jìn)入步驟S203;S203、判斷總包數(shù)和總有效發(fā)包時(shí)間是否大于調(diào)整閾值,是的話,將所述總包數(shù)和所述總有效發(fā)包時(shí)間乘以調(diào)整系數(shù)并結(jié)束所述本次發(fā)包流程,否的話,結(jié)束所述本次發(fā)包流程。
      所述S201的步驟具體包括發(fā)包開始;判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,如果是,則結(jié)束所述本次發(fā)包流程;如果否,將所述本次發(fā)包時(shí)間加入總有效發(fā)包時(shí)間,并計(jì)算發(fā)包速率,然后進(jìn)入步驟S202。
      所述不發(fā)包閾值是一個(gè)系統(tǒng)設(shè)定的整數(shù);以及,所述緩沖器是指流媒體服務(wù)器存儲(chǔ)未發(fā)送至流媒體終端的數(shù)據(jù)包,即未發(fā)包,所開辟的系統(tǒng)內(nèi)存區(qū)。
      所述總有效發(fā)包時(shí)間是流媒體服務(wù)器發(fā)包的累計(jì)時(shí)間;所述發(fā)包速率與總有效發(fā)包時(shí)間成正比,與總包數(shù)成反比;所述總包數(shù)為未發(fā)包數(shù)與已發(fā)包數(shù)之和。
      所述S202的步驟具體包括當(dāng)所述本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送所述數(shù)據(jù)包到流媒體終端,并對所述未發(fā)包數(shù)減一,所述已發(fā)包數(shù)加一,從所述本次發(fā)包時(shí)間中減去所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間;直到所述本次發(fā)包時(shí)間小于所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),進(jìn)入步驟S203。
      所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間為發(fā)包速率的倒數(shù)。
      所述步驟S203中,所述調(diào)整閾值與所述發(fā)包速率成正比。
      所述步驟S203中,所述總包數(shù)和所述總有效發(fā)包時(shí)間的調(diào)整閾值非必要相同。
      所述步驟S203中,所述調(diào)整系數(shù)相同且必須小于1。
      本發(fā)明,由于沒有把無效的發(fā)包時(shí)間,即流媒體沒有收到媒體源端發(fā)送的數(shù)據(jù)包的時(shí)間統(tǒng)計(jì)到總發(fā)包時(shí)間內(nèi),因此與現(xiàn)有技術(shù)相比,計(jì)算出的媒體平均發(fā)送速率更加精確。
      本發(fā)明,由于將總包數(shù)和總有效發(fā)包時(shí)間隨著時(shí)間的變化,進(jìn)行了動(dòng)態(tài)的調(diào)整,從而增加了最近時(shí)間流媒體服務(wù)器收數(shù)據(jù)包和發(fā)數(shù)據(jù)包數(shù)目的權(quán)重,達(dá)到了媒體源端發(fā)送流數(shù)據(jù)包出現(xiàn)異常情況下,流媒體服務(wù)器可以快速恢復(fù)到正常發(fā)送數(shù)據(jù)包速率的目的。
      綜合以上兩點(diǎn),采用本發(fā)明,可以有效改善流媒體服務(wù)器發(fā)送數(shù)據(jù)包的延遲抖動(dòng)問題,提高了流媒體系統(tǒng)的性能和用戶體驗(yàn)。


      圖1是目前常規(guī)解決流媒體服務(wù)器發(fā)送數(shù)據(jù)包速率抖動(dòng)的方法示意圖;圖2是本發(fā)明控制媒體發(fā)送速率的流程圖;圖3是本發(fā)明的一個(gè)具體實(shí)施例流程圖。
      具體實(shí)施例方式
      下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)行進(jìn)一步說明。
      圖2是本發(fā)明控制媒體發(fā)送速率的流程圖。在本發(fā)明中,通過以下步驟對媒體的發(fā)送速率進(jìn)行控制S201、進(jìn)入本次發(fā)包流程時(shí),判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,是的話,結(jié)束所述本次發(fā)包流程,否的話,進(jìn)入步驟S202;S202、當(dāng)本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送數(shù)據(jù)包,否則進(jìn)入步驟S203;S203、判斷總包數(shù)和總有效發(fā)包時(shí)間是否大于調(diào)整閾值,是的話,將所述總包數(shù)和所述總有效發(fā)包時(shí)間乘以調(diào)整系數(shù)并結(jié)束所述本次發(fā)包流程,否的話,結(jié)束所述本次發(fā)包流程。
      所述S201的步驟具體包括發(fā)包開始;判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,如果是,則結(jié)束所述本次發(fā)包流程;如果否,將所述本次發(fā)包時(shí)間加入總有效發(fā)包時(shí)間,并計(jì)算發(fā)包速率,然后進(jìn)入步驟S202。
      所述不發(fā)包閾值是一個(gè)系統(tǒng)設(shè)定的整數(shù);以及,所述緩沖器是指流媒體服務(wù)器存儲(chǔ)未發(fā)送至流媒體終端的數(shù)據(jù)包,即未發(fā)包,所開辟的系統(tǒng)內(nèi)存區(qū)。
      所述總有效發(fā)包時(shí)間是流媒體服務(wù)器發(fā)包的累計(jì)時(shí)間;所述發(fā)包速率與總有效發(fā)包時(shí)間成正比,與總包數(shù)成反比;所述總包數(shù)為未發(fā)包數(shù)與已發(fā)包數(shù)之和。
      所述S202的步驟具體包括當(dāng)所述本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送所述數(shù)據(jù)包到流媒體終端,并對所述未發(fā)包數(shù)減一,所述已發(fā)包數(shù)加一,從所述本次發(fā)包時(shí)間中減去所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間;直到所述本次發(fā)包時(shí)間小于所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),進(jìn)入步驟S203。
      所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間為發(fā)包速率的倒數(shù)。
      所述步驟S203中,所述調(diào)整閾值與所述發(fā)包速率成正比。
      所述步驟S203中,所述總包數(shù)和所述總有效發(fā)包時(shí)間的調(diào)整閾值非必要相同。
      所述步驟S203中,所述調(diào)整系數(shù)相同且必須小于1。
      圖3是本發(fā)明的一個(gè)具體實(shí)施例流程圖,其步驟具體如下S301,流媒體服務(wù)器接收到媒體源端發(fā)送來的數(shù)據(jù)包后,(流媒體服務(wù)器接收數(shù)據(jù)包,以及對數(shù)據(jù)包的相應(yīng)的處理過程,由于與本發(fā)明要保護(hù)的內(nèi)容無關(guān),所以不在這個(gè)進(jìn)行詳細(xì)說明),將數(shù)據(jù)包放入緩沖器。并等待系統(tǒng)的調(diào)度,進(jìn)行發(fā)送緩沖器中數(shù)據(jù)包到流媒體客戶端的操作。系統(tǒng)從等待狀態(tài)到發(fā)包狀態(tài),進(jìn)入步驟S302。其中流媒體服務(wù)器接受數(shù)據(jù)包并將后者放入緩沖器的操作與等待系統(tǒng)調(diào)度的過程,是同時(shí)進(jìn)行的。并且,進(jìn)入發(fā)包狀態(tài)后,流媒體服務(wù)器不能將數(shù)據(jù)包放入緩沖器,因?yàn)橐獙彌_器中的數(shù)據(jù)包進(jìn)行操作,這樣可以防止緩沖器中的數(shù)據(jù)包數(shù)量動(dòng)態(tài)變化而令數(shù)據(jù)不準(zhǔn)確以及,在進(jìn)入發(fā)包狀態(tài)時(shí),系統(tǒng)需提供本次發(fā)包時(shí)間,該時(shí)間規(guī)定了發(fā)包狀態(tài)的持續(xù)時(shí)間。
      S302,流媒體服務(wù)器將緩沖器中的包數(shù)與系統(tǒng)設(shè)定的不發(fā)包閾值進(jìn)行比較。其中如果前者小于后者,則說明緩沖器中的數(shù)據(jù)包的數(shù)量(未發(fā)包數(shù))沒有達(dá)到發(fā)送的要求,以此可以判斷媒體源端最近沒有數(shù)據(jù)包發(fā)送至流媒體服務(wù)器,所以停止發(fā)送,轉(zhuǎn)至步驟S308。
      如果前者大于后者,則說明緩沖器中的數(shù)據(jù)包的數(shù)量(未發(fā)包數(shù))已經(jīng)達(dá)到發(fā)送的要求,進(jìn)入步驟S303。以及,在本實(shí)施例中,不發(fā)包閾值設(shè)置為1。
      S303,流媒體服務(wù)器將步驟S301中的本次發(fā)包時(shí)間加入到有效發(fā)包時(shí)間中,并計(jì)算發(fā)包速率。其中有效發(fā)包時(shí)間為流媒體服務(wù)器發(fā)送數(shù)據(jù)包的總時(shí)間。并且,
      總包數(shù)為未發(fā)包數(shù)與發(fā)包數(shù)之和。以及,在本實(shí)施例中,發(fā)包速率為單個(gè)包的發(fā)包時(shí)間,即用總有效發(fā)包時(shí)間除以總包數(shù)。
      S304,流媒體服務(wù)器將步驟S303中的發(fā)包速率與步驟S301中的本次發(fā)包時(shí)間進(jìn)行比較。其中如果前者小于后者,說明本次發(fā)包時(shí)間足以發(fā)送一個(gè)數(shù)據(jù)包,進(jìn)入步驟S305。
      如果前者大于后者,說明本次發(fā)包時(shí)間不足以發(fā)送一個(gè)數(shù)據(jù)包,因此,轉(zhuǎn)至步驟S306。其中,發(fā)一個(gè)數(shù)據(jù)包時(shí)間為發(fā)包速率的倒數(shù)。
      S305,發(fā)送數(shù)據(jù)包到流媒體終端。(由于發(fā)送數(shù)據(jù)包到流媒體終端的處理過程與本發(fā)明要保護(hù)的內(nèi)容無關(guān),所以不在這個(gè)進(jìn)行詳細(xì)說明)其中將已發(fā)包數(shù)進(jìn)行加一操作。并且,將未發(fā)包數(shù)進(jìn)行減一操作。以及,將步驟S301中的本次發(fā)包時(shí)間減掉步驟S303中的發(fā)包速率。
      以上操作結(jié)束后,轉(zhuǎn)至步驟S304。
      S306,流媒體服務(wù)器將總包數(shù)和總有效發(fā)包時(shí)間和調(diào)整閾值進(jìn)行比較。
      本實(shí)施例中,總包數(shù)和總有效發(fā)包時(shí)間的調(diào)整閾值為二者是否能夠同時(shí)被2的16次冪整除;如果不滿足上述條件,則轉(zhuǎn)至步驟S308。
      如果滿足上述條件,則進(jìn)入步驟S307。
      S307,流媒體服務(wù)器將總包數(shù)和總有效發(fā)包時(shí)間乘以調(diào)整系數(shù)。
      調(diào)整系數(shù)在本實(shí)施例中為2的負(fù)16次冪。
      改變了總包數(shù)和總有效發(fā)包時(shí)間之后,進(jìn)入步驟S308。
      S308,本次發(fā)包結(jié)束。
      以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包括在本發(fā)明的保護(hù)范圍之內(nèi)。
      權(quán)利要求
      1.一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于,包括S201、進(jìn)入本次發(fā)包流程時(shí),判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,是的話,結(jié)束所述本次發(fā)包流程,否的話,進(jìn)入步驟S202;S202、當(dāng)本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送數(shù)據(jù)包,否則進(jìn)入步驟S203;S203、判斷總包數(shù)和總有效發(fā)包時(shí)間是否大于調(diào)整閾值,是的話,將所述總包數(shù)和所述總有效發(fā)包時(shí)間乘以調(diào)整系數(shù)并結(jié)束所述本次發(fā)包流程,否的話,結(jié)束所述本次發(fā)包流程。
      2.按照權(quán)利要求1所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述S201的步驟具體包括發(fā)包開始;判斷緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值,如果是,則結(jié)束所述本次發(fā)包流程;如果否,將所述本次發(fā)包時(shí)間加入總有效發(fā)包時(shí)間,并計(jì)算發(fā)包速率,然后進(jìn)入步驟S202。
      3.按照權(quán)利要求1或2所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述不發(fā)包閾值是一個(gè)系統(tǒng)設(shè)定的整數(shù);以及,所述緩沖器是指流媒體服務(wù)器存儲(chǔ)未發(fā)送至流媒體終端的數(shù)據(jù)包,即未發(fā)包,所開辟的系統(tǒng)內(nèi)存區(qū)。
      4.按照權(quán)利要求1或2所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述總有效發(fā)包時(shí)間是流媒體服務(wù)器發(fā)包的累計(jì)時(shí)間,所述發(fā)包速率與總有效發(fā)包時(shí)間成正比,與總包數(shù)成反比。
      5.按照權(quán)利要求4所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述總包數(shù)為未發(fā)包數(shù)與已發(fā)包數(shù)之和。
      6.按照權(quán)利要求1所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述S202的步驟具體包括當(dāng)所述本次發(fā)包時(shí)間大于發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),發(fā)送所述數(shù)據(jù)包到流媒體終端,并對所述未發(fā)包數(shù)減一,所述已發(fā)包數(shù)加一,從所述本次發(fā)包時(shí)間中減去所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間;直到所述本次發(fā)包時(shí)間小于所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間時(shí),進(jìn)入步驟S203。
      7.按照權(quán)利要求1或6所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述發(fā)一個(gè)數(shù)據(jù)包的時(shí)間為發(fā)包速率的倒數(shù)。
      8.按照權(quán)利要求1所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述步驟S203中,所述調(diào)整閾值與所述發(fā)包速率成正比。
      9.按照權(quán)利要求1所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述步驟S203中,所述總包數(shù)和所述總有效發(fā)包時(shí)間的調(diào)整閾值非必要相同。
      10.按照權(quán)利要求1所述的一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,其特征在于所述步驟S203中,所述調(diào)整系數(shù)相同且必須小于1。
      全文摘要
      本發(fā)明公開了一種在流媒體系統(tǒng)中控制數(shù)據(jù)包發(fā)送速率的方法,通過增加,對于緩沖器中數(shù)據(jù)包數(shù)量是否小于不發(fā)包閾值的判斷,對于本次發(fā)包時(shí)間是否大于發(fā)一個(gè)數(shù)據(jù)包時(shí)間的判斷,以及對于總包數(shù)和總有效發(fā)包時(shí)間是否大于調(diào)整閾值的判斷,并進(jìn)行相應(yīng)的操作來控制媒體數(shù)據(jù)包的發(fā)送速率。
      文檔編號(hào)H04L12/16GK101090369SQ200710138558
      公開日2007年12月19日 申請日期2007年8月1日 優(yōu)先權(quán)日2007年8月1日
      發(fā)明者桑卓, 陳重奮, 劉繼年 申請人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1