本發(fā)明有關(guān)于視頻會(huì)議系統(tǒng)的多點(diǎn)處理器,特別是有關(guān)于依據(jù)實(shí)時(shí)帶寬狀況調(diào)整多點(diǎn)處理器的轉(zhuǎn)發(fā)規(guī)則。
背景技術(shù):
:在視頻會(huì)議中,服務(wù)器的多點(diǎn)控制單元(MultipointControlUnit,MCU)是進(jìn)行視頻會(huì)議的核心設(shè)備。圖1是熟知的視頻會(huì)議系統(tǒng)1的一區(qū)塊圖。如圖1所示,視頻會(huì)議系統(tǒng)1包括服務(wù)器10和多個(gè)終端設(shè)備T1~Tn。服務(wù)器10中的多點(diǎn)控制單元100包括一多點(diǎn)控制器(MultipointController,MC)101和一多點(diǎn)處理器(MultipointProcessor,MP)102。多點(diǎn)控制器101接收會(huì)議控制命令,并設(shè)置編碼參數(shù)給多點(diǎn)處理器102。多點(diǎn)處理器102包括解碼器電路和編碼器電路。多點(diǎn)處理器102依據(jù)多點(diǎn)控制器101所給予的編碼參數(shù)對(duì)來(lái)自不同終端設(shè)備的媒體數(shù)據(jù)(視頻和音頻)進(jìn)行編碼解碼。因此多點(diǎn)處理器102所需的硬件要求很高。另外,編碼和解碼是有損操作,在降低質(zhì)量的同時(shí)也增加了延時(shí)。有鑒于此,本發(fā)明從另一觀點(diǎn)提出一種視頻會(huì)議系統(tǒng)及其對(duì)應(yīng)的適應(yīng)性帶寬調(diào)整方法。技術(shù)實(shí)現(xiàn)要素:本發(fā)明提供一種視頻會(huì)議系統(tǒng)。該視頻會(huì)議系統(tǒng)包括多個(gè)終端設(shè)備和一服務(wù)器。該等終端設(shè)備的每一個(gè)評(píng)估實(shí)時(shí)帶寬狀況,并發(fā)送該實(shí)時(shí)帶寬狀況和會(huì)議需求。該服務(wù)器分別無(wú)線地或有線地連接至每一該終端設(shè)備,以接收每一該終端設(shè)備對(duì)應(yīng)的該實(shí)時(shí)帶寬狀況和該會(huì)議需求。該服務(wù)器的一多點(diǎn)控制單元包括一多點(diǎn)控制器和一多點(diǎn)處理器。該多點(diǎn)控制器接收一會(huì)議控制命令以開(kāi)啟一多方視頻會(huì)議。該多點(diǎn)控制器依據(jù)每一該終端設(shè)備對(duì)應(yīng)的該實(shí)時(shí)帶寬狀況和該會(huì)議需求決定一轉(zhuǎn)發(fā)規(guī)則和每一該終端設(shè)備對(duì)應(yīng)的一分配方案。該多點(diǎn)處理器連接該多點(diǎn)控制器,并接收該轉(zhuǎn)發(fā)規(guī)則以及來(lái)自每一該終端設(shè)備的音頻數(shù)據(jù)流或視頻數(shù)據(jù)流。該多點(diǎn)處理器依據(jù)該轉(zhuǎn)發(fā)規(guī)則轉(zhuǎn)發(fā)每一該終端設(shè)備所需的該音頻數(shù)據(jù)流或該視頻數(shù)據(jù)流。該服務(wù)器將每一該分配方案發(fā)送至對(duì)應(yīng)的該終端設(shè)備。當(dāng)該等終端設(shè)備的任一個(gè)發(fā)送新的該實(shí)時(shí)帶寬狀況或新的該會(huì)議需求時(shí),該多點(diǎn)控制器重新決定該轉(zhuǎn)發(fā)規(guī)則和該等分配方案。本發(fā)明還提供一種服務(wù)器,用以執(zhí)行一多方視頻會(huì)議。該服務(wù)器包括一多點(diǎn)控制單元。該多點(diǎn)控制單元無(wú)線地或有線地連接多個(gè)終端設(shè)備,以接收每一該終端設(shè)備對(duì)應(yīng)的該實(shí)時(shí)帶寬狀況和該會(huì)議需求。該多點(diǎn)控制單元包括一多點(diǎn)控制器和一多點(diǎn)處理器。該多點(diǎn)控制器接收一會(huì)議控制命令以執(zhí)行該多方視頻會(huì)議。該多點(diǎn)控制器依據(jù)每一該終端設(shè)備對(duì)應(yīng)的該實(shí)時(shí)帶寬狀況和該會(huì)議需求決定一轉(zhuǎn)發(fā)規(guī)則和每一該終端設(shè)備對(duì)應(yīng)的一分配方案。該多點(diǎn)處理器連接該多點(diǎn)控制器,并接收該轉(zhuǎn)發(fā)規(guī)則以及來(lái)自每一該終端設(shè)備的音頻數(shù)據(jù)流或視頻數(shù)據(jù)流。該多點(diǎn)處理器依據(jù)該轉(zhuǎn)發(fā)規(guī)則轉(zhuǎn)發(fā)每一該終端設(shè)備所需的該音頻數(shù)據(jù)流或該視頻數(shù)據(jù)流。該服務(wù)器將每一該分配方案發(fā)送至對(duì)應(yīng)的該終端設(shè)備。當(dāng)該等終端設(shè)備的任一個(gè)發(fā)送新的該實(shí)時(shí)帶寬狀況或新的該會(huì)議需求時(shí),該多點(diǎn)控制器重新決定該轉(zhuǎn)發(fā)規(guī)則和該等分配方案。本發(fā)明還提供一種終端設(shè)備。該終端設(shè)備參與一服務(wù)器所執(zhí)行的一多方視頻會(huì)議,并提供估算的帶寬至該服務(wù)器。該終端設(shè)備被配置以執(zhí)行:評(píng)估該終端設(shè)備的硬件能力和數(shù)據(jù)傳輸狀況是否符合要求;若上述硬件能力和上述數(shù)據(jù)傳輸狀況的任一個(gè)不符合要求,且上述終端設(shè)備判斷并未進(jìn)行帶寬上升測(cè)試,則上述終端設(shè)備降低帶寬并重新估算該帶寬;以及若上述硬件能力和上述數(shù)據(jù)傳輸狀況皆符合要求,則上述終端設(shè)備判斷是否正在進(jìn)行帶寬增量測(cè)試。本發(fā)明可提升視頻會(huì)議系統(tǒng)的整體效率。附圖說(shuō)明圖1是熟知的視頻會(huì)議系統(tǒng)1的一區(qū)塊圖。圖2是依據(jù)本發(fā)明的一實(shí)施例實(shí)現(xiàn)一視頻會(huì)議系統(tǒng)2的一區(qū)塊圖。圖3是依據(jù)本發(fā)明的一實(shí)施例說(shuō)明多點(diǎn)控制器201進(jìn)行帶寬分配的一流程圖。圖4A至圖4C是依據(jù)本發(fā)明的一實(shí)施例說(shuō)明應(yīng)用于上述終端設(shè)備的一實(shí)時(shí)帶寬估算方法的一流程圖。其中,附圖中符號(hào)的簡(jiǎn)單說(shuō)明如下:1~視頻會(huì)議系統(tǒng);10~服務(wù)器;100~多點(diǎn)控制單元;101~多點(diǎn)控制器;102~多點(diǎn)處理器;T1-Tn~終端設(shè)備;2~視頻會(huì)議系統(tǒng);20~服務(wù)器;200~多點(diǎn)控制單元;201~多點(diǎn)控制器;202~多點(diǎn)處理器;C1-C10~終端設(shè)備;S301-S308、S401-S411~步驟。具體實(shí)施方式本揭露所附圖示的實(shí)施例或例子將如以下說(shuō)明。本揭露的范疇并非以此為限。本領(lǐng)域技術(shù)人員應(yīng)能知悉在不脫離本揭露的精神和架構(gòu)的前提下,當(dāng)可作些許更動(dòng)、替換和置換。在本揭露的實(shí)施例中,元件符號(hào)可能被重復(fù)地使用,本揭露的數(shù)種實(shí)施例可能共用相同的元件符號(hào),但為一實(shí)施例所使用的特征元件不必然為另一實(shí)施例所使用。圖2是依據(jù)本發(fā)明的一實(shí)施例實(shí)現(xiàn)一視頻會(huì)議系統(tǒng)2的一區(qū)塊圖。在本發(fā)明實(shí)施例中,視頻會(huì)議系統(tǒng)2包括一服務(wù)器20和多個(gè)終端設(shè)備C1~C10。服務(wù)器20分別連接至每一上述終端設(shè)備C1~C10。服務(wù)器20包括多點(diǎn)控制單元(MultipointControlUnit,MCU)200。如圖2所示,多點(diǎn)控制單元200包括一多點(diǎn)控制器(MultipointController,MC)201和一多點(diǎn)處理器(MultipointProcessor,MP)202。多點(diǎn)控制器201連接多點(diǎn)處理器202。服務(wù)器20可以是一云端服務(wù)器。終端設(shè)備C1~C10的每一個(gè)可以是移動(dòng)終端(例如,筆記型計(jì)算機(jī)、平板計(jì)算機(jī)、掌上型計(jì)算機(jī)、智能型手機(jī)、智能型手表等)、區(qū)域網(wǎng)絡(luò)內(nèi)的個(gè)人計(jì)算機(jī)、以及接收、處理和/或傳送串流數(shù)據(jù)資料的任何類(lèi)型的處理器控制裝置。在本發(fā)明實(shí)施例中,多點(diǎn)控制器201接收會(huì)議控制命令,并發(fā)送轉(zhuǎn)發(fā)規(guī)則給多點(diǎn)處理器202。多點(diǎn)控制器201還會(huì)接收與會(huì)終端設(shè)備(例如,終端設(shè)備C1、C4和C5)各自的帶寬和需求,以進(jìn)行帶寬方案的分配。更明確地說(shuō),多點(diǎn)控制器201收集所有終端設(shè)備C1~C10的實(shí)時(shí)帶寬狀況和會(huì)議需求,例如,該實(shí)時(shí)帶寬狀況包括實(shí)時(shí)上行帶寬和實(shí)時(shí)下行帶寬,而該會(huì)議需求包括最高編碼能力(最高視頻級(jí)別)、攝像頭分辨率、或是對(duì)其他終端設(shè)備的視頻申請(qǐng)表等。在本發(fā)明實(shí)施例中,帶寬資源優(yōu)先滿(mǎn)足主視頻申請(qǐng),上述帶寬方案的分配包括給與會(huì)終端設(shè)備的分配方案和給多點(diǎn)處理器202的分配方案。在本發(fā)明實(shí)施例中,上述多點(diǎn)控制器201給與會(huì)終端設(shè)備的分配方案可以包括:是否發(fā)送音頻、是否發(fā)送共享及對(duì)應(yīng)級(jí)別、是否發(fā)送視頻、發(fā)送一路視頻還是兩路視頻以及沒(méi)路視頻級(jí)別。更明確地說(shuō),上述多點(diǎn)控制器201給與會(huì)終端設(shè)備的上行視頻方案包括:(a)不上傳視頻;(b)僅上傳一路視頻(主視頻Z或輔視頻F或共享S);(c)上傳兩路視頻(主視頻Z加輔視頻F,或是共享S加輔視頻F),而上述多點(diǎn)控制器201給與會(huì)終端設(shè)備的下行視頻方案包括:(a)不轉(zhuǎn)發(fā);(b)轉(zhuǎn)發(fā)主視頻Z;(c)轉(zhuǎn)發(fā)輔視頻F;(d)轉(zhuǎn)發(fā)共享S;(e)轉(zhuǎn)發(fā)共享S和輔視頻F。在本發(fā)明實(shí)施例中,上述多點(diǎn)控制器201給多點(diǎn)處理器202的分配方案可以包括:從一個(gè)終端到另一個(gè)終端的轉(zhuǎn)發(fā)規(guī)則(例如,終端設(shè)備C1到終端設(shè)備C5的轉(zhuǎn)發(fā)規(guī)則)、是否轉(zhuǎn)發(fā)音頻、是否轉(zhuǎn)發(fā)共享、是否轉(zhuǎn)發(fā)視頻以及轉(zhuǎn)發(fā)視頻的級(jí)別。在本發(fā)明實(shí)施例中,依據(jù)不同的分辨率(解析度)、幀率、壓縮質(zhì)量和視頻碼率,上述轉(zhuǎn)發(fā)視頻的固定占用帶寬可以分為20種級(jí)別,并表示如以下表(一)。表(一)在本發(fā)明實(shí)施例中,上述轉(zhuǎn)發(fā)視頻的共享占用帶寬依據(jù)不同的視頻碼率分成2種級(jí)別,并表示如以下表(二)。表(二)級(jí)別視頻碼率(kbit/s)01001320但本發(fā)明并不限定于此,本領(lǐng)域技術(shù)人員可以在不脫離本發(fā)明精神之下依據(jù)實(shí)際需求調(diào)整所需級(jí)別。在本發(fā)明實(shí)施例中,多點(diǎn)處理器202只進(jìn)行幀緩沖和幀交換。換言之,多點(diǎn)處理器202不對(duì)音頻流和視頻流進(jìn)行編解碼的處理,而只對(duì)音頻的數(shù)據(jù)流和視頻的數(shù)據(jù)流進(jìn)行轉(zhuǎn)發(fā)與控制。更明確地說(shuō),多點(diǎn)處理器202可以通過(guò)幀緩沖映射演算法查找終端設(shè)備C1~C10對(duì)應(yīng)的緩沖區(qū)。接著,多點(diǎn)處理器202把接收到的音頻和視頻的數(shù)據(jù)流儲(chǔ)存在該緩沖區(qū)之中。多點(diǎn)處理器202再依據(jù)上述會(huì)議控制命令把音頻的數(shù)據(jù)流和視頻的數(shù)據(jù)流轉(zhuǎn)發(fā)至特定的終端設(shè)備。因此,在本發(fā)明實(shí)施例中,多點(diǎn)控制單元200的多點(diǎn)處理器202把對(duì)多路音頻和視頻編解碼的大數(shù)據(jù)量處理工作轉(zhuǎn)移到各個(gè)終端設(shè)備C1~C10之上。各個(gè)終端設(shè)備C1~C10對(duì)相應(yīng)的音頻和視頻編解碼進(jìn)行處理,而多點(diǎn)控制單元200的多點(diǎn)處理器202只對(duì)各路音頻的數(shù)據(jù)流和視頻的數(shù)據(jù)流進(jìn)行儲(chǔ)存和轉(zhuǎn)發(fā)。通過(guò)上述配置,多點(diǎn)控制單元200的負(fù)荷得以減輕,進(jìn)而提升視頻會(huì)議系統(tǒng)2的整體效率。在本發(fā)明實(shí)施例中,上述終端設(shè)備C1~C10的每一個(gè)定期監(jiān)測(cè)自身的中央處理器(CPU)使用率、RTP(Real-timeTransportProtocol,實(shí)時(shí)傳輸協(xié)議)數(shù)據(jù)丟包和RTP數(shù)據(jù)延時(shí)(例如,>2000毫秒),以評(píng)估實(shí)時(shí)帶寬狀況。上述終端設(shè)備C1~C10的每一個(gè)還告知多點(diǎn)控制器201自身的帶寬變化,使多點(diǎn)控制器201據(jù)此重新分配上述帶寬方案。在本發(fā)明實(shí)施例中,在視頻會(huì)議開(kāi)始之前,與會(huì)終端設(shè)備(例如,終端設(shè)備C1、C4和C5)先測(cè)試到多點(diǎn)處理器202的上下行帶寬。在進(jìn)入視頻會(huì)議之后,與會(huì)終端設(shè)備(例如,終端設(shè)備C1、C4和C5)提交測(cè)試的帶寬和想要查看的其他終端設(shè)備的視頻(共享)需求,并對(duì)視頻需求指定優(yōu)先級(jí)。當(dāng)上述與會(huì)終端設(shè)備的需求(例如,需要查看的視頻和共享優(yōu)先級(jí))改變時(shí),多點(diǎn)控制器201會(huì)據(jù)此重新分配上述帶寬方案。在本發(fā)明實(shí)施例中,上述終端設(shè)備C1~C10的每一個(gè)和服務(wù)器20的多點(diǎn)處理器202獨(dú)立進(jìn)行上行和下行實(shí)時(shí)傳輸控制協(xié)議(Real-timeTransportControlProtocol或RTPControlProtocol,以下簡(jiǎn)稱(chēng)RTCP)統(tǒng)計(jì),其統(tǒng)計(jì)內(nèi)容包括計(jì)算丟包和延時(shí),且統(tǒng)計(jì)間隔不超過(guò)2秒。最后,上述終端設(shè)備C1~C10的每一個(gè)再根據(jù)上述RTCP統(tǒng)計(jì)評(píng)估實(shí)時(shí)網(wǎng)絡(luò)狀況。在本發(fā)明實(shí)施例中,當(dāng)上述終端設(shè)備評(píng)估網(wǎng)絡(luò)變差時(shí),上述終端設(shè)備立即停止視頻和共享RTP數(shù)據(jù)發(fā)送,并通告新的評(píng)估帶寬給多點(diǎn)控制器201,以讓多點(diǎn)控制器201重新分配方案。當(dāng)上述終端設(shè)備評(píng)估網(wǎng)絡(luò)狀況正常時(shí),上述終端設(shè)備不調(diào)整評(píng)估帶寬。當(dāng)上述終端設(shè)備評(píng)估網(wǎng)絡(luò)狀態(tài)持續(xù)較好時(shí),上述終端設(shè)備試探性緩慢測(cè)試帶寬增長(zhǎng)。如果在測(cè)試期間出現(xiàn)RTCP丟包,延時(shí)增大,則放棄測(cè)試,帶寬不變。直到6秒測(cè)試結(jié)束,上述終端設(shè)備評(píng)估新的帶寬值給多點(diǎn)控制器201,以讓多點(diǎn)控制器201重新分配方案。在本發(fā)明實(shí)施例中,上述終端設(shè)備C1~C10的每一個(gè)最多只能申請(qǐng)看一路主視頻Z,且最多只能申請(qǐng)看一路共享S。此外上述終端設(shè)備C1~C10的每一個(gè)可以申請(qǐng)看多路輔視頻F。此外帶寬資源需優(yōu)先滿(mǎn)足主視頻Z申請(qǐng)。在本發(fā)明實(shí)施例中,多點(diǎn)控制器201進(jìn)行帶寬預(yù)處理,以限制終端設(shè)備的上行帶寬和下行帶寬之間的差別在5倍以?xún)?nèi)。例如,終端設(shè)備C1提交的上行帶寬值和下行帶寬值分別為100kb和1000kb。經(jīng)過(guò)多點(diǎn)控制器201處理后,終端設(shè)備C1的上行帶寬值和下行帶寬值分別為100kb和500kb。圖3是依據(jù)本發(fā)明的一實(shí)施例說(shuō)明多點(diǎn)控制器201進(jìn)行帶寬分配的一流程圖。在步驟S301中,多點(diǎn)控制器201收集所有終端設(shè)備C1~C10各自的帶寬和需求,例如,上行帶寬、下行帶寬、最高編碼能力(最高視頻級(jí)別)、攝像頭分辨率、或是對(duì)其他終端設(shè)備的視頻申請(qǐng)表等。在步驟S302中,多點(diǎn)控制器201計(jì)算上述終端設(shè)備C1~C10的每一個(gè)的視頻可用帶寬。在本發(fā)明實(shí)施例中,對(duì)于上行而言,至少需要減掉一路音頻帶寬。當(dāng)上行帶寬小于100kb/s(前向揪錯(cuò)(FEC)音頻最低需求60kb/s加上一路Level0視頻40kb/s)時(shí),關(guān)閉終端設(shè)備音頻FEC。在本發(fā)明實(shí)施例中,對(duì)于下行而言,最多減掉三路音頻帶寬(不存在三方以上同時(shí)說(shuō)話的情形)。例如,對(duì)于有音頻的會(huì)議而言,下行一路的音頻固定帶寬(fixAudioBand)預(yù)留60kb/s,下行二路的音頻固定帶寬預(yù)留80kb/s,下行三路的音頻固定帶寬預(yù)留100kb/s,上行的音頻固定帶寬預(yù)留60kb/s。當(dāng)任意終端設(shè)備的下行帶寬小于100kb/s(前述FEC音頻最低需求60kb/s加上一路Level0視頻40kb/s)時(shí),關(guān)閉終端設(shè)備音頻FEC。前述音頻固定帶寬的數(shù)值計(jì)算無(wú)關(guān)于FEC的關(guān)閉與否。此外對(duì)于無(wú)音頻的會(huì)議而言,上下行音頻固定占用帶寬為40kb/s。在本發(fā)明另一實(shí)施例中,當(dāng)任意終端設(shè)備的下行帶寬小于兩方100kb/s、三方120kb/s或四方140kb/s時(shí),關(guān)閉終端設(shè)備所有音頻FEC。在本發(fā)明實(shí)施例中,除去音頻占用外,多點(diǎn)控制器201還預(yù)留15%帶寬以保障音頻。因此,上行視頻可用最大帶寬(MaxVUband)和下行視頻可用最大帶寬(MaxVDband)可分別表示為:MaxVUband=(UBand-fixAudioBand)×85%MaxVDband=(DBand-fixAudioBand)×85%其中fixAudioBand表示音頻固定帶寬,UBand表示上行測(cè)試TCP帶寬,而DBand表示下行測(cè)試TCP帶寬。在步驟S303中,多點(diǎn)控制器201處理共享申請(qǐng)。在本發(fā)明實(shí)施例中,多點(diǎn)控制器201依據(jù)一共享帶寬演算法,接收共享發(fā)送方上行可用帶寬和共享接收方的下行共享可用帶寬列表并依此計(jì)算出共享帶寬(SharingBand)。在本發(fā)明實(shí)施例中,若多點(diǎn)控制器201計(jì)算出的共享帶寬大于0,則表示為發(fā)送共享。在一實(shí)施例中,共享發(fā)送方上行視頻可用帶寬需減去共享帶寬(MaxVUband-sharingBand)。在一實(shí)施例中,若共享接收方下行可用視頻帶寬大于等于共享帶寬,則該終端設(shè)備(亦即該共享接收方)能接收到共享。此時(shí),下行視頻可用帶寬需減去共享帶寬(MaxVDband-sharingBand)。在一實(shí)施例中,當(dāng)共享接收方下行可用視頻帶寬小于共享帶寬時(shí),則該終端設(shè)備(亦即該共享接收方)不接收共享,下行視頻可用帶寬維持不變。在本發(fā)明實(shí)施例中,共享編碼的分辨率和共享源的分辨率一致,并通過(guò)調(diào)整編碼幀率和編碼質(zhì)量,來(lái)確保共享編碼帶寬為共享帶寬(SharingBand)。本發(fā)明的一實(shí)施例舉例說(shuō)明上述共享帶寬演算法。在本實(shí)施例中,假設(shè)有N個(gè)終端設(shè)備(C1~Cn)都接收同一終端設(shè)備C0的共享,多點(diǎn)控制器201通過(guò)上述共享帶寬演算法來(lái)確定共享發(fā)送的帶寬。發(fā)送方(終端設(shè)備C0)的可用上行共享帶寬記為SendBand,而接收方(終端設(shè)備C1~Cn)的可用下行共享帶寬列表則記為RecvBands。多點(diǎn)控制器201輸出的共享帶寬值記為sharingBand,其中當(dāng)sharingBand為0時(shí),多點(diǎn)控制器201不發(fā)送共享。在本實(shí)施例中,若SendBand小于100kb/s,則sharingBand為0。若SendBand大于或等于100kb/s,則,多點(diǎn)控制器201依據(jù)所有接收方(終端設(shè)備C1~Cn)各自的下行共享帶寬,將所有接收方分成三組g1、g2和g3。例如,分成[0,100)、[100,320)和[320,∞)三組。在本實(shí)施例中,若g2不為空集合,則sharingBand為100kb/s。若g3不為空集合且SendBand小于320kb/s,則sharingBand為100kb/s。若g3不為空集合且SendBand大于或等于320kb/s,則sharingBand為320kb/s。當(dāng)g2和g3皆為空集合時(shí),則sharingBand為0。在步驟S304中,多點(diǎn)控制器201根據(jù)上述終端設(shè)備C1~C10的每一個(gè)的帶寬能力,過(guò)濾修改不當(dāng)申請(qǐng)。在本發(fā)明實(shí)施例中,當(dāng)有一終端設(shè)備(例如,終端設(shè)備C1)的MaxVUband<Level0時(shí),該終端設(shè)備(終端設(shè)備C1)若未發(fā)送共享則將上行設(shè)為L(zhǎng)evel0,否則該終端設(shè)備(終端設(shè)備C1)的上行方案確定為不發(fā)送。在本發(fā)明另一實(shí)施例中,若并未有任何終端設(shè)備需要看終端設(shè)備C1,此時(shí)終端設(shè)備C1的上行方案確定為不發(fā)送。在本發(fā)明另一實(shí)施例中,若終端設(shè)備C1同時(shí)被申請(qǐng)了主視頻和輔視頻,但終端設(shè)備C1的MaxVUband<(Level8+Level0),則將該主視頻申請(qǐng)改成輔視頻申請(qǐng)。在本發(fā)明另一實(shí)施例中,若終端設(shè)備C1申請(qǐng)了一路主視頻和K路輔視頻,但是終端設(shè)備C1的MaxVDband<(Level8+K×Level0),則將該主視頻申請(qǐng)改成輔視頻申請(qǐng)。在本發(fā)明另一實(shí)施例中,若終端設(shè)備C1需要發(fā)送共享,則多點(diǎn)控制器201把所有申請(qǐng)終端設(shè)備C1主視頻的申請(qǐng)降低成申請(qǐng)終端設(shè)備C1的輔視頻(避免終端設(shè)備C1編碼三路,降低帶寬和CPU,內(nèi)存占用)。在步驟S305中,多點(diǎn)控制器201計(jì)算下行主視頻Z可用帶寬(MaxVZDband)和上行主視頻Z可用帶寬(MaxVZUband)。在本發(fā)明的一實(shí)施例中,若該終端設(shè)備(例如,終端設(shè)備C1)只被申請(qǐng)了主視頻Z,則MaxVZUband=MaxVUband。在本發(fā)明另一實(shí)施例中,主視頻Z的帶寬占用比例:ZUband%=80%,而輔視頻F的帶寬占用比例:FUband%=1-ZUband%=20%。在本發(fā)明另一實(shí)施例中,若該終端設(shè)備(例如,終端設(shè)備C1)同時(shí)被申請(qǐng)了主視頻Z和輔視頻F,上行主視頻Z可用帶寬(MaxVZUband)=MaxVUband×ZUband%。在本發(fā)明另一實(shí)施例中,若該終端設(shè)備(例如,終端設(shè)備C1)下行申請(qǐng)了主視頻Z和輔視頻F,并記申請(qǐng)輔視頻F的視頻路數(shù)為ReqF,則:下行主視頻Z可用帶寬(MaxVZDband)=MaxVDband×(ZUband%/FUband%)/(ReqF+(ZUband%/FUband%))。在步驟S306中,多點(diǎn)控制器201確定每組上行和下行主視頻Z的具體級(jí)別(Level)。在本發(fā)明一實(shí)施例中,多點(diǎn)控制器201依據(jù)“主視頻演算法”使用該組上行最大主視頻Z的Level(基于MaxVZUband)和其他各組主視頻Z的需求(例如,下行)最大Level,計(jì)算該組上行和下行主視頻Z對(duì)應(yīng)的Level。在本發(fā)明另一實(shí)施例中,多點(diǎn)控制器201還計(jì)算每個(gè)終端設(shè)備的上行剩余帶寬和下行剩余帶寬(減掉主視頻Z的真實(shí)帶寬)。本發(fā)明的一實(shí)施例舉例說(shuō)明上述主視頻演算法。在本實(shí)施例中,假設(shè)有9個(gè)終端設(shè)備(C1~C9)都申請(qǐng)了接收同一終端設(shè)備C0的主視頻,多點(diǎn)控制器201通過(guò)上述主視頻演算法確定終端設(shè)備C0該發(fā)送主視頻的具體級(jí)別(Level)。上述主視頻演算法能夠衡量所有接收終端設(shè)備的能力,以確定哪些終端設(shè)備接收主視頻以及哪些終端設(shè)備接收輔視頻。在本實(shí)施例中,終端設(shè)備C0的主視頻上行極限級(jí)別(Level)定義為L(zhǎng)-C0,并作為所有申請(qǐng)主視頻的終端設(shè)備的下行極限級(jí)別(Level)。最終,所求出主視頻的具體級(jí)別(Level)則記為L(zhǎng)。上述主視頻演算法的執(zhí)行步驟簡(jiǎn)述如下。首先,定義滿(mǎn)意度扣分表如下表(三)。表(三)在本實(shí)施例中,每個(gè)終端設(shè)備(C1~C9)初始的滿(mǎn)意度都為100分。接著,終端設(shè)備的滿(mǎn)意度計(jì)算規(guī)則舉例說(shuō)明如下。例如,終端設(shè)備C1的極限Level是Level12;若主視頻取level12時(shí),終端設(shè)備C1能得到Level12的視頻,此時(shí)滿(mǎn)意度為100;若主視頻取level11時(shí),終端設(shè)備C1能得到Level11的視頻,滿(mǎn)意度為100–5=95;主視頻取level13時(shí),終端設(shè)備C1只能得到輔視頻;若輔視頻輸入是level0,滿(mǎn)意度為100–100=0。接著,多點(diǎn)控制器201把每個(gè)終端設(shè)備(C1~C9)按照各自的極限Level從小到主排序(記為L(zhǎng)-C1、L-C2、L-C3、…、L-C9)。接著,多點(diǎn)控制器201依次取L=L-C1、L=L-C2、…、L=L-Cn,其中L小于等于L-C0,因此多點(diǎn)控制器201計(jì)算出每個(gè)終端設(shè)備的滿(mǎn)意度。接著,多點(diǎn)控制器201在所有L取值中,找出所有終端設(shè)備對(duì)應(yīng)滿(mǎn)意度最高的一個(gè)(如果多個(gè)L總滿(mǎn)意度一樣,則取最高的L),并確定此L為主視頻的具體級(jí)別(Level)。在步驟S307中,多點(diǎn)控制器201確定每組輔視頻F的具體級(jí)別(Level)。在本發(fā)明一實(shí)施例中,多點(diǎn)控制器201對(duì)所有請(qǐng)求F視頻的組排序,將Z視頻申請(qǐng)被降成F視頻申請(qǐng)的組排到后面,然后依次計(jì)算每組的F視頻Level。在本發(fā)明另一實(shí)施例中,若一終端設(shè)備(例如,終端設(shè)備C1)上行已確定發(fā)送主視頻為L(zhǎng)evelZ,則該終端設(shè)備的上行F視頻不得超過(guò)(包含)Level(Z–4)。在本發(fā)明另一實(shí)施例中,假設(shè)有N個(gè)終端設(shè)備需要接收終端設(shè)備C1的F視頻,則從Level0依次往上增加level,判斷每一該終端設(shè)備上下行是否到達(dá)極限。當(dāng)上行(或下行)到達(dá)極限時(shí),則確定該終端設(shè)備上行(或下行)的Level。在本發(fā)明另一實(shí)施例中,若一終端設(shè)備(例如,終端設(shè)備C5)需要發(fā)送輔視頻,記作MinVFDlevel=MIN(需要接收終端設(shè)備C1的輔視頻的客戶(hù)端中的極限Level),則確定終端設(shè)備C1的輔視頻上行帶寬Level為:MIN(MaxVFUlevel,MinVFDlevel),其中MaxVFUlevel為終端設(shè)備C1的帶寬扣除所有音頻占用帶寬、主視頻Z或共享S后所能達(dá)到的最高Level。在本發(fā)明另一實(shí)施例中,如果一終端設(shè)備(例如,終端設(shè)備C4)已確定需要發(fā)送輔視頻,但沒(méi)發(fā)送主視頻,并且上行帶寬和編碼極限足夠發(fā)送LevelZ=MIN(LevelF+4,Level8),則進(jìn)一步計(jì)算是否應(yīng)該發(fā)送Z視頻。在一實(shí)施例中,在請(qǐng)求終端設(shè)備C1的Z視頻的所有終端設(shè)備中各自的下行極限Level都小于LevelZ時(shí),則確定終端設(shè)備C1不需要發(fā)送Z視頻。在一實(shí)施例中,在終端設(shè)備C1的Z視頻的所有終端設(shè)備中,找到下行極限剛好大于LevelZ的終端設(shè)備,并將該下行極限為記為L(zhǎng)evelX,其中LevelX>=MIN(LevelF+4,Level8)。此時(shí),多點(diǎn)控制器201確定終端設(shè)備C1的主視頻LevelF_Z=MIN(LevelX,終端設(shè)備C1的L視頻上行極限,終端設(shè)備C1的編碼極限),并下行轉(zhuǎn)發(fā)Z視頻到該終端設(shè)備(下行極限剛好大于LevelZ的終端設(shè)備)。在步驟S308中,多點(diǎn)控制器201執(zhí)行最后的優(yōu)化操作。此時(shí),所有終端設(shè)備C1~C10各自的上下行分配方案均已確定。最后,多點(diǎn)控制器201找出下行帶寬仍有剩余的終端設(shè)備,并檢查是否足夠?qū)⒁恍┙邮找曨l提高。如果足夠,多點(diǎn)控制器201依據(jù)每個(gè)終端設(shè)備提交申請(qǐng)的優(yōu)先級(jí),依次檢查提高。圖4A至圖4C是依據(jù)本發(fā)明的一實(shí)施例說(shuō)明上述終端設(shè)備(例如,終端設(shè)備C1)的一實(shí)時(shí)帶寬估算方法的一流程圖。在步驟S401中,上述終端設(shè)備評(píng)估硬件能力和數(shù)據(jù)傳輸狀況是否符合要求。在一實(shí)施例中,上述硬件能力包括CPU使用率,例如,上述終端設(shè)備評(píng)估CPU使用率是否大于第一百分比(例如,85%)。在一實(shí)施例中,上述數(shù)據(jù)傳輸狀況包括RTP數(shù)據(jù)傳輸情形,例如,上述終端設(shè)備監(jiān)測(cè)RTP數(shù)據(jù)是否丟包。例如,上述終端設(shè)備監(jiān)測(cè)RTP數(shù)據(jù)延時(shí)是否大于2000毫秒。例如,上述終端設(shè)備監(jiān)測(cè)本次RTP數(shù)據(jù)延時(shí)是否大于前次RTP數(shù)據(jù)延時(shí)500毫秒。若上述終端設(shè)備評(píng)估硬件能力和數(shù)據(jù)傳輸皆符合要求,則進(jìn)入步驟S402;反之若上述終端設(shè)備評(píng)估硬件能力和數(shù)據(jù)傳輸?shù)娜魏我粋€(gè)不符合要求(例如,CPU使用率大于85%、RTP數(shù)據(jù)丟包、RTP數(shù)據(jù)延時(shí)大于2000毫秒或是本次RTP數(shù)據(jù)延時(shí)是否大于前次RTP數(shù)據(jù)延時(shí)500毫秒),則進(jìn)入步驟S403。在步驟S402中,上述終端設(shè)備判斷目前是否正在進(jìn)行帶寬上升測(cè)試。若是進(jìn)入步驟S404;反之進(jìn)入步驟S405。在步驟S404中,上述終端設(shè)備取消帶寬上升測(cè)試。在步驟S405中,上述終端設(shè)備降低實(shí)時(shí)帶寬,并更新提交至多點(diǎn)控制器201的估算帶寬。在步驟S403中,上述終端設(shè)備判斷目前是否正在進(jìn)行帶寬增量測(cè)試。若是進(jìn)入步驟S406;反之進(jìn)入步驟S407。在步驟S406中,上述終端設(shè)備判斷帶寬增量的測(cè)試時(shí)間是否能大于第一既定時(shí)間,例如,6秒。若是進(jìn)入步驟S408;反之進(jìn)入步驟S409。在步驟S408中,上述終端設(shè)備判定帶寬上升測(cè)試成功,并更新提交至多點(diǎn)控制器201的估算帶寬。在步驟S409中,上述終端設(shè)備不調(diào)整帶寬。在步驟S407中,上述終端設(shè)備判斷是否連續(xù)4次以上的RTP數(shù)據(jù)延時(shí)小于第二既定時(shí)間(例如,500毫秒)且兩次RTP數(shù)據(jù)延時(shí)之間的差異小于第三既定時(shí)間(例如,100毫秒)。若是進(jìn)入步驟S410;反之進(jìn)入步驟S409。在步驟S410中,上述終端設(shè)備判斷帶寬利用率是否大于第一百分比(例如,60%)。若是進(jìn)入步驟S411;反之進(jìn)入步驟S409。在步驟S411中,上述終端設(shè)備開(kāi)始進(jìn)行帶寬增量測(cè)試。以上實(shí)施例使用多種角度描述。顯然這里的教示可以多種方式呈現(xiàn),而在范例中揭露的任何特定架構(gòu)或功能僅為一代表性的狀況。根據(jù)本文的教示,任何熟知此技術(shù)的人員應(yīng)理解在本文呈現(xiàn)的內(nèi)容可獨(dú)立利用其他某種型式或綜合多種型式作不同呈現(xiàn)。舉例說(shuō)明,可遵照前文中提到任何方式利用某種裝置或某種方法實(shí)現(xiàn)。一裝置的實(shí)施或一種方式的執(zhí)行可用任何其他架構(gòu)、或功能性、又或架構(gòu)及功能性來(lái)實(shí)現(xiàn)在前文所討論的一種或多種型式上。本領(lǐng)域技術(shù)人員還會(huì)了解在此描述各種說(shuō)明性的邏輯區(qū)塊、模塊、處理器、裝置、電路、以及演算步驟與以上所揭露的各種情況可用的電子硬件(例如用來(lái)源編碼或其他技術(shù)設(shè)計(jì)的數(shù)字實(shí)施、類(lèi)似實(shí)施、或兩者的組合)、各種形式的程序或與指示作為連結(jié)的設(shè)計(jì)碼(在內(nèi)文中為方便而稱(chēng)作“軟件”或“軟件模塊”)、或兩者的組合。為清楚說(shuō)明此硬件及軟件間的可互換性,多種具描述性的元件、方塊、模塊、電路及步驟在以上的描述大致上以其功能性為主。不論此功能以硬件或軟件型式呈現(xiàn),將根據(jù)加注在整體系統(tǒng)上的特定應(yīng)用及設(shè)計(jì)限制而定。熟知此技術(shù)的人員可為每一特定應(yīng)用將描述的功能以各種不同方法作實(shí)現(xiàn),但此實(shí)現(xiàn)的決策不應(yīng)被解讀為偏離本文所揭露的范圍。此外,多種各種說(shuō)明性的邏輯區(qū)塊、模塊、及電路以及在此所揭露的各種情況可實(shí)施在集成電路(integratedcircuit,IC)、存取終端、存取點(diǎn);或由集成電路、存取終端、存取點(diǎn)執(zhí)行。集成電路可由一般用途處理器、數(shù)字信號(hào)處理器(digitalsignalprocessor,DSP)、特定應(yīng)用集成電路(applicationspecificintegratedcircuit,ASIC)、現(xiàn)場(chǎng)可編程門(mén)陣列(fieldprogrammablegatearray,FPGA)或其他可編程邏輯裝置、離散門(mén)(discretegate)或晶體管邏輯(transistorlogic)、離散硬件元件、電子元件、光學(xué)元件、機(jī)械元件、或任何以上的組合的設(shè)計(jì)以完成在此文內(nèi)描述的功能;并可能執(zhí)行存在于集成電路內(nèi)、集成電路外、或兩者皆有的執(zhí)行碼或指令。一般用途處理器可能是微處理器,但也可能是任何常規(guī)處理器、控制器、微控制器、或狀態(tài)機(jī)。處理器可由計(jì)算機(jī)設(shè)備的組合所構(gòu)成,例如:數(shù)字信號(hào)處理器(DSP)及微計(jì)算機(jī)的組合、多組微計(jì)算機(jī)、一組至多組微計(jì)算機(jī)以及數(shù)字信號(hào)處理器核、或任何其他類(lèi)似的配置。在此所揭露程序的任何具體順序或分層的步驟純?yōu)橐慌e例的方式?;谠O(shè)計(jì)上的偏好,必須了解到程序上的任何具體順序或分層的步驟可在此文件所揭露的范圍內(nèi)被重新安排。伴隨的方法權(quán)利要求以一示例順序呈現(xiàn)出各種步驟的元件,也因此不應(yīng)被此所展示的特定順序或階層所限制。實(shí)施方式和權(quán)利要求書(shū)中用以修飾元件的“第一”、“第二”、“第三”等序數(shù)詞的使用本身未暗示任何優(yōu)先權(quán)、優(yōu)先次序、各元件之間的先后次序、或方法所執(zhí)行的步驟的次序,而僅用作標(biāo)識(shí)來(lái)區(qū)分具有相同名稱(chēng)(具有不同序數(shù)詞)的不同元件。以上所述僅為本發(fā)明較佳實(shí)施例,然其并非用以限定本發(fā)明的范圍,任何熟悉本項(xiàng)技術(shù)的人員,在不脫離本發(fā)明的精神和范圍內(nèi),可在此基礎(chǔ)上做進(jìn)一步的改進(jìn)和變化,因此本發(fā)明的保護(hù)范圍當(dāng)以本申請(qǐng)的權(quán)利要求書(shū)所界定的范圍為準(zhǔn)。當(dāng)前第1頁(yè)1 2 3