本發(fā)明涉及視頻編解碼集群技術(shù)領(lǐng)域,特別是涉及一種編解碼集群傳輸視頻流的方法和系統(tǒng)。
背景技術(shù):視頻編解碼集群系統(tǒng)包括多個(gè)編碼設(shè)備、多個(gè)解碼設(shè)備和用于連接編碼設(shè)備與解碼設(shè)備的網(wǎng)絡(luò)。其中編碼設(shè)備用于從前端采集視頻數(shù)據(jù)和將視頻數(shù)據(jù)壓縮為視頻流,并通過兩者間的網(wǎng)絡(luò)將視頻流傳輸?shù)浇獯a設(shè)備,解碼設(shè)備用于將視頻流解壓后輸出到后端進(jìn)行顯示。目前,在編解碼集群系統(tǒng)中主要有以下三種傳輸視頻流的方式:一、解碼設(shè)備與編碼設(shè)備間通過建立TCP(TransmissionControlProtocol,傳輸控制協(xié)議)或者UDP(UserDatagramProtocol,用戶數(shù)據(jù)包協(xié)議)連接傳輸視頻流;二、編碼設(shè)備在某一組播地址向解碼設(shè)備發(fā)送視頻流;三、編碼設(shè)備與解碼設(shè)備通過RTSP(RealTimeStreamingProtocol,實(shí)時(shí)流媒體協(xié)議)傳輸視頻流。但是,多個(gè)解碼設(shè)備在短時(shí)段內(nèi)向同一個(gè)編碼設(shè)備請(qǐng)求同一視頻流時(shí),第一種方式中,由于編碼設(shè)備的網(wǎng)絡(luò)帶寬有限,在同一時(shí)刻其只能將其視頻流發(fā)送給有限數(shù)量的解碼設(shè)備,而且向多個(gè)解碼設(shè)備發(fā)送視頻流將影響其編碼效率;第二種方式,只能在局域網(wǎng)中傳輸視頻流;第三種方式中,向多個(gè)解碼設(shè)備傳送視頻流,同樣會(huì)因占用網(wǎng)絡(luò)帶寬而降低編碼效率。
技術(shù)實(shí)現(xiàn)要素:基于此,有必要針對(duì)上述現(xiàn)有技術(shù)中向多個(gè)解碼設(shè)備傳輸同一視頻流時(shí)影響編碼效率或無法跨廣域網(wǎng)的問題,提供一種編解碼集群傳輸視頻流的方法和系統(tǒng)。一種編解碼集群傳輸視頻流的方法,包括:獲取預(yù)設(shè)時(shí)段內(nèi)向多個(gè)編碼設(shè)備中的第一編碼設(shè)備請(qǐng)求視頻流的解碼設(shè)備的數(shù)量;請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量高于預(yù)設(shè)值時(shí),從多個(gè)編碼設(shè)備中除所述第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備;將所述視頻流發(fā)送至選取的編碼設(shè)備,通過所述選取的編碼設(shè)備將所述視頻流傳送至對(duì)應(yīng)的解碼設(shè)備。一種編解碼集群傳輸視頻流的系統(tǒng),包括:計(jì)數(shù)模塊,用于獲取預(yù)設(shè)時(shí)段內(nèi)向多個(gè)編碼設(shè)備中的第一編碼設(shè)備請(qǐng)求視頻流的解碼設(shè)備的數(shù)量;第一控制模塊,用于在請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量高于預(yù)設(shè)值時(shí),從多個(gè)編碼設(shè)備中除所述第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備;第二控制模塊,用于將所述視頻流發(fā)送至選取的編碼設(shè)備,通過所述選取的編碼設(shè)備將所述視頻流傳送至對(duì)應(yīng)的解碼設(shè)備。上述編解碼集群傳輸視頻流的方法和系統(tǒng),通過借助編解碼集群中其它解碼設(shè)備,可在不影響編碼設(shè)備的編碼效率和網(wǎng)絡(luò)帶寬負(fù)載的情況下,通過交換機(jī)和路由器等網(wǎng)絡(luò)設(shè)備的支持能跨廣域網(wǎng)向多個(gè)解碼設(shè)備同時(shí)傳輸同一視頻流。附圖說明圖1是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例一的流程示意圖;圖2是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例二的流程示意圖;圖3是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例三的流程示意圖;圖4是本發(fā)明編解碼集群傳輸視頻流的系統(tǒng)優(yōu)選實(shí)施例的結(jié)構(gòu)示意圖。具體實(shí)施方式下面以具體實(shí)施例的方式對(duì)本發(fā)明的方案進(jìn)行詳細(xì)描述。圖1所示,是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例一的流程示意圖。所述編解碼集群傳輸視頻流的方法包括以下步驟:步驟101,獲取預(yù)設(shè)時(shí)段內(nèi)向多個(gè)編碼設(shè)備中的第一編碼設(shè)備請(qǐng)求視頻流的解碼設(shè)備的數(shù)量。所述預(yù)設(shè)時(shí)段,優(yōu)選地可以是3秒、5秒、10秒或30秒等,可根據(jù)解碼設(shè)備請(qǐng)求視頻流的頻率或第一編碼設(shè)備的一些傳輸屬性設(shè)定。所述第一編碼設(shè)備可以是所述多個(gè)編碼設(shè)備中的任意一個(gè)編碼設(shè)備。在本步驟中,優(yōu)選地,在預(yù)設(shè)時(shí)段內(nèi),可根據(jù)解碼設(shè)備的IP(InternetProtocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址或預(yù)設(shè)身份標(biāo)識(shí),識(shí)別向所述第一編碼設(shè)備請(qǐng)求視頻流的解碼設(shè)備,從而統(tǒng)計(jì)得出其具體數(shù)值。所述預(yù)設(shè)身份標(biāo)識(shí)優(yōu)選地為解碼設(shè)備的設(shè)備名稱或編號(hào)。步驟102,請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量高于預(yù)設(shè)值時(shí),從多個(gè)編碼設(shè)備中除所述第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。在本步驟中,優(yōu)選地,所述預(yù)設(shè)值可根據(jù)所述第一編碼設(shè)備在不影響自身編碼效率的情況下最多能同時(shí)傳輸?shù)乃鲆曨l流的鏈路的路數(shù)設(shè)定。若第一編碼設(shè)備能同時(shí)傳輸6路視頻流,可將預(yù)設(shè)值設(shè)置為6,也可以設(shè)置為1至5之間任意值。優(yōu)選地,所述預(yù)設(shè)值也可根據(jù)執(zhí)行步驟1之前所述第一編碼設(shè)備的可用帶寬設(shè)定。在本發(fā)明的一實(shí)施例中,在執(zhí)行上述步驟中從多個(gè)編碼設(shè)備中除第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備的操作之前,還可執(zhí)行以下操作:獲取所述第一編碼設(shè)備當(dāng)前可用的帶寬(剩余帶寬),將所述當(dāng)前可用的帶寬和所述第一編碼設(shè)備的帶寬閾值比較;所述當(dāng)前可用的帶寬大于所述帶寬閾值時(shí),選取所述第一編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。優(yōu)選地,所述帶寬閾值大于或等于同時(shí)傳送2路所述視頻流所需占用的帶寬值。若帶寬閾值等于2路視頻流占用的帶寬,其中,1路用于向其他編碼設(shè)備傳送作為源數(shù)據(jù)的所述視頻流,1路用于向請(qǐng)求所述視頻流的解碼設(shè)備傳送所述視頻流。上述操作用于判斷所述第一編碼設(shè)備是否可作為待發(fā)送所述視頻流的編碼設(shè)備。選取第一編碼設(shè)備作為發(fā)送所述視頻流的編碼設(shè)備,可優(yōu)先向急需所述視頻流或較早時(shí)間請(qǐng)求所述視頻流的解碼設(shè)備發(fā)送所述視頻流。在本發(fā)明的其他實(shí)施例中,可直接跳過上述操作,發(fā)送所述視頻流的編碼設(shè)備全部從多個(gè)編碼設(shè)備中除所述第一編碼設(shè)備之外的其他編碼設(shè)備中選取。在本發(fā)明的一實(shí)施例中,優(yōu)選地,所述從多個(gè)編碼設(shè)備中除第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備的步驟可包括以下步驟:獲取所述其他的編碼設(shè)備中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬(剩余帶寬)。選取前N個(gè)剩余帶寬值最大的編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備,所述N為大于或等于1的自然數(shù)。若多個(gè)編碼設(shè)備的剩余帶寬值相等,則可優(yōu)選與第一編碼設(shè)備的物理距離小的編碼設(shè)備。在本操作中,優(yōu)選地,也可不完全選取剩余帶寬值大的編碼設(shè)備??筛鶕?jù)請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量,以及傳輸單個(gè)所述視頻流所需占用帶寬,計(jì)算得出同時(shí)將所述視頻流傳送至所有請(qǐng)求所述視頻流的解碼設(shè)備所需要的總帶寬,而后在選取解碼設(shè)備時(shí),選取的至少一個(gè)編碼設(shè)備的剩余帶寬值的總和恰好能滿足所需的所述總帶寬。也可使用其他本領(lǐng)域管用技術(shù)手段選取待發(fā)送所述視頻流的編碼設(shè)備。上述選取發(fā)送所述視頻流的編碼設(shè)備的方式,根據(jù)除第一編碼設(shè)備外的其他編碼設(shè)備的傳輸性能(可用帶寬),選取傳輸性能較高的編碼設(shè)備,既能減少選取的編碼設(shè)備的數(shù)量,又能更快的將所述視頻流傳輸至請(qǐng)求所述視頻流的解碼設(shè)備。在本發(fā)明的另一實(shí)施例中,優(yōu)選地,所述從多個(gè)編碼設(shè)備中除第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備的步驟還可包括以下步驟:依次選取所述其他的編碼設(shè)備其中的一個(gè),優(yōu)選地,可根據(jù)所述其他編碼設(shè)備與所述第一編碼設(shè)備的物理距離從大到小依次選取,也可根據(jù)預(yù)設(shè)的編號(hào)或IP地址依次選取。對(duì)于每次選取的一個(gè)編碼設(shè)備,判斷所述編碼設(shè)備當(dāng)前可用的帶寬是否高于預(yù)設(shè)帶寬值(統(tǒng)一設(shè)定的比較值)或所述選取的編碼設(shè)備的帶寬閾值(根據(jù)編碼設(shè)備自身工作狀況設(shè)定),若高于,選取所述編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。判斷作為待發(fā)送所述視頻流的編碼設(shè)備的數(shù)量是否超過預(yù)設(shè)數(shù)量,若超過,停止選取和判斷。若不高于,跳過所述編碼設(shè)備。上述選取編碼設(shè)備的方式,隨機(jī)性較大,但是,該方式可自動(dòng)、快速的選取編碼設(shè)備,也適用用于無法獲取所述編碼設(shè)備的可用帶寬的情況。步驟103,將所述視頻流發(fā)送至選取的編碼設(shè)備,通過所述選取的編碼設(shè)備將所述視頻流傳送至對(duì)應(yīng)的解碼設(shè)備。在本發(fā)明的一實(shí)施例中,優(yōu)選地,可通過所述第一編碼設(shè)備將所述視頻流發(fā)送至所有所述選取的編碼設(shè)備??赏瑫r(shí)將所述視頻流傳送至所有的所述選取的編碼設(shè)備,也可按時(shí)序?qū)⒁来嗡鲆曨l流傳送至所有的所述選取的編碼設(shè)備。這種通過第一編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備的方式,可避免面所述選取的編碼設(shè)備因彼此互傳所述視頻流而消耗可用帶寬。優(yōu)選地,也可先通過所述第一編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備中的任意一個(gè)編碼設(shè)備,然后再通過所述任意一個(gè)編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備中的其他編碼設(shè)備。所述選取的編碼設(shè)備中任意一個(gè)獲取所述視頻流后,可根據(jù)預(yù)設(shè)順序或根據(jù)編碼設(shè)備間的物理距離,將所述視頻流在所述選取的編碼設(shè)備中的其他編碼設(shè)備中互傳。如,獲得所述視頻流的編碼設(shè)備都將所述視頻流傳送至相距最近的編碼設(shè)備,或獲得所述視頻流的編碼設(shè)備都將所述視頻流傳送至編號(hào)接近的編碼設(shè)備,或獲得所述視頻流的編碼設(shè)備都將所述視頻流傳送至剩余帶寬僅次的編碼設(shè)備。上述在選取的編碼設(shè)備間傳輸視頻流的方式,可節(jié)約第一編碼設(shè)備的帶寬。在本發(fā)明的一實(shí)施例中,確定好請(qǐng)求所述視頻流的解碼設(shè)備與待發(fā)送所述視頻流的編碼設(shè)備后,優(yōu)選地,可通過以下操作,確定解碼設(shè)備與編碼設(shè)備間的連接鏈路(對(duì)應(yīng)關(guān)系或視頻傳送鏈路):首先,根據(jù)所述選取的編碼設(shè)備中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬,確定每個(gè)編碼設(shè)備能同時(shí)發(fā)送的所述視頻流的路數(shù)。根據(jù)所述能同時(shí)發(fā)送的所述視頻流的路數(shù),確定每個(gè)編碼設(shè)備對(duì)應(yīng)的解碼設(shè)備。使用所述選取的編碼設(shè)備將所述視頻流傳送至所述對(duì)應(yīng)的解碼設(shè)備。在上述操作中,若選取的編碼設(shè)備足夠多或其剩余帶寬總和足夠,僅通過一次映射即可將所有編碼設(shè)備與所有解碼設(shè)備鏈路對(duì)應(yīng)。若不足,那么可以分批映射對(duì)應(yīng)。在本發(fā)明的另一實(shí)施例中,確定好請(qǐng)求所述視頻流的解碼設(shè)備與待發(fā)送所述視頻流的編碼設(shè)備后,優(yōu)選地,根據(jù)預(yù)設(shè)的對(duì)應(yīng)關(guān)系或傳輸順序,使用所述選取的編碼設(shè)備將所述視頻流傳送至所述對(duì)應(yīng)的解碼設(shè)備。所述傳輸順序可以是按編碼設(shè)備與解碼設(shè)備的IP地址預(yù)設(shè)的傳輸視頻流的先后順序,也可以根據(jù)編碼設(shè)備與解碼設(shè)備的編號(hào)預(yù)設(shè)的傳輸視頻流的先后順序。如,編號(hào)大的編碼設(shè)備優(yōu)先向編號(hào)大的解碼設(shè)備傳送所述視頻流。在本發(fā)明方法的實(shí)施例中,優(yōu)選地,可循環(huán)執(zhí)行圖1中的步驟102和103,即:在步驟102中每選取出預(yù)設(shè)個(gè)數(shù)的(1個(gè)或多個(gè))作為待發(fā)送所述視頻流的編碼設(shè)備,立即執(zhí)行步驟103的步驟,然后回到步驟102繼續(xù)選取編碼設(shè)備,直至請(qǐng)求所述視頻流的所有解碼設(shè)備都接收到所述視頻流為止。優(yōu)選地,也可僅執(zhí)行一次步驟102,一次性選取足夠的編碼設(shè)備。圖2所示,是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例二的流程示意圖。在本實(shí)施例中,編解碼集群包括20個(gè)編碼設(shè)備和20個(gè)解碼設(shè)備,編碼設(shè)備與解碼設(shè)備間的網(wǎng)絡(luò)設(shè)備可包括交換機(jī)和路由器,支持廣域網(wǎng)。在其他實(shí)施例中,編解碼集群中的編碼設(shè)備和解碼設(shè)備的數(shù)量可更多或者更少,網(wǎng)絡(luò)設(shè)備也可以是支持局域網(wǎng)的設(shè)備。在本實(shí)施例中,編解碼集群傳輸視頻流的方法流程(軟件程序)安裝在一臺(tái)控制PC(personalcomputer),控制PC通過網(wǎng)絡(luò)設(shè)備與編解碼集群中的各編碼設(shè)備和各解碼設(shè)備連接。在本實(shí)施例中,編解碼集群中的每個(gè)編碼設(shè)備在不影響編碼效率的情況下,最多能同時(shí)對(duì)外發(fā)送或接收7路視頻數(shù)據(jù)。解碼設(shè)備優(yōu)選地與編碼設(shè)備具有相同性能。在本實(shí)施例中,以下20個(gè)IP地址用于標(biāo)示20個(gè)解碼設(shè)備:192.168.1.10、192.168.1.11、192.168.1.12、...192.168.1.29。子網(wǎng)掩碼為255.255.255.0。以下以編碼設(shè)備10到編碼設(shè)備29來表征20個(gè)編碼設(shè)備。20解碼設(shè)備的IP地址為:192.168.2.10、192.168.2.10、…192.168.2.29。子網(wǎng)掩碼為255.255.255.0。以下以解碼設(shè)備10到解碼設(shè)備29來表征20個(gè)解碼設(shè)備。這樣通過路由器模擬成廣域網(wǎng)環(huán)境,控制PC的IP地址設(shè)置為192.168.1.30,預(yù)先將上述所有IP地址進(jìn)行存儲(chǔ)。本實(shí)施例中,對(duì)應(yīng)圖1中的步驟102,包括判斷第一編碼設(shè)備是否能作為發(fā)送所述視頻流的步驟、并詳述了從其他編碼設(shè)備中選取編碼設(shè)備的步驟,對(duì)應(yīng)圖1中的步驟103,包括建立編碼設(shè)備與解碼設(shè)備間對(duì)應(yīng)關(guān)系的步驟。參照?qǐng)D2,編解碼集群傳輸視頻流的方法包括以下步驟:步驟201,在預(yù)設(shè)時(shí)段內(nèi),獲取請(qǐng)求第一編碼設(shè)備的視頻流的解碼設(shè)備的數(shù)量。在本實(shí)施例中,在預(yù)設(shè)時(shí)段內(nèi),控制PC通過解碼設(shè)備的視頻流請(qǐng)求,獲取請(qǐng)求同一編碼設(shè)備的視頻流的解碼設(shè)備的數(shù)量。查詢到解碼設(shè)備10至解碼設(shè)備19這10個(gè)編碼設(shè)備需要請(qǐng)求編碼設(shè)備10的視頻流。步驟202,判斷所述解碼設(shè)備的數(shù)量是否高于預(yù)設(shè)值。在本實(shí)施例中,比較請(qǐng)求編碼設(shè)備10的視頻流的解碼設(shè)備的數(shù)量與預(yù)設(shè)數(shù)值7的大小,大于時(shí),執(zhí)行步驟203,即比較10與7(預(yù)設(shè)值,根據(jù)編碼設(shè)備10能夠同時(shí)傳輸7路數(shù)據(jù)的性能預(yù)先設(shè)定)可知,請(qǐng)求編碼設(shè)備10的視頻流的解碼設(shè)備的數(shù)量已高于預(yù)設(shè)值7,那么接下來進(jìn)入步驟203,若低于,直接終止控制PC上的軟件程序。步驟203,第一編碼設(shè)備的可用帶寬高于其帶寬閾值時(shí),選取第一編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備,在本實(shí)施例中,控制PC獲取編碼設(shè)備10當(dāng)前可用的帶寬能夠同時(shí)傳輸7路所述視頻流,高于閾值3,選取編碼設(shè)備10為待發(fā)送所述視頻流的編碼設(shè)備。步驟204,查詢其他編碼設(shè)備的可用帶寬,并選取前N個(gè)可用帶寬最大的編碼設(shè)備。即,控制PC查詢編碼設(shè)備11到編碼設(shè)備29中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬分別能傳輸所述視頻流的路數(shù)為:7、6、6、5、4、3、2、2、2、2。選取前2個(gè)可用帶寬最大的編碼設(shè)備11與編碼設(shè)備12作為待發(fā)送所述視頻流的編碼設(shè)備。其中編碼設(shè)備12與編碼設(shè)備10的物理距離比編碼設(shè)備13與編碼設(shè)備10的物理距離近。步驟205,通過第一編碼設(shè)備將所述視頻流傳送至選取的編碼設(shè)備中的任意一個(gè)編碼設(shè)備,然后通過所述任意一個(gè)編碼設(shè)備將所述視頻流傳送至選取的編碼設(shè)備中剩余的編碼設(shè)備。即,控制PC控制編碼設(shè)備10與編碼設(shè)備11間建立連接,并控制所述視頻流傳向所述編碼設(shè)備11,然后控制編碼設(shè)備11與編碼設(shè)備12間建立連接,并控制所述視頻流傳向編碼設(shè)備12。步驟206,建立選取的編碼設(shè)備與請(qǐng)求所述視頻流的解碼設(shè)備間的對(duì)應(yīng)關(guān)系。即,根據(jù)編碼設(shè)備與解碼設(shè)備的IP地址,控制PC控制編碼設(shè)備10分別與解碼設(shè)備10至解碼設(shè)備14建立視頻傳送連接、編碼設(shè)備11分別于解碼設(shè)備15至解碼設(shè)備18建立視頻傳送連接,編碼設(shè)備12與解碼設(shè)備19建立視頻傳送連接。步驟207,控制PC控制編碼設(shè)備與解碼設(shè)備間建立對(duì)應(yīng)關(guān)系后,發(fā)送指令至編碼設(shè)備10、編碼設(shè)備11和編碼設(shè)備12將所述視頻流傳送至各自對(duì)應(yīng)的解碼設(shè)備。在上述實(shí)施例二中,每個(gè)發(fā)送所述視頻流的編碼設(shè)備都預(yù)留了能發(fā)送1路所述視頻流的帶寬,用于各編碼設(shè)備接收和發(fā)送本地的視頻流。在其他實(shí)施例中,可根據(jù)各編碼設(shè)備和解碼設(shè)備的實(shí)際工作情況,預(yù)先設(shè)定不同的預(yù)留帶寬或預(yù)留0路所述視頻流的帶寬。此外,本實(shí)施例中的各種具體限定并不用于限定本發(fā)明的所有實(shí)施例。圖3所示,是本發(fā)明編解碼集群傳輸視頻流的方法實(shí)施例三的流程示意圖。在本實(shí)施例中,編解碼集群包括20個(gè)編碼設(shè)備和20個(gè)解碼設(shè)備,編碼設(shè)備與解碼設(shè)備間的網(wǎng)絡(luò)設(shè)備可包括交換機(jī)和路由器,支持廣域網(wǎng)。在其他實(shí)施例中,編解碼集群中的編碼設(shè)備和解碼設(shè)備的數(shù)量可更多或者更少,網(wǎng)絡(luò)設(shè)備也可以是支持局域網(wǎng)的設(shè)備。在本實(shí)施例中,編解碼集群傳輸視頻流的方法流程(軟件程序)安裝在每臺(tái)解碼設(shè)備中,沒有額外增加的控制設(shè)備,如實(shí)施例二中的控制PC。在本實(shí)施例中,編解碼集群中的每個(gè)編碼設(shè)備在不影響編碼效率的情況下,最多能同時(shí)對(duì)外發(fā)送或接收7路視頻數(shù)據(jù)。解碼設(shè)備優(yōu)選地與編碼設(shè)備具有相同性能。在本實(shí)施例中,以下20個(gè)IP地址用于標(biāo)示20個(gè)解碼設(shè)備:192.168.1.10、192.168.1.11、192.168.1.12、...192.168.1.29。子網(wǎng)掩碼為255.255.255.0。以下以編碼設(shè)備10到編碼設(shè)備29來表征20個(gè)編碼設(shè)備。20解碼設(shè)備的IP地址為:192.168.2.10、192.168.2.10、…192.168.2.29。子網(wǎng)掩碼為255.255.255.0。以下以解碼設(shè)備10到解碼設(shè)備29來表征20個(gè)解碼設(shè)備。這樣通過路由器模擬成廣域網(wǎng)環(huán)境,預(yù)先將上述所有IP地址進(jìn)行存儲(chǔ)。本實(shí)施例中,不包括判斷第一編碼設(shè)備是否能作為發(fā)送所述視頻流的步驟,對(duì)應(yīng)圖1中的步驟102和步驟103,進(jìn)一步分別詳述了在選取的編碼設(shè)備間傳輸視頻流的方式不同時(shí),不同的建立編碼設(shè)備與解碼設(shè)備間對(duì)應(yīng)關(guān)系的步驟。參照?qǐng)D3,編解碼集群傳輸視頻流的方法包括以下步驟:步驟301,在預(yù)設(shè)時(shí)段內(nèi),獲取請(qǐng)求第一編碼設(shè)備的視頻流的解碼設(shè)備的數(shù)量。在本實(shí)施例中,在預(yù)設(shè)時(shí)段內(nèi),通過編碼設(shè)備10接收到的來自各解碼設(shè)備的視頻流請(qǐng)求,查詢請(qǐng)求解碼設(shè)備10的視頻流的解碼設(shè)備的數(shù)量,查詢到解碼設(shè)備10至解碼設(shè)備19這10個(gè)編碼設(shè)備需要請(qǐng)求其視頻流。步驟302,判斷請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量是否高于預(yù)設(shè)值,即比較10與6(預(yù)設(shè)值,根據(jù)編碼設(shè)備10能夠同時(shí)傳輸7路數(shù)據(jù)的性能預(yù)先設(shè)定)可知,請(qǐng)求編碼設(shè)備10的視頻流的解碼設(shè)備的數(shù)量已高于預(yù)設(shè)值6,那么接下來進(jìn)入步驟303,若低于,直接退出上述傳輸程序。步驟303,查詢其他編碼設(shè)備的剩余帶寬,并選取前N個(gè)剩余帶寬最大的編碼設(shè)備。在本實(shí)施例中,編碼設(shè)備10查詢編碼設(shè)備11到編碼設(shè)備29中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬分別能傳輸所述視頻流的路數(shù)為:6、5、5、5、4、3、2、2、2、2。選取前3個(gè)可用帶寬最大的編碼設(shè)備11、編碼設(shè)備12與編碼設(shè)備13作為待發(fā)送所述視頻流的編碼設(shè)備。其中編碼設(shè)備12、編碼設(shè)備13與編碼設(shè)備10的物理距離比編碼設(shè)備14與編碼設(shè)備10的物理距離近。步驟304,判斷是否能通過第一編碼設(shè)備將所述視頻流傳送至所有選取的編碼設(shè)備。在本實(shí)施例中,判斷編碼設(shè)備10是否當(dāng)前能同時(shí)傳輸3路以上所述視頻流,若能,則執(zhí)行步驟305,若不能則執(zhí)行步驟306。步驟305,通過第一編碼設(shè)備將所述視頻流傳送至所有選取的編碼設(shè)備。即,控制編碼設(shè)備10與選取的編碼設(shè)備(編碼設(shè)備11、編碼設(shè)備12和編碼設(shè)備13)建立連接,并控制所述視頻流傳向選取的編碼設(shè)備。并執(zhí)行步驟307。步驟306,通過第一編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備中任意一個(gè)編碼設(shè)備,然后通過所述任意一個(gè)編碼設(shè)備將所述視頻流傳送至剩余的編碼設(shè)備。即,控制編碼設(shè)備10與選取的編碼設(shè)備中的任意一個(gè)編碼設(shè)備(如編碼設(shè)備11)建立連接,并控制所述視頻流傳向所述任意一個(gè)編碼設(shè)備,然后通過所述任意一個(gè)編碼設(shè)備將所述視頻流傳輸至剩余的編碼設(shè)備(控制編碼設(shè)備11與編碼設(shè)備12間建立連接,并控制所述視頻流傳向編碼設(shè)備12,最后控制編碼設(shè)備12與編碼設(shè)備13建立連接,并控制所述視頻流傳向編碼設(shè)備13)。并執(zhí)行步驟308。步驟307,根據(jù)編碼設(shè)備與解碼設(shè)備的IP地址,建立選取的編碼設(shè)備與請(qǐng)求所述視頻流的解碼設(shè)備間的對(duì)應(yīng)關(guān)系。即,控制編碼設(shè)備11分別與解碼設(shè)備10至解碼設(shè)備14建立視頻傳送連接、編碼設(shè)備12分別于解碼設(shè)備15至解碼設(shè)備18建立視頻傳送連接,編碼設(shè)備13與解碼設(shè)備19建立視頻傳送連接。步驟308,根據(jù)編碼設(shè)備與解碼設(shè)備的IP地址,建立選取的編碼設(shè)備與請(qǐng)求所述視頻流的解碼設(shè)備間的對(duì)應(yīng)關(guān)系。即,控制編碼設(shè)備11分別與解碼設(shè)備10至解碼設(shè)備13建立視頻傳送連接、編碼設(shè)備12分別于解碼設(shè)備14至解碼設(shè)備16建立視頻傳送連接,編碼設(shè)備13分別與解碼設(shè)備17至解碼設(shè)備19建立視頻傳送連接。步驟309,控制編碼設(shè)備與解碼設(shè)備間建立對(duì)應(yīng)關(guān)系后,解碼設(shè)備10發(fā)送指令至編碼設(shè)備11、編碼設(shè)備12和編碼設(shè)備13將所述視頻流傳送至各自對(duì)應(yīng)的解碼設(shè)備。在上述實(shí)施例三中,沒有選取編碼設(shè)備10發(fā)送所述視頻流。對(duì)于編解碼集群,若其中任意一個(gè)編碼設(shè)備由于一些暫時(shí)的工作需要,無法向解碼設(shè)備傳送其上的視頻流,可通過將步驟302中的預(yù)設(shè)值設(shè)置為0,實(shí)施具體實(shí)施例2中的傳輸視頻流的方法可有效克服其無法傳送視頻流的困難。此外,本實(shí)施例中的各種具體限定并不用于限定本發(fā)明的所有實(shí)施例。如圖4所示,本發(fā)明的編解碼集群傳輸視頻流的系統(tǒng),包括計(jì)數(shù)模塊10、第一控制模塊20和第二控制模塊30,其中:計(jì)數(shù)模塊10,用于獲取預(yù)設(shè)時(shí)段內(nèi)向多個(gè)編碼設(shè)備中的第一編碼設(shè)備請(qǐng)求視頻流的解碼設(shè)備的數(shù)量。第一控制模塊20,用于在請(qǐng)求所述視頻流的解碼設(shè)備的數(shù)量高于預(yù)設(shè)值時(shí),從多個(gè)編碼設(shè)備中除所述第一編碼設(shè)備外其他的編碼設(shè)備中選取至少一個(gè)編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。第二控制模塊30,用于將所述視頻流發(fā)送至選取的編碼設(shè)備,通過所述選取的編碼設(shè)備將所述視頻流傳送至對(duì)應(yīng)的解碼設(shè)備。在本發(fā)明的優(yōu)選實(shí)施例中,第一控制模塊20還可用于:獲取所述第一編碼設(shè)備當(dāng)前可用的帶寬,將所述當(dāng)前可用的帶寬和所述第一編碼設(shè)備的帶寬閾值比較。在所述當(dāng)前可用的帶寬大于所述帶寬閾值時(shí),選取所述第一編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。在本發(fā)明的優(yōu)選實(shí)施例中,所述第二控制模塊30還可用于:根據(jù)所述選取的編碼設(shè)備中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬,確定每個(gè)編碼設(shè)備能同時(shí)發(fā)送的所述視頻流的路數(shù)。根據(jù)所述能同時(shí)發(fā)送的所述視頻流的路數(shù),確定每個(gè)編碼設(shè)備對(duì)應(yīng)的解碼設(shè)備。使用所述選取的編碼設(shè)備將所述視頻流傳送至所述對(duì)應(yīng)的解碼設(shè)備。在本發(fā)明的優(yōu)選實(shí)施例中,第一控制模塊20還可用于:獲取所述其他的編碼設(shè)備中每個(gè)編碼設(shè)備當(dāng)前可用的帶寬;選取前N個(gè)所述帶寬的值最大的編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備,所述N為大于或等于1的自然數(shù)。在本發(fā)明的其他優(yōu)選實(shí)施例中,第一控制模塊20還用于:依次選取所述其他的編碼設(shè)備其中的一個(gè)。對(duì)于每次選取的一個(gè)編碼設(shè)備,判斷所述編碼設(shè)備當(dāng)前可用的帶寬是否高于預(yù)設(shè)帶寬值或所述選取的編碼設(shè)備的帶寬閾值,若高于,選取所述編碼設(shè)備作為待發(fā)送所述視頻流的編碼設(shè)備。判斷作為待發(fā)送所述視頻流的編碼設(shè)備的數(shù)量是否超過預(yù)設(shè)數(shù)量,若超過,停止選取和判斷。若不高于,跳過所述編碼設(shè)備。在本發(fā)明的優(yōu)選實(shí)施例中,第二控制模塊30可通過所述第一編碼設(shè)備將所述視頻流發(fā)送至所有所述選取的編碼設(shè)備。第二控制模塊30也可先通過所述第一編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備中的任意一個(gè)編碼設(shè)備,然后通過所述任意一個(gè)編碼設(shè)備將所述視頻流傳送至所述選取的編碼設(shè)備中的其他編碼設(shè)備。本發(fā)明的編解碼集群傳輸視頻流的系統(tǒng)中的計(jì)數(shù)模塊10、第一控制模塊20和第二控制模塊30可至少部分地安裝在編解碼集群中的任意編碼設(shè)備上,也可至少部分地安裝在編解碼集群額外增設(shè)的控制PC中。以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。