專(zhuān)利名稱(chēng):視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)及其網(wǎng)絡(luò)連接控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻監(jiān)控領(lǐng)域,特別涉及視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)的網(wǎng)絡(luò)流量控制 技術(shù)。
背景技術(shù):
實(shí)時(shí)視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)從監(jiān)控?cái)z像頭獲得視頻信號(hào)后,一方面要在本地 進(jìn)行錄像,另一方面要將視頻信號(hào)實(shí)時(shí)地傳輸給有預(yù)覽需要的客戶(hù)端。這些客戶(hù)端通過(guò)網(wǎng) 絡(luò)(如因特網(wǎng)、局域網(wǎng))連接到數(shù)字錄像機(jī)。在進(jìn)行網(wǎng)絡(luò)傳輸時(shí),網(wǎng)絡(luò)傳輸帶寬是最寶貴的 資源,也往往是最容易造成瓶頸的資源,它直接決定視頻傳輸?shù)牧鲿承?。影響視頻流暢性的帶寬因素主要在于視頻數(shù)據(jù)從監(jiān)控設(shè)備上行傳輸?shù)綇V域網(wǎng)這 一段。當(dāng)有多個(gè)客戶(hù)端連接請(qǐng)求數(shù)據(jù)傳輸時(shí),因?yàn)閹挼南拗?,必定?huì)有一些連接請(qǐng)求得不 到及時(shí)響應(yīng)。申請(qǐng)?zhí)枮?00810119155. 1的中國(guó)專(zhuān)利提出了一種實(shí)時(shí)監(jiān)控系統(tǒng)中自適應(yīng)帶寬的 方法,對(duì)視頻數(shù)據(jù)進(jìn)行分層編碼,不同層的碼流傳到不同轉(zhuǎn)發(fā)服務(wù)器,轉(zhuǎn)發(fā)服務(wù)器根據(jù)網(wǎng)絡(luò) 帶寬情況只發(fā)送基本數(shù)據(jù)或者基本數(shù)據(jù)加若干層附加數(shù)據(jù)。上述現(xiàn)有技術(shù)的問(wèn)題在于,系統(tǒng)中需要增加轉(zhuǎn)發(fā)服務(wù)器,成本較高。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)及其網(wǎng)絡(luò)連接控制方法, 能夠以有限的帶寬支持更多客戶(hù)端同時(shí)查看監(jiān)控視頻。為解決上述技術(shù)問(wèn)題,本發(fā)明的實(shí)施方式提供了一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī) 與客戶(hù)端網(wǎng)絡(luò)連接的控制方法,包括以下步驟當(dāng)通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連接數(shù)增加時(shí),根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng) 前剩余帶寬是否足夠發(fā)送新增碼流;如果當(dāng)前剩余帶寬不夠,則從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低 后的碼流參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;以降低后的碼流參數(shù)對(duì)所有碼流進(jìn)行編碼發(fā)送。本發(fā)明的實(shí)施方式還提供了一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)碼流參數(shù)調(diào)整模塊, 包括第一判斷單元,用于根據(jù)通過(guò)網(wǎng)絡(luò)連接到該數(shù)字錄像機(jī)的客戶(hù)端連接數(shù),判斷客 戶(hù)端連接數(shù)是否變化;第二判斷單元,用于根據(jù)當(dāng)前碼流參數(shù)判斷判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增 碼流;第一計(jì)算單元,用于在第一判斷單元判定客戶(hù)端連接數(shù)增加,且第二判斷單元判 定當(dāng)前剩余帶寬不夠時(shí),從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流參 數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;
5
參數(shù)設(shè)置單元,用于將第一計(jì)算單元所得的降低后的碼流參數(shù)作為當(dāng)前碼流參數(shù) 提供給用于所有碼流編碼和發(fā)送的模塊。本發(fā)明的實(shí)施方式還提供了一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī),包括連接控制模塊,用于與客戶(hù)端交互,提供通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連 接數(shù);編碼模塊,用于根據(jù)當(dāng)前碼流參數(shù)對(duì)碼流進(jìn)行編碼;帶寬統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)和計(jì)算當(dāng)前實(shí)際剩余的帶寬值;碼流參數(shù)調(diào)整模塊,用于對(duì)碼流參數(shù)進(jìn)行調(diào)整,其中包括第一判斷單元,用于根據(jù)來(lái)自連接控制模塊的客戶(hù)端連接數(shù),判斷客戶(hù)端連接數(shù) 是否變化;第二判斷單元,用于根據(jù)當(dāng)前碼流參數(shù)判斷帶寬統(tǒng)計(jì)模塊所提供的當(dāng)前實(shí)際剩余 的帶寬是否足夠發(fā)送新增碼流;第一計(jì)算單元,用于在第一判斷單元判定客戶(hù)端連接增加,且第二判斷單元判定 當(dāng)前剩余帶寬不夠時(shí),從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流參數(shù) 計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;參數(shù)設(shè)置單元,用于將第一計(jì)算單元所得的降低后的碼流參數(shù)作為當(dāng)前碼流參數(shù) 提供給編碼模塊和連接控制模塊使用。本發(fā)明實(shí)施方式與現(xiàn)有技術(shù)相比,主要區(qū)別及其效果在于當(dāng)剩余帶寬不足以支持新增碼流時(shí),逐級(jí)降低碼流參數(shù)以適應(yīng)總帶寬,并以調(diào)整 后的碼流參數(shù)對(duì)所有碼流重新編碼發(fā)送,使數(shù)字錄像機(jī)能夠以有限的帶寬支持更多客戶(hù)端 同時(shí)查看監(jiān)控視頻。將連接控制、帶寬統(tǒng)計(jì)和碼流參數(shù)的調(diào)整分別設(shè)計(jì)在不同的模塊中,這種模塊配 置方案可靠性較好、模塊的維護(hù)較為方便。進(jìn)一步地,以實(shí)際測(cè)量得到剩余帶寬,以計(jì)算得到新增碼流帶寬,這種組合雖然相 對(duì)于完全按計(jì)算得到剩余帶寬和新增碼流帶寬的方法更復(fù)雜一些,但利用了監(jiān)控視頻碼流 的實(shí)際流量可能與計(jì)算值有一定偏差的特點(diǎn),在判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流 時(shí),提高了判斷的準(zhǔn)確度。進(jìn)一步地,以9至11秒為周期,檢測(cè)實(shí)際的剩余帶寬,可以在檢測(cè)結(jié)果的波動(dòng)性和 實(shí)時(shí)性方面取得比較好平衡。進(jìn)一步地,將碼流參數(shù)降到最低時(shí),如果所有碼流所需的帶寬仍高于額定總帶寬, 則拒絕新增碼流的連接請(qǐng)求,可以保證已有的碼流得到最低限度的質(zhì)量保證。進(jìn)一步地,在客戶(hù)端連接數(shù)減少時(shí),在額定總帶寬的限制下,嘗試升高碼流參數(shù), 可以實(shí)現(xiàn)自適應(yīng)的碼流調(diào)整,使帶寬的使用和圖像質(zhì)量達(dá)到最優(yōu)的平衡。
圖1是本發(fā)明第一實(shí)施方式中,一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連 接的控制方法的流程示意圖;圖2是本發(fā)明第一實(shí)施方式中,根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng)前剩余帶寬是否足夠發(fā) 送新增碼流的一種優(yōu)選的實(shí)現(xiàn)流程示意圖3是本發(fā)明第一實(shí)施方式中,獲取當(dāng)前實(shí)際剩余的帶寬值的一種優(yōu)選的實(shí)現(xiàn)流 程示意圖;圖4是本發(fā)明第一實(shí)施方式中,監(jiān)測(cè)通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連接數(shù) 是否有變化的一種優(yōu)選的實(shí)現(xiàn)流程示意圖;圖5是本發(fā)明第二實(shí)施方式中,一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)碼流參數(shù)調(diào)整模 塊的結(jié)構(gòu)示意圖;圖6是本發(fā)明第三實(shí)施方式中,一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)的結(jié)構(gòu)示意圖;圖7是本發(fā)明第三實(shí)施方式中,一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)中帶寬統(tǒng)計(jì)模塊 的結(jié)構(gòu)示意圖;圖8是本發(fā)明第三實(shí)施方式中,一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)中連接控制模塊 與其它模塊的關(guān)系示意圖。
具體實(shí)施例方式在以下的敘述中,為了使讀者更好地理解本申請(qǐng)而提出了許多技術(shù)細(xì)節(jié)。但是,本 領(lǐng)域的普通技術(shù)人員可以理解,即使沒(méi)有這些技術(shù)細(xì)節(jié)和基于以下各實(shí)施方式的種種變化 和修改,也可以實(shí)現(xiàn)本申請(qǐng)各權(quán)利要求所要求保護(hù)的技術(shù)方案。為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明的實(shí)施 方式作進(jìn)一步地詳細(xì)描述。本發(fā)明第一實(shí)施方式涉及一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的 控制方法。本發(fā)明的各實(shí)施方式中,數(shù)字或摸擬的監(jiān)控?cái)z像頭將數(shù)據(jù)直接或通過(guò)傳輸網(wǎng)絡(luò)轉(zhuǎn) 給數(shù)字錄像機(jī)。傳輸網(wǎng)絡(luò)可以是有線的也可以是無(wú)線的。數(shù)字錄像機(jī)與客戶(hù)端之間的碼流 是監(jiān)控視頻碼流,數(shù)字錄像機(jī)從監(jiān)控?cái)z像頭得到數(shù)據(jù)后,以碼流的形式實(shí)時(shí)地轉(zhuǎn)發(fā)給需要 預(yù)覽該數(shù)據(jù)的客戶(hù)端。本發(fā)明的各實(shí)施方式中所稱(chēng)的數(shù)字錄像機(jī)包括數(shù)字硬盤(pán)錄像機(jī)(Digital Video Recorder,簡(jiǎn)稱(chēng)“DVR”)、混合型數(shù)字硬盤(pán)錄像機(jī)(Hybrid DVR)、和網(wǎng)絡(luò)硬盤(pán)錄像機(jī)(NVR) 等??梢岳斫?,數(shù)字錄像機(jī)也可以不是基于硬盤(pán)的,如基于光存貯、閃存(FLASH)、磁帶等等。數(shù)字硬盤(pán)錄像機(jī)(DVR)是使用數(shù)據(jù)硬盤(pán)記錄視音頻數(shù)據(jù)的監(jiān)控設(shè)備。混合型數(shù)字硬盤(pán)錄像機(jī)(Hybrid DVR)是可以同時(shí)接入模擬攝像機(jī)和網(wǎng)間互聯(lián)協(xié) 議(Internet Protocol,簡(jiǎn)稱(chēng)“IP”)攝像機(jī)的數(shù)字硬盤(pán)錄像設(shè)備。網(wǎng)絡(luò)硬盤(pán)錄像機(jī)(NVR)是只可以接入IP攝像機(jī)的數(shù)字硬盤(pán)錄像設(shè)備。圖1是該視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法的流程示意 圖。在步驟101中,數(shù)字錄像機(jī)監(jiān)測(cè)通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連接數(shù)是否 有變化,如果沒(méi)有變化就繼續(xù)監(jiān)測(cè),如果連接數(shù)增加就進(jìn)入步驟102,如果連接數(shù)減少就進(jìn) 入步驟107。在步驟102中,當(dāng)通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連接數(shù)增加時(shí),數(shù)字錄 像機(jī)根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流,如果足夠就進(jìn)入步驟 106 (因?yàn)楫?dāng)前剩余帶寬足夠發(fā)送新增碼流,所以仍以當(dāng)前碼流參數(shù)對(duì)包括新增碼流在內(nèi)的所有碼流進(jìn)行編碼發(fā)送),否則進(jìn)入步驟103。在步驟103中,降低碼流參數(shù),計(jì)算包括新增碼流在內(nèi)的所有碼流的總帶寬。第一 次進(jìn)入步驟103時(shí),從當(dāng)前碼流參數(shù)開(kāi)始降低一個(gè)級(jí)別的碼流參數(shù),此后從步驟104再次回 到步驟103時(shí),從最近一次已被降低的碼流參數(shù)開(kāi)始再降低一個(gè)級(jí)別的碼流參數(shù)。碼流參數(shù)包括分辨率、碼率、幀率等。碼流參數(shù)降低一個(gè)級(jí)別時(shí),可以是降低分辨 率、碼率、幀率中的一種,也可以是兩個(gè)或三個(gè)因素的組合變化,例如同時(shí)降低分辨率和碼 率,又如降低分辨率但少量提高幀率等等。本發(fā)明各實(shí)施方式中,降低碼流參數(shù)指調(diào)整后的碼流參數(shù)所對(duì)應(yīng)的碼流需要更少 的帶寬、具有更差的品質(zhì),提高碼流參數(shù)指調(diào)整后的碼流參數(shù)所對(duì)應(yīng)的碼流需要更多的帶 寬、具有更好的品質(zhì)。此后進(jìn)入步驟104,判斷計(jì)算所得的總帶寬(包括新增碼流在內(nèi)的所有碼流)是否 不高于額定總帶寬,如果是則進(jìn)入步驟105,否則回到步驟103,進(jìn)一步降低碼流參數(shù)進(jìn)行 總帶寬計(jì)算。本發(fā)明各實(shí)施方式中,額定總帶寬是指可以供數(shù)字錄像機(jī)與客戶(hù)端連接使用的實(shí) 際的最大帶寬。額定總帶寬可以是實(shí)際的物理總帶寬,也可以是用戶(hù)的配置值,例如用戶(hù)可 以將物理總帶寬的80%配置為額定總帶寬。在本發(fā)明的一個(gè)優(yōu)選例子中,在步驟104判定計(jì)算所得的總帶寬高于額定總帶寬 時(shí),還可以增加一個(gè)步驟(未體現(xiàn)在圖1中),進(jìn)一步判斷被降低的碼流參數(shù)是否已經(jīng)是預(yù) 先設(shè)定的最低值,如果是,則拒絕新增碼流的連接請(qǐng)求并結(jié)束本流程,如果不是,則回到步 驟103,進(jìn)一步降低碼流參數(shù)進(jìn)行總帶寬計(jì)算。如果將碼流參數(shù)降到最低,但所有碼流所需 的帶寬仍高于額定總帶寬,則拒絕新增碼流的連接請(qǐng)求,這樣可以保證已有的碼流得到最 低限度的質(zhì)量保證。總體上來(lái)說(shuō),步驟103和104的組合實(shí)現(xiàn)的功能是在當(dāng)前剩余帶寬不夠時(shí),從當(dāng) 前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流參數(shù)計(jì)算,包括新增碼流在內(nèi)的 所有碼流的總帶寬不高于額定總帶寬。在步驟105中,將步驟104計(jì)算所得的碼流參數(shù)設(shè)置為當(dāng)前碼流參數(shù)。此后進(jìn)入 步驟106。當(dāng)剩余帶寬不足以支持新增碼流時(shí),逐級(jí)降低碼流參數(shù)以適應(yīng)總帶寬,并以調(diào)整 后的碼流參數(shù)對(duì)所有碼流重新編碼發(fā)送,使數(shù)字錄像機(jī)能夠以有限的帶寬支持更多客戶(hù)端 同時(shí)查看監(jiān)控視頻。在步驟106中,以當(dāng)前碼流參數(shù)對(duì)現(xiàn)存的所有碼流進(jìn)行編碼發(fā)送。結(jié)束本流程。步驟105和106的組合可以實(shí)現(xiàn)以降低后的碼流參數(shù)對(duì)所有碼流(包括新增碼流 在內(nèi))進(jìn)行編碼發(fā)送的功能。當(dāng)然,也可以有其它技術(shù)方案實(shí)現(xiàn)以降低后的碼流參數(shù)對(duì)所 有碼流進(jìn)行編碼發(fā)送的功能,例如可以將計(jì)算所得的碼流參數(shù)保存在一個(gè)存儲(chǔ)器中,負(fù)責(zé) 發(fā)送的模塊在需要時(shí)從這個(gè)存儲(chǔ)器中取出相應(yīng)的碼流參數(shù);又如,不進(jìn)行顯性的碼流參數(shù) 設(shè)置,而是直接將降低后的傳遞給負(fù)責(zé)發(fā)送的模塊,等等。在步驟107中,提高碼流參數(shù),計(jì)算繼續(xù)存在的所有碼流(不含已減少的碼流)的 總帶寬。第一次進(jìn)入步驟107時(shí),從當(dāng)前碼流參數(shù)開(kāi)始提高一個(gè)級(jí)別的碼流參數(shù),此后從步 驟108再次回到步驟107時(shí),從最近一次已被提高的碼流參數(shù)開(kāi)始再提高一個(gè)級(jí)別的碼流
8參數(shù)。從步驟107到109的分支是對(duì)客戶(hù)端連接數(shù)減少時(shí)的處理,在本發(fā)明的其它某些 實(shí)施方式中,這個(gè)分支也可以省略,也就是說(shuō)在客戶(hù)端連接數(shù)減少時(shí)不作任何處理。如果省 略的話,在客戶(hù)端連接數(shù)增加時(shí),也可以達(dá)到本發(fā)明的基本效果——以有限的帶寬支持更 多客戶(hù)端同時(shí)查看監(jiān)控視頻。不利之處在于客戶(hù)端連接數(shù)減少時(shí)無(wú)法自適應(yīng)地調(diào)高帶寬。此后進(jìn)入步驟108,判斷計(jì)算所得的總帶寬是否不高于額定總帶寬,如果是,則回 到步驟107,進(jìn)一步提高碼流參數(shù)再計(jì)算總帶寬,否則進(jìn)入步驟109。在步驟109中,將最后一次計(jì)算所得總帶寬不高于額定總帶寬時(shí)對(duì)應(yīng)的碼流參數(shù) 設(shè)置為當(dāng)前碼流參數(shù),此后進(jìn)入步驟106。例如,第三次由步驟107提高碼流參數(shù)計(jì)算所得 的總帶寬高于額定總帶寬,此時(shí)將第二次由步驟107提高后的碼流參數(shù)(此時(shí)計(jì)算所得的 總帶寬不高于額定總帶寬)作為當(dāng)前碼流參數(shù)。如果第一次提高當(dāng)前碼流參數(shù)就導(dǎo)致所需 總帶寬高于額定總帶寬,則仍按當(dāng)前碼流參數(shù)對(duì)所有碼流進(jìn)行編碼發(fā)送??傮w上來(lái)說(shuō),步驟107至109的組合實(shí)現(xiàn)的功能是從當(dāng)前碼流參數(shù)開(kāi)始,逐級(jí)嘗 試提高碼流參數(shù),直到繼續(xù)存在的所有碼流所需的總帶寬高于額定總帶寬,此時(shí),最后一次 所需總帶寬不高于額定總帶寬的碼流參數(shù)可以被設(shè)置為當(dāng)前碼流參數(shù)。在客戶(hù)端連接數(shù)減少時(shí),在額定總帶寬的限制下,嘗試升高碼流參數(shù),可以實(shí)現(xiàn)自 適應(yīng)的碼流調(diào)整,使帶寬的使用和圖像質(zhì)量達(dá)到最優(yōu)化。數(shù)字錄像機(jī)一般來(lái)說(shuō)處理資源并不是很多,相對(duì)于網(wǎng)絡(luò)服務(wù)器來(lái)說(shuō)能力要弱,本 發(fā)明實(shí)施方式中的連接控制方法對(duì)資源的要求不高,特別適合數(shù)字錄像機(jī)的情況。在本發(fā)明的一個(gè)優(yōu)選例子中,步驟102可以進(jìn)一步分解為圖2的子步驟在步驟201中,獲取當(dāng)前實(shí)際剩余的帶寬值。此后進(jìn)入步驟202,以當(dāng)前碼流參數(shù)計(jì)算新增碼流所需帶寬值。此后進(jìn)入步驟203,如果當(dāng)前實(shí)際剩余的帶寬值大于或等于新增碼流所需帶寬值, 則進(jìn)入步驟204判定為當(dāng)前剩余帶寬足夠發(fā)送新增碼流,否則進(jìn)入步驟205判定為當(dāng)前剩 余帶寬不夠發(fā)送新增碼流。以實(shí)際測(cè)量得到剩余帶寬,以計(jì)算得到新增碼流帶寬,這種組合雖然相對(duì)于完全 按計(jì)算得到剩余帶寬和新增碼流帶寬的方法更復(fù)雜一些,但利用了監(jiān)控視頻碼流的實(shí)際流 量可能與計(jì)算值有一定偏差的特點(diǎn),在判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流時(shí),提高 了判斷的準(zhǔn)確度??梢岳斫?,在本發(fā)明的其他某些實(shí)施方式中,也可以使用客戶(hù)端連接數(shù)(包括新 增的)與當(dāng)前碼流參數(shù)來(lái)計(jì)算將要使用的總帶寬,再與額定總帶寬相比較,以此判斷當(dāng)前 剩余帶寬是否足夠發(fā)送新增加的碼流(如果計(jì)算得到的總帶寬大于額定總帶寬就說(shuō)明剩 余帶寬足夠)。但是,監(jiān)控視頻碼流實(shí)際占用的帶寬可能與通過(guò)當(dāng)前碼流參數(shù)計(jì)算得到的理 論帶寬不完全一樣,這一點(diǎn)是監(jiān)控視頻區(qū)別于一般電視電影類(lèi)視頻的一個(gè)特點(diǎn),例如,如果 監(jiān)控視頻的當(dāng)前畫(huà)面是靜止的則實(shí)際占用帶寬可能少一些,如果監(jiān)控視頻的當(dāng)前畫(huà)面是運(yùn) 動(dòng)的則實(shí)際占用帶寬可能多一些。所以,以實(shí)際測(cè)量得到剩余帶寬,以計(jì)算得到新增碼流的 帶寬,這種組合在本技術(shù)領(lǐng)域是一種創(chuàng)新,這種組合保證了可以正確判斷當(dāng)前剩余帶寬是 否足夠發(fā)送新增加的碼流。在本發(fā)明的一個(gè)優(yōu)選實(shí)例中,步驟201 (獲取當(dāng)前實(shí)際剩余的帶寬值)可以通過(guò)圖3的流程來(lái)實(shí)現(xiàn)。在步驟301中,周期性地統(tǒng)計(jì)每個(gè)碼流在最近一個(gè)周期時(shí)長(zhǎng)內(nèi)實(shí)際發(fā)送的數(shù)據(jù)量。此后進(jìn)入步驟302,將所有碼流實(shí)際發(fā)送的數(shù)據(jù)量相加,得到累計(jì)數(shù)據(jù)量。此后進(jìn)入步驟303,將累計(jì)數(shù)據(jù)量除以統(tǒng)計(jì)的周期時(shí)長(zhǎng),得到實(shí)際占用帶寬。優(yōu)選 地,周期時(shí)長(zhǎng)可以為9至11秒,典型值是10秒。以9-11秒為周期檢測(cè)實(shí)際的剩余帶寬,可 以在檢測(cè)結(jié)果的波動(dòng)性和實(shí)時(shí)性方面取得比較好平衡。可以理解,也可以使用更長(zhǎng)或更短 的檢測(cè)周期,不過(guò)太長(zhǎng)了檢測(cè)結(jié)果的實(shí)時(shí)性無(wú)法保障,太短了檢測(cè)結(jié)果會(huì)有較大的波動(dòng)性。此后進(jìn)入步驟304,以額定總帶寬減去實(shí)際占用帶寬得到當(dāng)前實(shí)際剩余的帶寬值。在本發(fā)明的一個(gè)優(yōu)選實(shí)例中,在步驟101 (監(jiān)測(cè)通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客 戶(hù)端連接數(shù)是否有變化)可以通過(guò)如圖4所示的流程來(lái)實(shí)現(xiàn)。在步驟401中,當(dāng)數(shù)字錄像機(jī)收到來(lái)自客戶(hù)端的請(qǐng)求時(shí),判斷該請(qǐng)求是否合法,如 果合法則進(jìn)入步驟402,否則進(jìn)入步驟406,向客戶(hù)端反饋失敗消息。在步驟402中,對(duì)所收到的請(qǐng)求的類(lèi)型進(jìn)行判斷,如果其類(lèi)型是請(qǐng)求預(yù)覽,則進(jìn)入 步驟403,如果其類(lèi)型是停止預(yù)覽,則進(jìn)入步驟404。在步驟403中,客戶(hù)端連接數(shù)加1,數(shù)字錄像機(jī)監(jiān)測(cè)到連接數(shù)的變化。在步驟404中,客戶(hù)端連接數(shù)減1,數(shù)字錄像機(jī)監(jiān)測(cè)到連接數(shù)的變化。此后進(jìn)入步 驟405,數(shù)字錄像機(jī)向相應(yīng)的客戶(hù)端反饋停止發(fā)送碼流的消息。此外,客戶(hù)端在正常情況下應(yīng)當(dāng)定期地向客戶(hù)端發(fā)送反饋信息,例如表示收到碼 流等含義的信息。如果數(shù)字錄像機(jī)長(zhǎng)時(shí)間收不到來(lái)自客戶(hù)端的反饋信息,則認(rèn)為該客戶(hù)端 已失去連接,也會(huì)進(jìn)入步驟404。通常這個(gè)事件由一個(gè)定時(shí)器觸發(fā),數(shù)字錄像機(jī)每次收到來(lái) 自客戶(hù)端的反饋信息時(shí),將定時(shí)器重置,如果定時(shí)器發(fā)生超時(shí)事件,則說(shuō)明數(shù)字錄像機(jī)長(zhǎng)時(shí) 間收不到來(lái)自客戶(hù)端的反饋信息。本發(fā)明的各方法實(shí)施方式均可以以軟件、硬件、固件等方式實(shí)現(xiàn)。不管本發(fā)明是 以軟件、硬件、還是固件方式實(shí)現(xiàn),指令代碼都可以存儲(chǔ)在任何類(lèi)型的計(jì)算機(jī)可訪問(wèn)的存儲(chǔ) 器中(例如永久的或者可修改的,易失性的或者非易失性的,固態(tài)的或者非固態(tài)的,固定的 或者可更換的介質(zhì)等等)。同樣,存儲(chǔ)器可以例如是可編程陣列邏輯(Programmable Array Logic,簡(jiǎn)稱(chēng)“PAL”)、隨機(jī)存取存儲(chǔ)器(Random Access Memory,簡(jiǎn)稱(chēng)“RAM”)、可編程只讀存 儲(chǔ)器(Programmable Read Only Memory,簡(jiǎn)稱(chēng) “PROM”)、只讀存儲(chǔ)器(Read-Only Memory, 簡(jiǎn)稱(chēng)“ROM”)、電可擦除可編程只讀存儲(chǔ)器(Electrically Erasable Programmable ROM,簡(jiǎn) 稱(chēng)“EEPR0M”)、磁盤(pán)、光盤(pán)、數(shù)字通用光盤(pán)(Digital Versatile Disc,簡(jiǎn)稱(chēng)“DVD”)等等。本發(fā)明第二實(shí)施方式涉及一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)的碼流參數(shù)調(diào)整模塊。 圖5是該視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)的碼流參數(shù)調(diào)整模塊的結(jié)構(gòu)示意圖。該視頻監(jiān)控系統(tǒng) 的數(shù)字錄像機(jī)的碼流參數(shù)調(diào)整模塊包括第一判斷單元,用于根據(jù)通過(guò)網(wǎng)絡(luò)連接到該數(shù)字錄像機(jī)的客戶(hù)端連接數(shù),判斷客 戶(hù)端連接數(shù)是否變化。可以用一個(gè)連接計(jì)數(shù)器保存最近一次得到的連接數(shù),如果最新得到 的連接數(shù)與最連接計(jì)算器中的值不同,則說(shuō)明客戶(hù)端連數(shù)發(fā)生了變化。第二判斷單元,用于根據(jù)當(dāng)前碼流參數(shù)判斷判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增 碼流。
第一計(jì)算單元,用于在第一判斷單元判定客戶(hù)端連接數(shù)增加,且第二判斷單元判 定當(dāng)前剩余帶寬不夠時(shí),從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流參 數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬,輸出此時(shí)對(duì)應(yīng)的碼流 參數(shù)。第二計(jì)算單元,用于在第一判斷單元判定客戶(hù)端連接數(shù)減少時(shí),從當(dāng)前碼流參數(shù) 開(kāi)始逐級(jí)升高碼流參數(shù),直到按升高后的碼流參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的 總帶寬高于額定總帶寬,輸出最后一次計(jì)算所得總帶寬不高于額定總帶寬時(shí)對(duì)應(yīng)的碼流參 數(shù)。參數(shù)設(shè)置單元,用于將第一計(jì)算單元或第二計(jì)算單元輸出的碼流參數(shù)作為當(dāng)前碼 流參數(shù),提供給本數(shù)字錄像機(jī)中用于所有碼流編碼和發(fā)送的模塊??梢岳斫猓瑓?shù)設(shè)置單元 將第一計(jì)算單元所得到的碼流參數(shù)提供給用于所有碼流編碼和發(fā)送的模塊時(shí),可以是直接 將碼流參數(shù)提供給用于所有碼流編碼和發(fā)送的模塊作為其當(dāng)前碼流參數(shù),也可是將碼流參 數(shù)保存在指定的存儲(chǔ)器中,由用于所有碼流編碼和發(fā)送的模塊在需要這些參數(shù)到指定的存 儲(chǔ)器中去取。碼流的編碼和發(fā)送可以在不同的模塊中實(shí)現(xiàn),也可以在同一個(gè)模塊中實(shí)現(xiàn)。第一實(shí)施方式是與本實(shí)施方式相對(duì)應(yīng)的方法實(shí)施方式,本實(shí)施方式可與第一實(shí)施 方式互相配合實(shí)施。第一實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)在本實(shí)施方式中依然有效,為了 減少重復(fù),這里不再贅述。相應(yīng)地,本實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)也可應(yīng)用在第一實(shí)施 方式中。本發(fā)明第三實(shí)施方式涉及一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)。圖6是該視頻監(jiān)控系 統(tǒng)的數(shù)字錄像機(jī)的結(jié)構(gòu)示意圖。該視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)包括連接控制模塊,用于與客戶(hù)端交互,提供通過(guò)網(wǎng)絡(luò)連接到數(shù)字錄像機(jī)的客戶(hù)端連 接數(shù)。連接控制模塊為數(shù)字錄像機(jī)和客戶(hù)端通信的主要模塊,主要用來(lái)和客戶(hù)端進(jìn)行交互, 碼流發(fā)送,以及記錄提供給其他模塊的一些信息,其與其他模塊的關(guān)系圖8所示。其具體功 能如下1)當(dāng)客戶(hù)端需要請(qǐng)求相應(yīng)通道的碼流時(shí),此模塊用來(lái)和客戶(hù)端進(jìn)行啟動(dòng)碼流的交 互,如果為合法的通信,則為當(dāng)前的請(qǐng)求啟動(dòng)一個(gè)發(fā)送碼流的線程,同時(shí)記錄下這個(gè)線程, 并將所統(tǒng)計(jì)的線程數(shù)加1。2)當(dāng)客戶(hù)端發(fā)送停止預(yù)覽的命令時(shí),則檢測(cè)當(dāng)前命令的合法性,如為合法的命令 則終止所請(qǐng)求的通道的發(fā)送碼流線程,將數(shù)字錄像機(jī)連接總數(shù)減1,如為非法請(qǐng)求,則反饋 給客戶(hù)端相應(yīng)的錯(cuò)誤信息。3)當(dāng)碼流放送的過(guò)程中,如果客戶(hù)端長(zhǎng)時(shí)間未進(jìn)行反饋,則也認(rèn)為此通道發(fā)送的 為無(wú)效碼流,終止此通道的碼流發(fā)送的線程,將數(shù)字錄像機(jī)連接總數(shù)減1。編碼模塊,用于根據(jù)當(dāng)前碼流參數(shù)對(duì)碼流進(jìn)行視頻編碼。帶寬統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)和計(jì)算當(dāng)前實(shí)際剩余的帶寬值。碼流參數(shù)調(diào)整模塊,用于對(duì)碼流參數(shù)進(jìn)行調(diào)整,該模塊具體結(jié)構(gòu)請(qǐng)參見(jiàn)第二實(shí)施 方式,該模塊的工作方式如下當(dāng)連接數(shù)增加時(shí)碼流參數(shù)調(diào)整模塊根據(jù)當(dāng)前剩余帶寬和當(dāng)前碼流參數(shù)來(lái)判斷是否具有足夠的帶 寬來(lái)發(fā)送新增加的碼流,如果足夠則按照當(dāng)前的設(shè)置發(fā)送碼流,例如當(dāng)前DVR總帶寬為128K,已占用108K,如果當(dāng)前碼流參數(shù)為12K,則可以繼續(xù)按照當(dāng)前設(shè)置發(fā)送。如果碼流超過(guò)剩余帶寬數(shù)量,則降低當(dāng)前的碼流參數(shù),計(jì)算出降低后的碼流所占 用的總帶寬數(shù),直到低于總帶寬數(shù)為止,然后重新設(shè)置碼流發(fā)送參數(shù),降低每個(gè)通道的編碼 碼流。例如當(dāng)前DVR總連接數(shù)為12個(gè),總帶寬為128K,每個(gè)連接碼流占用10K,當(dāng)客戶(hù)端請(qǐng) 求第13個(gè)連接時(shí),由于當(dāng)前碼流參數(shù)為10K,預(yù)計(jì)可能達(dá)到的總帶寬為130K,超過(guò)實(shí)際總帶 寬2K,則向下調(diào)整碼流參數(shù)為9K,此時(shí)預(yù)計(jì)總帶寬為117K,小于實(shí)際總帶寬,則按照這個(gè)碼 流參數(shù)重新進(jìn)行編碼發(fā)送,以達(dá)到流暢發(fā)送碼流的目的。當(dāng)連接數(shù)減少時(shí)碼流參數(shù)調(diào)整模塊會(huì)計(jì)算提高當(dāng)前編碼參數(shù)是否會(huì)導(dǎo)致帶寬不夠,如果會(huì)則不進(jìn) 行編碼調(diào)整,例如當(dāng)前總帶寬為128K,連接數(shù)為14個(gè),每個(gè)通道碼流為9K,當(dāng)連接數(shù)變成13 個(gè)以后,假如每個(gè)連接碼流提高1K,即為10K,則預(yù)計(jì)總碼流將達(dá)到130K,大于實(shí)際帶寬2, 所以不進(jìn)行碼流參數(shù)調(diào)整。碼流參數(shù)調(diào)整模塊會(huì)計(jì)算提高當(dāng)前編碼參數(shù)是否會(huì)導(dǎo)致帶寬不夠,如果不會(huì)則將 提高編碼參數(shù),例如當(dāng)前總帶寬為128K,連接數(shù)為13個(gè),每個(gè)通道碼流為9K,當(dāng)連接數(shù)變成 12個(gè)以后,假如每個(gè)連接碼流提高1K,即為10K,則預(yù)計(jì)總碼流將達(dá)到120K,小于實(shí)際總帶 寬128K,可以進(jìn)行碼流調(diào)整,這樣就可以獲取更好的碼流預(yù)覽效果,使帶寬的使用和圖像質(zhì) 量達(dá)到最優(yōu)化。用戶(hù)配置模塊,用于設(shè)置和保存額定總帶寬,客戶(hù)端連接數(shù)上限和碼流質(zhì)量下限 等相關(guān)的參數(shù)。用戶(hù)可以根據(jù)自身的網(wǎng)絡(luò)情況來(lái)設(shè)置網(wǎng)絡(luò)的帶寬上限,連接數(shù)的上限和碼 流質(zhì)量的下限,這樣就可以最大限度的保證視頻瀏覽的流暢性。同時(shí)用戶(hù)可以根據(jù)不同的 數(shù)字錄像機(jī)的性能來(lái)調(diào)節(jié)最優(yōu)的視頻預(yù)覽質(zhì)量和網(wǎng)絡(luò)的連接數(shù)。將連接控制、帶寬統(tǒng)計(jì)和碼流參數(shù)的調(diào)整分別設(shè)計(jì)在不同的模塊中,這種模塊配 置方案可靠性較好、模塊的維護(hù)較為方便。其中,帶寬統(tǒng)計(jì)模塊的結(jié)構(gòu)如圖7所示,包括N個(gè)碼流發(fā)送線程,每個(gè)碼流發(fā)送線程用于發(fā)送一路碼流,N為當(dāng)前碼流的總數(shù)。定時(shí)器,用于周期性地發(fā)出超時(shí)信號(hào)。累加器,用于將N個(gè)碼流發(fā)送線程發(fā)送的數(shù)據(jù)量進(jìn)行累加,并在收到定時(shí)器的超 時(shí)信號(hào)時(shí),輸出當(dāng)前累加值,再對(duì)累加值清零。除法器,用于在收到定時(shí)器的超時(shí)信號(hào)時(shí),將來(lái)自累加器的累加值除以周期性超 時(shí)的時(shí)長(zhǎng)(即周期時(shí)長(zhǎng)),得到實(shí)際占用帶寬。減法器,用于將額定總帶寬減去除法器輸出的實(shí)際占用帶寬,得到當(dāng)前實(shí)際剩余 的帶寬值。第一實(shí)施方式是與本實(shí)施方式相對(duì)應(yīng)的方法實(shí)施方式,本實(shí)施方式可與第一實(shí)施 方式互相配合實(shí)施。第一實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)在本實(shí)施方式中依然有效,為了 減少重復(fù),這里不再贅述。相應(yīng)地,本實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)也可應(yīng)用在第一實(shí)施 方式中。需要說(shuō)明的是,本發(fā)明第二和第三實(shí)施方式中提到的各模塊和單元都是邏輯的, 在物理上,一個(gè)邏輯模塊或單元可以是一個(gè)物理模塊或單元,也可以是一個(gè)物理模塊或單 元的一部分,還可以以多個(gè)物理模塊或單元的組合實(shí)現(xiàn),這些邏輯模塊或單元本身的物理實(shí)現(xiàn)方式并不是最重要的,這些邏輯模塊或單元所實(shí)現(xiàn)的功能的組合是才解決本發(fā)明所提 出的技術(shù)問(wèn)題的關(guān)鍵。此外,為了突出本發(fā)明的創(chuàng)新部分,本發(fā)明上述第二和第三實(shí)施方式 并沒(méi)有將與解決本發(fā)明所提出的技術(shù)問(wèn)題關(guān)系不太密切的單元(如電源模塊等)引入,這 并不表明第二和第三實(shí)施方式并不存在其它的單元。 雖然通過(guò)參照本發(fā)明的某些優(yōu)選實(shí)施方式,已經(jīng)對(duì)本發(fā)明進(jìn)行了圖示和描述,但 本領(lǐng)域的普通技術(shù)人員應(yīng)該明白,可以在形式上和細(xì)節(jié)上對(duì)其作各種改變,而不偏離本發(fā) 明的精神和范圍。
權(quán)利要求
一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法,其特征在于,包括以下步驟當(dāng)通過(guò)網(wǎng)絡(luò)連接到所述數(shù)字錄像機(jī)的客戶(hù)端連接數(shù)增加時(shí),根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流;如果當(dāng)前剩余帶寬不夠,則從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;以所述降低后的碼流參數(shù)對(duì)所有碼流進(jìn)行編碼發(fā)送。
2.根據(jù)權(quán)利要求1所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法, 其特征在于,所述根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流的步驟包括 以下子步驟獲取當(dāng)前實(shí)際剩余的帶寬值;以當(dāng)前碼流參數(shù)計(jì)算新增碼流所需帶寬值;如果當(dāng)前實(shí)際剩余的帶寬值大于或等于新增碼流所需帶寬值,則判定為當(dāng)前剩余帶寬 足夠發(fā)送新增碼流,否則判定為當(dāng)前剩余帶寬不夠發(fā)送新增碼流。
3.根據(jù)權(quán)利要求2所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法, 其特征在于,所述獲取當(dāng)前實(shí)際剩余的帶寬值的步驟包括以下子步驟周期性地統(tǒng)計(jì)每個(gè)碼流在最近一個(gè)周期時(shí)長(zhǎng)內(nèi)實(shí)際發(fā)送的數(shù)據(jù)量; 將所有碼流實(shí)際發(fā)送的數(shù)據(jù)量相加,除以統(tǒng)計(jì)的周期時(shí)長(zhǎng),得到實(shí)際占用帶寬; 以額定總帶寬減去所述實(shí)際占用帶寬得到所述當(dāng)前實(shí)際剩余的帶寬值。
4.根據(jù)權(quán)利要求3所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法, 其特征在于,還包括以下步驟如果當(dāng)前剩余帶寬足夠發(fā)送新增碼流,則以當(dāng)前碼流參數(shù)對(duì)包括所述新增碼流在內(nèi)的 所有碼流進(jìn)行編碼發(fā)送。
5.根據(jù)權(quán)利要求4所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方 法,其特征在于,在所述從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù)的步驟中,還包括以下子步 驟如果將碼流參數(shù)降到預(yù)先設(shè)定的最低值,但按降低后的碼流參數(shù)計(jì)算,包括新增碼流 在內(nèi)的所有碼流的總帶寬仍高于額定總帶寬,則拒絕所述新增碼流的連接請(qǐng)求。
6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接 的控制方法,其特征在于,還包括以下步驟當(dāng)通過(guò)網(wǎng)絡(luò)連接到所述數(shù)字錄像機(jī)的客戶(hù)端連接數(shù)減少時(shí),從當(dāng)前碼流參數(shù)開(kāi)始,逐 級(jí)提高碼流參數(shù),直到按提高后的碼流參數(shù)計(jì)算,繼續(xù)存在的所有碼流所需的總帶寬高于 額定總帶寬,此時(shí),以最后一次所需總帶寬不高于額定總帶寬的碼流參數(shù)作為當(dāng)前碼流參 數(shù),對(duì)所有碼流進(jìn)行編碼發(fā)送。
7.根據(jù)權(quán)利要求6所述的視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)與客戶(hù)端網(wǎng)絡(luò)連接的控制方法, 其特征在于,還包括以下步驟當(dāng)所述數(shù)字錄像機(jī)收到來(lái)自所述客戶(hù)端的請(qǐng)求時(shí),判斷該請(qǐng)求是否合法; 如果該請(qǐng)求合法且該請(qǐng)求的類(lèi)型為請(qǐng)求預(yù)覽,則將所述客戶(hù)端連接數(shù)加1 ; 如果該請(qǐng)求合法且該請(qǐng)求的類(lèi)型為停止預(yù)覽,則將所述客戶(hù)端連接數(shù)減1。
8.一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)碼流參數(shù)調(diào)整模塊,其特征在于,包括第一判斷單元,用于根據(jù)通過(guò)網(wǎng)絡(luò)連接到該數(shù)字錄像機(jī)的客戶(hù)端連接數(shù),判斷客戶(hù)端 連接數(shù)是否變化;第二判斷單元,用于根據(jù)當(dāng)前碼流參數(shù)判斷當(dāng)前剩余帶寬是否足夠發(fā)送新增碼流; 第一計(jì)算單元,用于在所述第一判斷單元判定客戶(hù)端連接數(shù)增加,且所述第二判斷單 元判定當(dāng)前剩余帶寬不夠時(shí),從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼 流參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;參數(shù)設(shè)置單元,用于將所述第一計(jì)算單元所得的降低后的碼流參數(shù)作為當(dāng)前碼流參數(shù) 提供給用于所有碼流編碼和發(fā)送的模塊。
9.根據(jù)權(quán)利要求8所述的視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī)碼流參數(shù)調(diào)整模塊,其特征在 于,還包括第二計(jì)算單元,用于在所述第一判斷單元判定客戶(hù)端連接數(shù)減少時(shí),從當(dāng)前碼流參數(shù) 開(kāi)始逐級(jí)升高碼流參數(shù),直到按升高后的碼流參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的 總帶寬高于額定總帶寬,輸出最后一次計(jì)算所得總帶寬不高于額定總帶寬時(shí)對(duì)應(yīng)的碼流參 數(shù);所述參數(shù)設(shè)置單元還用于將所述第二計(jì)算單元所輸出的碼流參數(shù)作為當(dāng)前碼流參數(shù) 提供給用于所有碼流編碼和發(fā)送的模塊。
10.一種視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī),其特征在于,包括連接控制模塊,用于與客戶(hù)端交互,提供通過(guò)網(wǎng)絡(luò)連接到所述數(shù)字錄像機(jī)的客戶(hù)端連 接數(shù);編碼模塊,用于根據(jù)當(dāng)前碼流參數(shù)對(duì)碼流進(jìn)行編碼; 帶寬統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)和計(jì)算當(dāng)前實(shí)際剩余的帶寬值; 碼流參數(shù)調(diào)整模塊,用于對(duì)碼流參數(shù)進(jìn)行調(diào)整,其中包括第一判斷單元,用于根據(jù)來(lái)自所述連接控制模塊的客戶(hù)端連接數(shù),判斷客戶(hù)端連接數(shù) 是否變化;第二判斷單元,用于根據(jù)當(dāng)前碼流參數(shù)判斷所述帶寬統(tǒng)計(jì)模塊所提供的當(dāng)前實(shí)際剩余 的帶寬是否足夠發(fā)送新增碼流;第一計(jì)算單元,用于在所述第一判斷單元判定客戶(hù)端連接增加,且所述第二判斷單元 判定當(dāng)前剩余帶寬不夠時(shí),從當(dāng)前碼流參數(shù)開(kāi)始逐級(jí)降低碼流參數(shù),直到按降低后的碼流 參數(shù)計(jì)算,包括新增碼流在內(nèi)的所有碼流的總帶寬不高于額定總帶寬;參數(shù)設(shè)置單元,用于將所述第一計(jì)算單元所得的降低后的碼流參數(shù)作為當(dāng)前碼流參數(shù) 提供給所述編碼模塊和連接控制模塊使用。
11.根據(jù)權(quán)利要求10所述的視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī),其特征在于,還包括 用戶(hù)配置模塊,用于設(shè)置和保存額定總帶寬,客戶(hù)端連接數(shù)上限和碼流質(zhì)量下限。
12.根據(jù)權(quán)利要求10或11所述的視頻監(jiān)控系統(tǒng)的數(shù)字錄像機(jī),其特征在于,所述帶寬 統(tǒng)計(jì)模塊包括N個(gè)碼流發(fā)送線程,每個(gè)碼流發(fā)送線程用于發(fā)送一路碼流,N為當(dāng)前碼流的總數(shù); 定時(shí)器,用于周期性地發(fā)出超時(shí)信號(hào);累加器,用于將N個(gè)碼流發(fā)送線程發(fā)送的數(shù)據(jù)量進(jìn)行累加,并在收到所述定時(shí)器的超時(shí)信號(hào)時(shí),輸出當(dāng)前累加值,再對(duì)累加值清零;除法器,用于在收到所述定時(shí)器的超時(shí)信號(hào)時(shí),將來(lái)自所述累加器的累加值除以周期 性超時(shí)的時(shí)長(zhǎng),得到實(shí)際占用帶寬;減法器,用于將所述額定總帶寬減去所述除法器輸出的實(shí)際占用帶寬,得到所述當(dāng)前 實(shí)際剩余的帶寬值。
全文摘要
本發(fā)明涉及視頻監(jiān)控領(lǐng)域,公開(kāi)了一種視頻監(jiān)控系統(tǒng)中數(shù)字錄像機(jī)及其網(wǎng)絡(luò)連接控制方法。本發(fā)明中,當(dāng)剩余帶寬不足以支持新增碼流時(shí),逐級(jí)降低碼流參數(shù)以適應(yīng)總帶寬,并以調(diào)整后的碼流參數(shù)對(duì)所有碼流重新編碼發(fā)送,使數(shù)字錄像機(jī)能夠以有限的帶寬支持更多客戶(hù)端同時(shí)查看監(jiān)控視頻。在客戶(hù)端連接數(shù)減少時(shí),在額定總帶寬的限制下,嘗試升高碼流參數(shù),可以實(shí)現(xiàn)自適應(yīng)的碼流調(diào)整。
文檔編號(hào)H04N7/24GK101977185SQ201010506120
公開(kāi)日2011年2月16日 申請(qǐng)日期2010年10月14日 優(yōu)先權(quán)日2010年10月14日
發(fā)明者卓庭亮, 商杰, 章哲銪, 胡揚(yáng)忠, 鄔偉琪 申請(qǐng)人:杭州??低晹?shù)字技術(shù)股份有限公司