本發(fā)明涉及通信領(lǐng)域,尤其涉及一種智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法及系統(tǒng)。
背景技術(shù):
:現(xiàn)在家庭使用的數(shù)字電視智能網(wǎng)關(guān)(例如智能機頂盒等),將接收的數(shù)字電視信號分兩路或多路輸出。一路碼率不變,通過hdmi直接輸出到電視機,其他路經(jīng)過轉(zhuǎn)碼器轉(zhuǎn)碼降低碼率后通過wifi網(wǎng)絡(luò)分發(fā)給手機、平板電腦等移動終端(若是多路則需要多個轉(zhuǎn)碼器,一個轉(zhuǎn)碼器對應(yīng)一個移動終端)。轉(zhuǎn)碼器通過wifi輸出的視頻數(shù)據(jù),將控制信息封裝成rtcp包,將圖像數(shù)據(jù)封裝成rtp包,形成視頻流,將兩種格式的數(shù)據(jù)包都以udp/ip的方式進行發(fā)送。轉(zhuǎn)碼器有硬件和dsp方式,都受cpu控制,轉(zhuǎn)碼的碼率的大小是固定的,也即cpu設(shè)置的轉(zhuǎn)碼參數(shù)是預(yù)先設(shè)定的(一般都是經(jīng)驗值),比如,一個h.264格式10mbps,1080p高清節(jié)目,轉(zhuǎn)換成h.264格式2mbps,720p準高清,利用wifi輸出分發(fā)給移動終端。由于電視節(jié)目是實時流,采用udp方式發(fā)送,沒有請求重發(fā)的可能性,這樣就存在一個問題,當wifi信號質(zhì)量變差時,圖像畫面質(zhì)量會出現(xiàn)馬賽克或卡頓現(xiàn)象。在實際中有兩種情況最常出現(xiàn):一種是漸變,即移動終端逐步遠離智能網(wǎng)關(guān),wifi信號強度逐步減弱,圖像質(zhì)量逐漸下降,具體表現(xiàn)為馬賽克逐漸增多,最終出現(xiàn)卡頓;還有一種就是從一個房間進入另一個房間出現(xiàn)信號遮擋時的突變,wifi信號強度迅速減弱,圖像質(zhì)量瞬間變差,具體表現(xiàn)為馬賽克突然出現(xiàn)很多,同時伴有嚴重的卡頓。由于智能網(wǎng)關(guān)轉(zhuǎn)碼的碼率固定,在出現(xiàn)網(wǎng)絡(luò)信號質(zhì)量變差時輸出的圖像畫面就會出現(xiàn)馬賽克或卡頓,大大影響傳輸圖像畫面質(zhì)量。技術(shù)實現(xiàn)要素:有鑒于此,有必要針對上述智能網(wǎng)關(guān)碼率固定網(wǎng)絡(luò)信號質(zhì)量變差時輸出的圖像畫面出現(xiàn)馬賽克或卡頓,影響傳輸圖像畫面質(zhì)量的問題,提供一種智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法及系統(tǒng)。本發(fā)明提供的一種智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法,包括如下步驟:s10:在移動終端接收節(jié)目流后,周期性統(tǒng)計丟包數(shù),并與預(yù)設(shè)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在丟包數(shù)區(qū)間范圍內(nèi),則不通知智能網(wǎng)關(guān),如果超出丟包數(shù)區(qū)間的上限則通知智能網(wǎng)關(guān)降低碼率,如果低于丟包數(shù)區(qū)間的下限,則通知智能網(wǎng)關(guān)提高碼率;s20:實時監(jiān)測移動終端接收到的網(wǎng)絡(luò)信號強度,獲取網(wǎng)絡(luò)信號強度的陡變量并與預(yù)設(shè)陡變量進行比較,若超過預(yù)設(shè)陡變量則進行軟中斷觸發(fā)向移動終端發(fā)送中斷請求;s30:在移動終端接收到中斷請求后,停止統(tǒng)計丟包數(shù)并重新開始周期性統(tǒng)計丟包數(shù)。在其中的一個實施方式中,所述步驟s10包括:設(shè)計兩個時間長度的采樣周期,第一時間長度和第二時間長度;所述第一時間長度為長的時間周期,第二時間長度為短的時間周期,用于移動終端首次接收節(jié)目流和出現(xiàn)中斷請求時使用。在其中的一個實施方式中,所述步驟s10包括:預(yù)先通過計算和測試設(shè)定多個檔位碼率下第一時間長度內(nèi)允許丟包數(shù)的丟包數(shù)區(qū)間,來對丟包數(shù)進行比較。在其中的一個實施方式中,所述第一時間長度允許的丟包數(shù)區(qū)間獲取方法具體為:將智能網(wǎng)關(guān)轉(zhuǎn)碼后輸出的節(jié)目流設(shè)置到usb口,通過usb口直接連接到pc機,控制智能網(wǎng)關(guān)設(shè)定多個檔位碼率的節(jié)目流;在pc機上將接收到的數(shù)據(jù)包隨機丟棄,將處理過的節(jié)目流送到圖像監(jiān)視器,進行圖像觀察,同時將處理過的節(jié)目流送到碼流分析儀進行實時分析;選定一個碼率的節(jié)目流輸出,在pc機上逐步加大丟包數(shù),觀察出現(xiàn)的圖像質(zhì)量狀況,若出現(xiàn)的馬賽克超過設(shè)定值,則記錄下此時的丟包數(shù)和碼流分析儀記錄的圖像宏塊丟失數(shù);重復(fù)上述測試多次,對記錄的丟包數(shù)取平均值作為丟包數(shù)區(qū)間的上限值;在第一時間長度內(nèi),模擬增加丟包數(shù)的方法逐漸增加丟包數(shù),在圖像質(zhì)量整體保持良好的情況下記錄此時的丟包數(shù),作為丟包數(shù)區(qū)間的下限值;更換其他檔位碼率測試,得到不同檔位碼率在第一時間長度內(nèi)允許的丟包數(shù)區(qū)間。在其中的一個實施方式中,所述步驟s20具體為:利用wifirssi估計感知技術(shù),通過獲取rssi值來監(jiān)測網(wǎng)絡(luò)質(zhì)量突變情況;在104us內(nèi)進行基帶iq功率積分得到rssi的瞬時值,然后在1秒內(nèi)對8192個rssi的瞬時值進行平均,得到rssi的平均值作為rssi值。本發(fā)明提供的一種智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的系統(tǒng),包括:丟包數(shù)統(tǒng)計模塊,在移動終端接收節(jié)目流后,周期性統(tǒng)計丟包數(shù),并與預(yù)設(shè)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在丟包數(shù)區(qū)間范圍內(nèi),則不通知智能網(wǎng)關(guān),如果超出丟包數(shù)區(qū)間的上限則通知智能網(wǎng)關(guān)降低碼率,如果低于丟包數(shù)區(qū)間的下限,則通知智能網(wǎng)關(guān)提高碼率;網(wǎng)絡(luò)信號強度感知模塊,實時監(jiān)測移動終端接收到的網(wǎng)絡(luò)信號強度,獲取網(wǎng)絡(luò)信號強度的陡變量并與預(yù)設(shè)陡變量進行比較,若超過預(yù)設(shè)陡變量則進行軟中斷觸發(fā)向移動終端發(fā)送中斷請求;丟包數(shù)統(tǒng)計模塊在移動終端接收到中斷請求后,停止統(tǒng)計丟包數(shù)并重新開始周期性統(tǒng)計丟包數(shù)。在其中的一個實施方式中,所述丟包數(shù)統(tǒng)計模塊設(shè)計兩個時間長度的采樣周期,第一時間長度和第二時間長度;所述第一時間長度為長的時間周期,第二時間長度為短的時間周期,用于移動終端首次接收節(jié)目流和出現(xiàn)中斷請求時使用。在其中的一個實施方式中,所述丟包數(shù)統(tǒng)計模塊預(yù)先通過計算和測試設(shè)定多個檔位碼率下第一時間長度內(nèi)允許丟包數(shù)的丟包數(shù)區(qū)間,來對丟包數(shù)進行比較。在其中的一個實施方式中,所述丟包數(shù)統(tǒng)計模塊將智能網(wǎng)關(guān)轉(zhuǎn)碼后輸出的節(jié)目流設(shè)置到usb口,通過usb口直接連接到pc機,控制智能網(wǎng)關(guān)設(shè)定多個檔位碼率的節(jié)目流;在pc機上將接收到的數(shù)據(jù)包隨機丟棄,將處理過的節(jié)目流送到圖像監(jiān)視器,進行圖像觀察,同時將處理過的節(jié)目流送到碼流分析儀進行實時分析;選定一個碼率的節(jié)目流輸出,在pc機上逐步加大丟包數(shù),觀察出現(xiàn)的圖像質(zhì)量狀況,若出現(xiàn)的馬賽克超過設(shè)定值,則記錄下此時的丟包數(shù)和碼流分析儀記錄的圖像宏塊丟失數(shù);重復(fù)上述測試多次,對記錄的丟包數(shù)取平均值作為丟包數(shù)區(qū)間的上限值;在第一時間長度內(nèi),模擬增加丟包數(shù)的方法逐漸增加丟包數(shù),在圖像質(zhì)量整體保持良好的情況下記錄此時的丟包數(shù),作為丟包數(shù)區(qū)間的下限值;更換其他檔位碼率測試,得到不同檔位碼率在第一時間長度內(nèi)允許的丟包數(shù)區(qū)間。在其中的一個實施方式中,所述網(wǎng)絡(luò)信號強度感知模塊利用wifirssi估計感知技術(shù),通過獲取rssi值來監(jiān)測網(wǎng)絡(luò)質(zhì)量突變情況;在104us內(nèi)進行基帶iq功率積分得到rssi的瞬時值,然后在1秒內(nèi)對8192個rssi的瞬時值進行平均,得到rssi的平均值作為rssi值。本發(fā)明智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法及系統(tǒng),利用周期性統(tǒng)計丟包數(shù)和rssi估計感知技術(shù),兩者結(jié)合來對網(wǎng)絡(luò)質(zhì)量出現(xiàn)漸變和突變的情況進行監(jiān)控,根據(jù)監(jiān)測到的網(wǎng)絡(luò)質(zhì)量來調(diào)整轉(zhuǎn)換合適的碼率,以保證輸出視頻圖像的質(zhì)量,避免在網(wǎng)絡(luò)信號質(zhì)量變差時輸出的圖像畫面出現(xiàn)馬賽克或卡頓的現(xiàn)象,保證智能網(wǎng)關(guān)輸出的節(jié)目圖像的質(zhì)量,使節(jié)目畫面都能平滑流暢。附圖說明圖1是一個實施例中的智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法的流程圖;圖2是一個實施例中的智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的系統(tǒng)結(jié)構(gòu)圖。具體實施方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。數(shù)據(jù)包(承載了視頻數(shù)據(jù)的udp包),丟包率(losstolerance或packetlossrate)數(shù)據(jù)傳輸中所丟失數(shù)據(jù)包數(shù)量占所發(fā)送數(shù)據(jù)包的比率;rssi(receivedsignalstrengthindication)接收的信號強度指示。移動終端在一個空間內(nèi)逐步遠離智能網(wǎng)關(guān)時,網(wǎng)絡(luò)信號強度是逐漸衰減的過程,同時也是丟包數(shù)和丟包率逐漸增多的過程。針對這種現(xiàn)象,可利用周期性統(tǒng)計分析丟包數(shù)或者丟包率來分析網(wǎng)絡(luò)質(zhì)量,以計算出適合當前網(wǎng)絡(luò)質(zhì)量的碼率。當移動終端從一個空間進入另一個空間發(fā)生信號遮擋時,移動終端能接收到的網(wǎng)絡(luò)信號強度會瞬間出現(xiàn)大幅度的變化,利用這一特性可以利用rssi估計感知技術(shù),監(jiān)測網(wǎng)絡(luò)信號強度來監(jiān)測網(wǎng)絡(luò)信號發(fā)生突變的情況。本發(fā)明方法利用周期性統(tǒng)計丟包數(shù)和rssi估計感知技術(shù),兩者結(jié)合來對wifi網(wǎng)絡(luò)質(zhì)量進行監(jiān)測,根據(jù)監(jiān)測到的網(wǎng)絡(luò)質(zhì)量來調(diào)整轉(zhuǎn)換碼率,以保證輸出視頻圖像的質(zhì)量,具體的:結(jié)合圖1,首先將移動終端通過wifi網(wǎng)絡(luò)接入智能網(wǎng)關(guān),控制智能網(wǎng)關(guān)根據(jù)移動終端發(fā)送的請求選擇對應(yīng)的節(jié)目,按照預(yù)先設(shè)定的碼率對節(jié)目進行轉(zhuǎn)碼并通過wifi網(wǎng)絡(luò)將節(jié)目流發(fā)送給移動終端。然后步驟s10:在移動終端接收節(jié)目流后,周期性統(tǒng)計丟包數(shù),并與預(yù)設(shè)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在丟包數(shù)區(qū)間范圍內(nèi),則不通知智能網(wǎng)關(guān),如果超出丟包數(shù)區(qū)間的上限則通知智能網(wǎng)關(guān)降低碼率,如果低于丟包數(shù)區(qū)間的下限,則通知智能網(wǎng)關(guān)提高碼率。步驟s10周期性統(tǒng)計丟包數(shù)來分析網(wǎng)絡(luò)質(zhì)量漸變情況。周期性對丟包數(shù)目進行統(tǒng)計能夠避免瞬間丟包數(shù)過大而產(chǎn)生誤判。丟包數(shù)采用周期性統(tǒng)計,能夠屏蔽因為隨機丟包而導(dǎo)致的誤判,采樣周期越長,統(tǒng)計就越準確。根據(jù)應(yīng)用的實際情況,該步驟設(shè)計兩個時間長度的采樣周期,第一時間長度t1和第二時間長度ts。其中ts為短的時間周期(數(shù)秒),用于移動終端首次接收節(jié)目流和出現(xiàn)中斷請求時使用,主要是對新的網(wǎng)絡(luò)環(huán)境進行丟包數(shù)的及時采集,以便快速評估出網(wǎng)絡(luò)質(zhì)量。tl為長的時間周期(數(shù)倍于ts),以便比較精確統(tǒng)計丟包數(shù)。由于引起視頻播放出現(xiàn)馬賽克和卡頓現(xiàn)象的最直接原因就是出現(xiàn)數(shù)據(jù)包丟失,丟包數(shù)的大小直接影響移動終端節(jié)目的圖像質(zhì)量。在無線通信環(huán)境影響丟包數(shù)的兩個關(guān)鍵因素:碼率和信號強度,碼率越大丟包越多,信號強度越小,丟包越大。如果將丟包數(shù)控制在一個合理的范圍內(nèi),視頻觀看就會有好的效果。故該步驟預(yù)先通過計算和測試設(shè)定多個檔位碼率下第一時間長度tl內(nèi)允許丟包數(shù)的丟包數(shù)區(qū)間,來對丟包數(shù)進行比較。具體的,第一時間長度tl允許的丟包數(shù)區(qū)間獲取方法如下:將智能網(wǎng)關(guān)轉(zhuǎn)碼后輸出的節(jié)目流設(shè)置到usb口,通過usb口直接連接到pc機(目的是將外界對網(wǎng)絡(luò)的干擾降到最低),控制智能網(wǎng)關(guān)設(shè)定多個檔位碼率(a/b/c……n)的節(jié)目流。在pc機上將接收到的數(shù)據(jù)包隨機丟棄(模擬實際wifi網(wǎng)絡(luò)的丟包情況),將處理過的節(jié)目流送到圖像監(jiān)視器,進行圖像觀察,同時將處理過的節(jié)目流送到碼流分析儀進行實時分析。丟包數(shù)目可以設(shè)定并可實現(xiàn)動態(tài)調(diào)整,在tl周期內(nèi),對丟包數(shù)按照時間軸隨機分布設(shè)置,盡可能模擬網(wǎng)絡(luò)出現(xiàn)丟包的情況。碼流分析儀用于記錄因數(shù)據(jù)包丟失而產(chǎn)生的圖像宏塊丟失數(shù)。因為圖像幀的丟失會引起圖像停頓,圖像宏塊的丟失會出現(xiàn)馬賽克,出現(xiàn)馬賽克的概率大許多,因此對圖像宏塊丟失數(shù)的統(tǒng)計,可以直接反映圖像質(zhì)量。選定一個碼率(比如b)的節(jié)目流輸出,在pc機上逐步加大丟包數(shù),觀察出現(xiàn)的圖像質(zhì)量狀況,若出現(xiàn)的馬賽克超過設(shè)定值,則認為是一個劣化狀態(tài),記錄下此時的丟包數(shù)和碼流分析儀記錄的圖像宏塊丟失數(shù)。重復(fù)上述測試多次,對記錄的丟包數(shù)取平均值作為丟包數(shù)區(qū)間的上限值。在第一時間長度tl內(nèi),模擬增加丟包數(shù)的方法逐漸增加丟包數(shù),在圖像質(zhì)量整體保持良好的情況下記錄此時的丟包數(shù),作為丟包數(shù)區(qū)間的下限值。更換其他檔位碼率測試,得到不同檔位碼率在第一時間長度內(nèi)允許的丟包數(shù)區(qū)間。結(jié)合表1,將碼率自大而小,設(shè)置成若干檔,例如:a、b、c……n,每檔降低一定間隔的碼率??紤]到丟包數(shù)有一個可接受范圍的實際情況,分別設(shè)定丟包數(shù)區(qū)間的上限丟包數(shù)和下限丟包數(shù)。如果丟包數(shù)超出上限,就要降低碼率,如果丟包數(shù)小于下限,則可以提高碼率。以a檔為例,對應(yīng)的允許的丟包數(shù)區(qū)間為ax~az,其中az是a檔碼率下可接受丟包數(shù)的上限,ax是下限。表1視頻碼率檔級允許的丟包數(shù)區(qū)間aax~azbbx~bzccx~cz…………nnx~nz移動終端接收到節(jié)目流后,開始解碼播放,同時周期性統(tǒng)計丟包數(shù)。如果是首次接收節(jié)目流,則采樣周期為第二時間長度ts,以便快速對當前網(wǎng)絡(luò)質(zhì)量做出判斷,隨后將采樣周期設(shè)為第一時間長度tl,以提高統(tǒng)計的精確度。統(tǒng)計丟包數(shù)并與各自對應(yīng)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在當前碼率允許的丟包數(shù)區(qū)間內(nèi),則不通知智能網(wǎng)關(guān),如果丟包數(shù)超出上限則通知降低碼率,若低于下限,則通知提高碼率。另外,若丟包數(shù)超出上限在設(shè)定范圍內(nèi),則直接降低碼率到下一檔,若丟包數(shù)超出上限超出設(shè)定范圍,則至少降低兩檔碼率。假設(shè)現(xiàn)在的播放碼率在a檔,此時丟包數(shù)為p。如果p只是略大于az,則直接轉(zhuǎn)到b檔,如果p大于az較多,表明網(wǎng)絡(luò)質(zhì)量比較差,則可以考慮先轉(zhuǎn)到c檔,先保證有一個可以正常收看的效果,待在c檔tl時長后,再評估是否需要將碼率轉(zhuǎn)換到b檔或d檔。當移動終端接收轉(zhuǎn)碼后的節(jié)目流時,先緩存數(shù)據(jù)直到接收到一個完整的圖像i幀,再開始解碼圖像。步驟s20:實時監(jiān)測移動終端接收到的網(wǎng)絡(luò)信號強度,獲取網(wǎng)絡(luò)信號強度的陡變量并與預(yù)設(shè)陡變量進行比較,若超過預(yù)設(shè)陡變量則進行軟中斷觸發(fā)向移動終端發(fā)送中斷請求。步驟s20利用wifirssi估計感知技術(shù),通過獲取rssi值來監(jiān)測網(wǎng)絡(luò)質(zhì)量突變情況。移動終端接收的無線網(wǎng)絡(luò)信號強度,屬于mac層,rssi參數(shù)受到三個因素影響:路徑衰減、遮擋、多徑效應(yīng),因此通過對rssi參數(shù)的分析可以一定程度反映出網(wǎng)絡(luò)質(zhì)量。由于rssi值的獲取是在反向通道基帶接收濾波器之后進行,為了獲取反向信號的特征,該步驟在104us內(nèi)進行基帶iq功率積分得到rssi的瞬時值,然后在1秒內(nèi)對8192個rssi的瞬時值進行平均,得到rssi的平均值作為rssi值。由于wifi的rssi值在擱置不動的情況下都會出現(xiàn)一定幅度的波動,因此簡單的波動不能作為判斷網(wǎng)絡(luò)環(huán)境發(fā)生了變化的依據(jù)。故預(yù)先設(shè)定一個預(yù)設(shè)陡變量作為發(fā)生突變的判斷標準,預(yù)設(shè)陡變量的大小可以通過實驗測試來評估設(shè)定。通常情況移動終端從一個空間環(huán)境進入另一個有遮擋的空間時間很短,往往不會超過1秒。為此,該步驟設(shè)計軟件中斷程序駐留在移動終端中,每隔1秒接收一次rssi值,如果在1~3秒內(nèi)出現(xiàn)陡變則發(fā)出中斷請求。步驟s30:在移動終端接收到中斷請求后,停止統(tǒng)計丟包數(shù)并重新開始周期性統(tǒng)計丟包數(shù)。該智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的方法,利用周期性統(tǒng)計丟包數(shù)和rssi估計感知技術(shù),兩者結(jié)合來對網(wǎng)絡(luò)質(zhì)量出現(xiàn)漸變和突變的情況進行監(jiān)控,根據(jù)監(jiān)測到的網(wǎng)絡(luò)質(zhì)量來調(diào)整轉(zhuǎn)換合適的碼率,以保證輸出視頻圖像的質(zhì)量,避免在網(wǎng)絡(luò)信號質(zhì)量變差時輸出的圖像畫面出現(xiàn)馬賽克或卡頓的現(xiàn)象,保證智能網(wǎng)關(guān)輸出的節(jié)目圖像的質(zhì)量,使節(jié)目畫面都能平滑流暢。同時,本發(fā)明還提供一種智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的系統(tǒng),如圖2所示,該系統(tǒng)包括:丟包數(shù)統(tǒng)計模塊100,在移動終端接收節(jié)目流后,周期性統(tǒng)計丟包數(shù),并與預(yù)設(shè)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在丟包數(shù)區(qū)間范圍內(nèi),則不通知智能網(wǎng)關(guān),如果超出丟包數(shù)區(qū)間的上限則通知智能網(wǎng)關(guān)降低碼率,如果低于丟包數(shù)區(qū)間的下限,則通知智能網(wǎng)關(guān)提高碼率。丟包數(shù)統(tǒng)計模塊100周期性統(tǒng)計丟包數(shù)來分析網(wǎng)絡(luò)質(zhì)量漸變情況。周期性對丟包數(shù)目進行統(tǒng)計能夠避免瞬間丟包數(shù)過大而產(chǎn)生誤判。丟包數(shù)采用周期性統(tǒng)計,能夠屏蔽因為隨機丟包而導(dǎo)致的誤判,采樣周期越長,統(tǒng)計就越準確。根據(jù)應(yīng)用的實際情況,丟包數(shù)統(tǒng)計模塊100設(shè)計兩個時間長度的采樣周期,第一時間長度t1和第二時間長度ts。其中ts是一個比較短的時間周期(數(shù)秒),用于移動終端首次接收節(jié)目流和出現(xiàn)中斷請求時使用,主要是對新的網(wǎng)絡(luò)環(huán)境進行丟包數(shù)的及時采集,以便快速評估出網(wǎng)絡(luò)質(zhì)量。tl是一個比較長的時間周期(數(shù)倍于ts),以便比較精確統(tǒng)計丟包數(shù)。由于引起視頻播放出現(xiàn)馬賽克和卡頓現(xiàn)象的最直接原因就是出現(xiàn)數(shù)據(jù)包丟失,丟包數(shù)的大小直接影響移動終端節(jié)目的圖像質(zhì)量。在無線通信環(huán)境影響丟包數(shù)的兩個關(guān)鍵因素:碼率和信號強度,碼率越大丟包越多,信號強度越小,丟包越大。如果將丟包數(shù)控制在一個合理的范圍內(nèi),視頻觀看就會有好的效果。故丟包數(shù)統(tǒng)計模塊100預(yù)先通過計算和測試設(shè)定多個檔位碼率下第一時間長度tl內(nèi)允許丟包數(shù)的丟包數(shù)區(qū)間,來對丟包數(shù)進行比較。具體的,丟包數(shù)統(tǒng)計模塊100設(shè)定第一時間長度tl允許的丟包數(shù)區(qū)間方式如下:丟包數(shù)統(tǒng)計模塊100將智能網(wǎng)關(guān)轉(zhuǎn)碼后輸出的節(jié)目流設(shè)置到usb口,通過usb口直接連接到pc機(目的是將外界對網(wǎng)絡(luò)的干擾降到最低),控制智能網(wǎng)關(guān)設(shè)定多個檔位碼率(a/b/c……n)的節(jié)目流。丟包數(shù)統(tǒng)計模塊100在pc機上將接收到的數(shù)據(jù)包隨機丟棄(模擬實際wifi網(wǎng)絡(luò)的丟包情況),將處理過的節(jié)目流送到圖像監(jiān)視器,進行圖像觀察,同時將處理過的節(jié)目流送到碼流分析儀進行實時分析。丟包數(shù)目可以設(shè)定并可實現(xiàn)動態(tài)調(diào)整,在tl周期內(nèi),對丟包數(shù)按照時間軸隨機分布設(shè)置,盡可能模擬網(wǎng)絡(luò)出現(xiàn)丟包的情況。碼流分析儀用于記錄因數(shù)據(jù)包丟失而產(chǎn)生的圖像宏塊丟失數(shù)。因為圖像幀的丟失會引起圖像停頓,圖像宏塊的丟失會出現(xiàn)馬賽克,出現(xiàn)馬賽克的概率大許多,因此對圖像宏塊丟失數(shù)的統(tǒng)計,可以直接反映圖像質(zhì)量。丟包數(shù)統(tǒng)計模塊100選定一個碼率(比如b)的節(jié)目流輸出,在pc機上逐步加大丟包數(shù),觀察出現(xiàn)的圖像質(zhì)量狀況,若出現(xiàn)的馬賽克超過設(shè)定值,則認為是一個劣化狀態(tài),記錄下此時的丟包數(shù)和碼流分析儀記錄的圖像宏塊丟失數(shù)。重復(fù)上述測試多次,丟包數(shù)統(tǒng)計模塊100對記錄的丟包數(shù)取平均值作為丟包數(shù)區(qū)間的上限值。在第一時間長度tl內(nèi),丟包數(shù)統(tǒng)計模塊100模擬增加丟包數(shù)的方法逐漸增加丟包數(shù),在圖像質(zhì)量整體保持良好的情況下記錄此時的丟包數(shù),作為丟包數(shù)區(qū)間的下限值。更換其他碼率測試,得到不同檔位碼率在tl時間段內(nèi)允許的丟包數(shù)區(qū)間。結(jié)合表1,將碼率自大而小,設(shè)置成若干檔,例如:a、b、c……n,每檔降低一定間隔的碼率??紤]到丟包數(shù)有一個可接受范圍的實際情況,分別設(shè)定丟包數(shù)區(qū)間的上限丟包數(shù)和下限丟包數(shù)。如果丟包數(shù)超出上限,就要降低碼率,如果丟包數(shù)小于下限,則可以提高碼率。以a檔為例,對應(yīng)的允許的丟包數(shù)區(qū)間為ax~az,其中az是a檔碼率下可接受丟包數(shù)的上限,ax是下限。表1移動終端接收到節(jié)目流后,開始解碼播放,同時周期性統(tǒng)計丟包數(shù)。如果是首次接收節(jié)目流,則采樣周期為第二時間長度ts,以便快速對當前網(wǎng)絡(luò)質(zhì)量做出判斷,隨后將采樣周期設(shè)為第一時間長度tl,以提高統(tǒng)計的精確度。丟包數(shù)統(tǒng)計模塊100統(tǒng)計丟包數(shù)并與各自對應(yīng)的丟包數(shù)區(qū)間進行比較,如果丟包數(shù)在當前碼率允許的丟包數(shù)區(qū)間內(nèi),則不通知智能網(wǎng)關(guān),如果丟包數(shù)超出上限則通知降低碼率,若低于下限,則通知提高碼率。另外,若丟包數(shù)超出上限在設(shè)定范圍內(nèi),丟包數(shù)統(tǒng)計模塊100則直接降低碼率到下一檔,若丟包數(shù)超出上限超出設(shè)定范圍,丟包數(shù)統(tǒng)計模塊100則至少降低兩檔碼率。假設(shè)現(xiàn)在的播放碼率在a檔,此時丟包數(shù)為p。如果p只是略大于az,則直接轉(zhuǎn)到b檔,如果p大于az較多,表明網(wǎng)絡(luò)質(zhì)量比較差,則可以考慮先轉(zhuǎn)到c檔,先保證有一個可以正常收看的效果,待在c檔tl時長后,再評估是否需要將碼率轉(zhuǎn)換到b檔或d檔。當移動終端接收轉(zhuǎn)碼后的節(jié)目流時,先緩存數(shù)據(jù)直到接收到一個完整的圖像i幀,再開始解碼圖像。網(wǎng)絡(luò)信號強度感知模塊200,實時監(jiān)測移動終端接收到的網(wǎng)絡(luò)信號強度,獲取網(wǎng)絡(luò)信號強度的陡變量并與預(yù)設(shè)陡變量進行比較,若超過預(yù)設(shè)陡變量則進行軟中斷觸發(fā)向移動終端發(fā)送中斷請求。網(wǎng)絡(luò)信號強度感知模塊200利用wifirssi估計感知技術(shù),通過獲取rssi值來監(jiān)測網(wǎng)絡(luò)質(zhì)量突變情況。移動終端接收的無線網(wǎng)絡(luò)信號強度,屬于mac層,rssi參數(shù)受到三個因素影響:路徑衰減、遮擋、多徑效應(yīng),因此通過對rssi參數(shù)的分析可以一定程度反映出網(wǎng)絡(luò)質(zhì)量。由于rssi值的獲取是在反向通道基帶接收濾波器之后進行,為了獲取反向信號的特征,網(wǎng)絡(luò)信號強度感知模塊200在104us內(nèi)進行基帶iq功率積分得到rssi的瞬時值,然后在1秒內(nèi)對8192個rssi的瞬時值進行平均,得到rssi的平均值作為rssi值。由于wifi的rssi值在擱置不動的情況下都會出現(xiàn)一定幅度的波動,因此簡單的波動不能作為判斷網(wǎng)絡(luò)環(huán)境發(fā)生了變化的依據(jù)。故網(wǎng)絡(luò)信號強度感知模塊200預(yù)先設(shè)定一個預(yù)設(shè)陡變量作為發(fā)生突變的判斷標準,預(yù)設(shè)陡變量的大小可以通過實驗測試來評估設(shè)定。通常情況移動終端從一個空間環(huán)境進入另一個有遮擋的空間時間很短,往往不會超過1秒。為此,網(wǎng)絡(luò)信號強度感知模塊200設(shè)計軟件中斷程序駐留在移動終端中,每隔1秒接收一次rssi值,如果在1~3秒內(nèi)出現(xiàn)陡變則發(fā)出中斷請求。在移動終端接收到中斷請求后,丟包數(shù)統(tǒng)計模塊100停止統(tǒng)計丟包數(shù)并重新開始周期性統(tǒng)計丟包數(shù)。該智能網(wǎng)關(guān)動態(tài)轉(zhuǎn)換碼率的系統(tǒng),利用周期性統(tǒng)計丟包數(shù)和rssi估計感知技術(shù),兩者結(jié)合來對網(wǎng)絡(luò)質(zhì)量出現(xiàn)漸變和突變的情況進行監(jiān)控,根據(jù)監(jiān)測到的網(wǎng)絡(luò)質(zhì)量來調(diào)整轉(zhuǎn)換合適的碼率,以保證輸出視頻圖像的質(zhì)量,避免在網(wǎng)絡(luò)信號質(zhì)量變差時輸出的圖像畫面出現(xiàn)馬賽克或卡頓的現(xiàn)象,保證智能網(wǎng)關(guān)輸出的節(jié)目圖像的質(zhì)量,使節(jié)目畫面都能平滑流暢。以上僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。當前第1頁12