專利名稱:數(shù)字視頻錄像機(jī)及其網(wǎng)絡(luò)帶寬控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻監(jiān)控領(lǐng)域,特別涉及數(shù)字視頻錄像機(jī)遠(yuǎn)程預(yù)覽、回放和下載的網(wǎng)絡(luò)帶寬控制技術(shù)。
背景技術(shù):
數(shù)字視頻錄像機(jī)(Digital Video Recorder,簡(jiǎn)稱“DVR”)是計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)、數(shù)字視頻技術(shù)和傳統(tǒng)視頻、安防技術(shù)相結(jié)合的高科技產(chǎn)品,具有極高的技術(shù)含量,是數(shù)字化視頻光盤(Digital Video Disk,簡(jiǎn)稱“DVD”)、磁帶式錄像機(jī)的換代產(chǎn)品,可應(yīng)用于電力遠(yuǎn)程監(jiān)控、銀行保安監(jiān)控、樓宇智能化、家庭防盜監(jiān)控等領(lǐng)域,具有廣闊的市場(chǎng)前景。數(shù)字視頻錄像機(jī)的基本功能是將模擬的音視頻信號(hào)轉(zhuǎn)變?yōu)榛顒?dòng)圖像專家組(Moving Picture Experts Group,簡(jiǎn)稱“MPEG”)數(shù)字信號(hào)存儲(chǔ)在存儲(chǔ)介質(zhì)(如硬盤)上,并提供與錄制、播放和管理節(jié)目相對(duì)應(yīng)的功能。遠(yuǎn)程監(jiān)控是對(duì)環(huán)境和計(jì)算機(jī)系統(tǒng)及網(wǎng)絡(luò)設(shè)備的監(jiān)視,即指通過網(wǎng)絡(luò)獲得信息為主,以及通過網(wǎng)絡(luò)對(duì)遠(yuǎn)程計(jì)算機(jī)進(jìn)行操作的方法。同時(shí)還包括對(duì)網(wǎng)絡(luò)設(shè)備的控制,現(xiàn)今大多數(shù)網(wǎng)絡(luò)設(shè)備都支持Telnet,甚至Web方式對(duì)其進(jìn)行遠(yuǎn)程管理,這也是一種遠(yuǎn)程控制的方法。數(shù)字視頻錄像機(jī)的數(shù)據(jù)存儲(chǔ)格式標(biāo)準(zhǔn)MPEG-2制定于1994年,適應(yīng)高級(jí)工業(yè)標(biāo)準(zhǔn)的圖象質(zhì)量以及更高的傳輸率。除了作為DVD的指定標(biāo)準(zhǔn)外,MPEG-2還可用于為廣播,有線電視網(wǎng),電纜網(wǎng)絡(luò)以及衛(wèi)星直播,提供廣播級(jí)的數(shù)字視頻。此外MPEG-2還可提供一個(gè)較廣的范圍改變壓縮比,以適應(yīng)不同畫面質(zhì)量,存儲(chǔ)容量,以及帶寬的要求。MPEG-2的編碼碼流分為六個(gè)層次。為更好地表示編碼數(shù)據(jù),MPEG-2用句法規(guī)定了一個(gè)層次性結(jié)構(gòu)。它分為六層,自上到下分別是圖像序列層、圖像組(Group Of Pictures, 簡(jiǎn)稱“G0P”)、圖像、宏塊條、宏塊、塊。MPEG-2的編碼圖像被分為三類,分別稱為I幀,P幀和B幀。I幀圖像采用幀內(nèi)編碼方式,主要用于接收機(jī)的初始化和信道的獲取,以及節(jié)目的切換和插入。P幀和B幀圖像采用幀間編碼方式,P幀圖像采用前向時(shí)間預(yù)測(cè),可以提高壓縮效率和圖像質(zhì)量且?guī)械拿恳粋€(gè)宏塊可以是前向預(yù)測(cè),也可以是幀內(nèi)編碼。B幀圖像采用雙向時(shí)間預(yù)測(cè),可以大大提高壓縮倍數(shù)。本發(fā)明的發(fā)明人發(fā)現(xiàn),數(shù)字視頻錄像機(jī)遠(yuǎn)程監(jiān)控功能由于網(wǎng)絡(luò)環(huán)境、數(shù)字視頻錄像機(jī)本身的網(wǎng)絡(luò)帶寬限制等因素,若按現(xiàn)有技術(shù)進(jìn)行遠(yuǎn)程監(jiān)控,將容易產(chǎn)生網(wǎng)絡(luò)卡頓堵塞現(xiàn)象等傳輸技術(shù)瓶頸問題,適應(yīng)從窄帶到寬帶任意的網(wǎng)絡(luò)帶寬、低延遲和高質(zhì)量、支持網(wǎng)站服務(wù)形式的訪問等視頻服務(wù)是當(dāng)今DVR技術(shù)領(lǐng)域的關(guān)鍵技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種數(shù)字視頻錄像機(jī),包括預(yù)覽模塊,用于提供遠(yuǎn)程預(yù)覽;回放下載控制模塊,用于控制遠(yuǎn)程回放和遠(yuǎn)程下載;帶寬控制模塊,用于在回放下載控制模塊收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),判斷預(yù)覽模塊當(dāng)前是否存在遠(yuǎn)程預(yù)覽,如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則指示該預(yù)覽模塊中斷所有已存在的遠(yuǎn)程預(yù)覽。 最大帶寬設(shè)置模塊,用于設(shè)置所述最大帶寬門限。本發(fā)明還包括權(quán)限判斷模塊,用于判斷遠(yuǎn)程用戶預(yù)覽、回放或下載的權(quán)限。本發(fā)明的實(shí)施方式還提供了一種數(shù)字視頻錄像機(jī)及其網(wǎng)絡(luò)帶寬控制方法,可以在總帶寬較低的條件下,保證遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。為解決上述技術(shù)問題,本發(fā)明的實(shí)施方式提供了一種數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,包括以下步驟數(shù)字視頻錄像機(jī)收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),判斷當(dāng)前是否存在遠(yuǎn)程預(yù)覽;如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則中斷所有已存在的遠(yuǎn)程預(yù)覽。本發(fā)明實(shí)施方式與現(xiàn)有技術(shù)相比,主要區(qū)別及其效果在于DVR在收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),關(guān)閉現(xiàn)存的所有遠(yuǎn)程預(yù)覽,可以在總帶寬較低的條件下,保證遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。進(jìn)一步地,在帶寬不夠時(shí),DVR將最早創(chuàng)建的遠(yuǎn)程預(yù)覽刪除,可以保證最新的遠(yuǎn)程預(yù)覽得以實(shí)現(xiàn)。進(jìn)一步地,在DVR進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)全部或部分的節(jié)目流只抽取和發(fā)送包I幀和音頻幀,可以進(jìn)一步減少遠(yuǎn)程回放或遠(yuǎn)程下載對(duì)帶寬的需要,在總帶寬較低的條件下,保證多路遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。進(jìn)一步地,當(dāng)遠(yuǎn)程回放或遠(yuǎn)程下載的數(shù)量超過門限時(shí),對(duì)全部或部分的節(jié)目流只抽取和發(fā)送包I幀和音頻幀,既可以在遠(yuǎn)程回放或遠(yuǎn)程下載用戶少時(shí)為其提供高質(zhì)量的視頻,又可以在用戶多時(shí)滿足所有用戶的基本需要。
圖1是本發(fā)明第四實(shí)施方式中數(shù)字視頻錄像機(jī)的系統(tǒng)結(jié)構(gòu)示意圖。圖2是本發(fā)明第一實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的流程示意圖;圖3(a)是本發(fā)明第一實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的優(yōu)先級(jí)規(guī)則預(yù)覽中斷流程示意圖;圖3(b)是本發(fā)明第一實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的FIFO規(guī)則中斷預(yù)覽示意圖;圖4是本發(fā)明第二實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的抽幀或回放下載流程示意圖;圖5是本發(fā)明第三實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的一種根據(jù)遠(yuǎn)程回放和下載的連接數(shù)調(diào)整節(jié)目流發(fā)送方式的流程示意圖;圖6是本發(fā)明第三實(shí)施方式中網(wǎng)絡(luò)帶寬控制方法的另一種根據(jù)遠(yuǎn)程回放和下載的連接數(shù)調(diào)整節(jié)目流發(fā)送方式的流程示意具體實(shí)施例方式在以下的敘述中,為了使讀者更好地理解本申請(qǐng)而提出了許多技術(shù)細(xì)節(jié)。但是,本領(lǐng)域的普通技術(shù)人員可以理解,即使沒有這些技術(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ù)字視頻錄像機(jī)。圖1是一種該數(shù)字視頻錄像機(jī)的系統(tǒng)結(jié)構(gòu)示意圖,該數(shù)字視頻錄像機(jī)包括預(yù)覽模塊,用于提供遠(yuǎn)程預(yù)覽?;胤畔螺d控制模塊,用于控制遠(yuǎn)程回放和遠(yuǎn)程下載。帶寬控制模塊有以下作用在回放下載控制模塊收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),判斷預(yù)覽模塊當(dāng)前是否存在遠(yuǎn)程預(yù)覽,如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則指示該預(yù)覽模塊中斷所有已存在的遠(yuǎn)程預(yù)覽。在預(yù)覽模塊收到遠(yuǎn)程預(yù)覽請(qǐng)求時(shí),判斷回放下載控制模塊是否處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài),如果是,則指示預(yù)覽模塊拒絕該遠(yuǎn)程預(yù)覽請(qǐng)求。在預(yù)覽模塊收到遠(yuǎn)程預(yù)覽請(qǐng)求、并且回放下載控制模塊未處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),判斷當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,是否超過預(yù)先設(shè)置的最大帶寬門限,如果沒有超過預(yù)先設(shè)置的最大帶寬門限則指示預(yù)覽模塊新增該預(yù)覽,如果超過預(yù)先設(shè)置的最大帶寬門限,則指示預(yù)覽模塊按時(shí)間從先到后的順序,依次剔除已有的遠(yuǎn)程預(yù)覽,直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限。最大帶寬設(shè)置模塊,用于設(shè)置最大帶寬門限。權(quán)限判斷模塊,用于遠(yuǎn)程用戶的預(yù)覽或回放下載請(qǐng)求時(shí)的權(quán)限判斷。這些模塊中,預(yù)覽模塊、回放下載控制模塊和帶寬控制模塊是必需的,其它的模塊是可選的。抽幀模塊,用于將節(jié)目流中的I幀和音頻幀抽取出來。回放下載控制模塊在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于至少一個(gè)節(jié)目流,通過抽幀模塊將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含 I幀和音頻幀的節(jié)目流。本發(fā)明第一實(shí)施方式涉及一種數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法。如圖2所示,該數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法包括以下步驟在步驟101中,收到來自遠(yuǎn)程客戶端的請(qǐng)求時(shí),判斷請(qǐng)求的類型是遠(yuǎn)程預(yù)覽請(qǐng)求、 遠(yuǎn)程回放請(qǐng)求、還是遠(yuǎn)程下載請(qǐng)求。若是遠(yuǎn)程預(yù)覽請(qǐng)求,則進(jìn)入步驟102 ;若是遠(yuǎn)程回放請(qǐng)求或遠(yuǎn)程下載請(qǐng)求,則進(jìn)入步驟108。在步驟102中,判定當(dāng)前是否已存在遠(yuǎn)程回放下載任務(wù)。若是,則進(jìn)入步驟103 ;若否,則進(jìn)入步驟104。在步驟103中,拒絕該預(yù)覽請(qǐng)求,此后結(jié)束本流程。當(dāng)數(shù)字視頻錄像機(jī)處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),如果收到遠(yuǎn)程預(yù)覽請(qǐng)求,則拒絕該遠(yuǎn)程預(yù)覽請(qǐng)求。這樣可以保證當(dāng)前正在進(jìn)行的遠(yuǎn)程回放或遠(yuǎn)程下載可以有足夠的帶寬運(yùn)行。遠(yuǎn)程預(yù)覽的請(qǐng)求端在被DVR拒絕后,可以繼續(xù)周期性地發(fā)送遠(yuǎn)程預(yù)覽請(qǐng)求,直到被DVR接受。這種請(qǐng)求可以是以固定周期發(fā)送,也可以是非固定的周期,例如,每次被拒絕后,加長(zhǎng)下一次請(qǐng)求的時(shí)間間隔,直到當(dāng)前的時(shí)間間隔達(dá)到預(yù)先設(shè)定的上限。在步驟104中,記錄預(yù)覽連接的開始時(shí)間以及碼率。此后進(jìn)入步驟105,判斷當(dāng)前占用帶寬與該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率之和是否超過最大帶寬門限。當(dāng)數(shù)字視頻錄像機(jī)未處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),如果收到新的遠(yuǎn)程預(yù)覽請(qǐng)求,則判斷當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,是否超過預(yù)先設(shè)置的最大帶寬門限,若是,則進(jìn)入步驟106 ;若否,則進(jìn)入步驟107。當(dāng)數(shù)字視頻錄像機(jī)判斷當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率超過預(yù)先設(shè)置的最大帶寬門限,則按時(shí)間從先到后的順序,依次剔除已有的遠(yuǎn)程預(yù)覽,直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限。如果沒有超過預(yù)先設(shè)置的最大帶寬門限,則新增該預(yù)覽。在步驟106中,依照優(yōu)先級(jí)規(guī)則依次中斷預(yù)覽。具體地說,在帶寬不夠時(shí),將優(yōu)先級(jí)最低的遠(yuǎn)程預(yù)覽刪除。如果最低優(yōu)先級(jí)的遠(yuǎn)程預(yù)覽有多個(gè),則將其中最早的遠(yuǎn)程預(yù)覽刪除,可以保證最新的遠(yuǎn)程預(yù)覽得以實(shí)現(xiàn)。此后進(jìn)入步驟107,因?yàn)閹捵銐蛄?,所以允許預(yù)覽。在步驟108中,判定當(dāng)前是否已存在遠(yuǎn)程回放或遠(yuǎn)程下載任務(wù)。若是,則進(jìn)入步驟109 ;若否,則進(jìn)入步驟111。在步驟109中,中斷所有預(yù)覽。數(shù)字視頻錄像機(jī)收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則中斷(或剔除)所有已存在的遠(yuǎn)程預(yù)覽,可以在總帶寬較低的條件下,保證遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。此后進(jìn)入步驟110中,允許回放下載,此后結(jié)束本流程。在步驟111中,拒絕回放下載,此后結(jié)束本流程。在有遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),拒絕新的遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求,可以保證原來的遠(yuǎn)程回放或遠(yuǎn)程下載盡快完成。在發(fā)明的另一個(gè)實(shí)例中,在步驟108判定為已存在遠(yuǎn)程回放或遠(yuǎn)程下載的情況下,下可以不執(zhí)行步驟111,而是執(zhí)行步驟110,這樣的話原來的遠(yuǎn)程回放或遠(yuǎn)程下載會(huì)受一定的影響,不過新的遠(yuǎn)程回放或遠(yuǎn)程下載可以盡快被執(zhí)行。圖2所示的流程中,最基本的步驟是102、103和107,其它的步驟都是起到優(yōu)化作
用的可選步驟。作為本發(fā)明的一個(gè)實(shí)例,可以預(yù)先為各個(gè)通道設(shè)定優(yōu)先級(jí),收到新的遠(yuǎn)程預(yù)覽請(qǐng)求時(shí),如果當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率超過預(yù)先設(shè)置的最大帶寬限制,則可以按優(yōu)先級(jí)從低到高的順序,依次剔除已有的遠(yuǎn)程預(yù)覽,直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限。如果最低優(yōu)先級(jí)的遠(yuǎn)程預(yù)覽有多個(gè),則可以按時(shí)間從先到后的順序依次剔除。本實(shí)施方式中,步驟106和107可以進(jìn)一步包括如圖3(a)所示中的子步驟。在步驟201中,給通道設(shè)定通道優(yōu)先級(jí)。這一步驟可以預(yù)先執(zhí)行,不必每次執(zhí)行。此后進(jìn)入步驟202,數(shù)字視頻錄像機(jī)帶寬控制模塊根據(jù)通道設(shè)定通道優(yōu)先級(jí)中斷當(dāng)前的遠(yuǎn)程預(yù)覽,直到當(dāng)前剩余的遠(yuǎn)程預(yù)覽已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限。此后進(jìn)入步驟203,帶寬控制模塊判定當(dāng)前占用帶寬與該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率之和是否超過最大帶寬設(shè)置模塊設(shè)置的最大帶寬門限。若是,則返回步驟202 ;若否,則進(jìn)入步驟204。遠(yuǎn)程預(yù)覽或回放下載的請(qǐng)求端在被DVR拒絕后,可以繼續(xù)周期性地發(fā)送遠(yuǎn)程預(yù)覽或回放下載請(qǐng)求,直到被DVR接受。這種請(qǐng)求可以是以固定周期發(fā)送,也可以是非固定的周期,例如,每次被拒絕后,加長(zhǎng)下一次請(qǐng)求的時(shí)間間隔,直到達(dá)到時(shí)間間隔的上限。在步驟204中,帶寬控制模塊允許回放下載(此步驟即步驟107),此后結(jié)束本流程。本實(shí)施方式中,作為所述網(wǎng)絡(luò)帶寬控制方法的一個(gè)優(yōu)選例的預(yù)覽流程中的預(yù)覽中斷的優(yōu)先級(jí)規(guī)則,如圖2(b)所示,具體描述如下1將所有通道優(yōu)先級(jí)分為N,其中N e N+。2為每個(gè)通道分別標(biāo)記為i,其中i e (0. . . N-1),相應(yīng)地,該通道優(yōu)先級(jí)配置為i, 通道i的優(yōu)先級(jí)大于通道i-1。3預(yù)覽或回放下載任務(wù)依次進(jìn)入標(biāo)記優(yōu)先級(jí)為i的通道。4如果當(dāng)前占用帶寬與該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率之和超過最大帶寬設(shè)置模塊設(shè)置的最大帶寬門限,則按時(shí)間從先到后的順序,即隊(duì)列中的先進(jìn)先出規(guī)則(First In First Out,簡(jiǎn)稱“FIFO”),依次剔除已有的遠(yuǎn)程預(yù)覽,S卩如圖3(b)所示的左邊通道的預(yù)覽或回放下載任務(wù)先被中斷(剔除),直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限,即當(dāng)前剩余網(wǎng)絡(luò)通道能夠滿足當(dāng)前新增加的預(yù)覽或回放下載任務(wù)得以實(shí)現(xiàn)。在帶寬不夠時(shí),將最早的遠(yuǎn)程預(yù)覽刪除,可以保證最新的遠(yuǎn)程預(yù)覽得以實(shí)現(xiàn)。此外,可以理解,本發(fā)明所涉及的預(yù)覽剔除的優(yōu)先級(jí)規(guī)則可以理解為其他的優(yōu)先級(jí)規(guī)則,如面臨網(wǎng)絡(luò)負(fù)載過重低帶寬時(shí),可以依據(jù)最近最久未使用(LRU)規(guī)則等,其中LRU 選擇最近最久未被響應(yīng)的遠(yuǎn)程預(yù)覽或回放下載請(qǐng)求予以中斷(剔除);對(duì)于網(wǎng)絡(luò)負(fù)載正常時(shí),可以依據(jù)局部性規(guī)則等,其中,局部性規(guī)則是指,對(duì)某些經(jīng)常使用通道的設(shè)置高優(yōu)先級(jí), 這樣總體提高了網(wǎng)絡(luò)利用率。本發(fā)明第二實(shí)施方式涉及一種數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法。第二實(shí)施方式在第一實(shí)施方式的基礎(chǔ)上進(jìn)行了改進(jìn),主要改進(jìn)之處在于在DVR 進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)全部或部分的節(jié)目流只抽取和發(fā)送包I幀和音頻幀,可以進(jìn)一步減少遠(yuǎn)程回放或遠(yuǎn)程下載對(duì)帶寬的需要,在總帶寬較低的條件下,保證多路遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。具體地說,如圖4所示,本實(shí)施方式中主要改進(jìn)之處包括以下步驟在步驟301中,回放下載是按時(shí)間還是文件方式進(jìn)行。若按時(shí)間,則進(jìn)入步驟302 ;若按文件,則進(jìn)入步驟307。在步驟302中,判定當(dāng)前文件是否發(fā)送完畢。若否,則進(jìn)入步驟303 ;若是,則結(jié)束本流程;在步驟303中,判斷該文件所屬的通道是否需要抽幀。
若是,則進(jìn)入步驟304 ;若否,則進(jìn)入步驟305。在步驟304中,抽取B幀和P幀只留I幀和音頻幀。數(shù)字視頻錄像機(jī)進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于至少一個(gè)節(jié)目流,將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含I幀和音頻幀的節(jié)目流。在步驟305中,不抽幀回放,即正?;胤?。此后進(jìn)入步驟306,一個(gè)文件回放結(jié)束,此后返回步驟302。在步驟307中,判斷該文件所屬的通道是否需要抽幀。若是,則進(jìn)入步驟308 ;若否,則進(jìn)入步驟309。在步驟308中,抽取BP幀只留I幀和音頻幀。在步驟309,不抽幀回放,即正?;胤?。此后計(jì)入步驟310,一個(gè)文件回放結(jié)束,此后結(jié)束本流程。此外,步驟304和305可以理解為進(jìn)行“抽幀”操作。本發(fā)明第三實(shí)施方式涉及一種數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法。第三實(shí)施方式在第二實(shí)施方式的基礎(chǔ)上進(jìn)行改進(jìn),主要改進(jìn)在于在當(dāng)遠(yuǎn)程回放或遠(yuǎn)程下載的數(shù)量超過門限時(shí),對(duì)全部或部分的節(jié)目流只抽取和發(fā)送包I幀和音頻幀,既可以在遠(yuǎn)程回放或遠(yuǎn)程下載用戶少時(shí)為其提供高質(zhì)量的視頻,又可以在用戶多時(shí)滿足所有用戶的基本需要。具體地說數(shù)字視頻錄像機(jī)收到遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求時(shí),判斷當(dāng)前正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的連接數(shù)量是否達(dá)到預(yù)定的第一門限,如果是,則在建立新的遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于需要發(fā)送的全部或部分節(jié)目流,將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含I幀和音頻幀的節(jié)目流。也可以是根據(jù)配置,對(duì)指定通道的節(jié)目流抽I幀,對(duì)其它通道的節(jié)目流正常播放。 還可以預(yù)先對(duì)各個(gè)通道進(jìn)行優(yōu)先級(jí)的配置,在當(dāng)前正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的連接數(shù)量達(dá)到預(yù)定的第一門限時(shí),只對(duì)優(yōu)先級(jí)低于指定級(jí)別的節(jié)目流,將其中的I幀和音頻幀抽取出來,向相應(yīng)的請(qǐng)求端送只包含I幀和音頻幀的節(jié)目流。所述網(wǎng)絡(luò)帶寬控制方法在遠(yuǎn)程抽幀或回放下載流程中可以根據(jù)遠(yuǎn)程回放和下載的連接數(shù)調(diào)整發(fā)送節(jié)目流的方式,如圖5所示,具體步驟如下在步驟401中,收到一個(gè)回放下載請(qǐng)求。此后進(jìn)入步驟402,判斷當(dāng)前已存在的回放下載網(wǎng)絡(luò)連接是否達(dá)到第一門限。若是,則進(jìn)入步驟403 ;若否,則進(jìn)入步驟406 ;在步驟403中,進(jìn)行文件抽幀操作。此后進(jìn)入步驟404,發(fā)送I幀和音頻幀節(jié)目流(Program stream,簡(jiǎn)稱“PS”)。此后進(jìn)入步驟405,判定該回放下載是否結(jié)束。若是,則進(jìn)入步驟406 ;若否,則返回步驟403。在步驟406中,正常發(fā)送PS,此后結(jié)束本流程。進(jìn)一步的,數(shù)字視頻錄像機(jī)結(jié)束一個(gè)遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),判斷當(dāng)前正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的連接數(shù)量是否小于第二門限,如果是,則結(jié)束對(duì)節(jié)目流中I幀和音頻幀的抽取,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送正常的節(jié)目流。
其中第一門限大于或等于第二門限。如圖6所示,具體步驟如下在步驟501中,收到一個(gè)遠(yuǎn)程回放下載請(qǐng)求。此后進(jìn)入步驟502,假定當(dāng)前遠(yuǎn)程回放下載網(wǎng)絡(luò)連接數(shù)量已達(dá)到第一門限。此后進(jìn)入步驟503,進(jìn)行抽幀操作。此后進(jìn)入步驟504,發(fā)送I幀和音頻幀PS。此后進(jìn)入步驟505,一個(gè)回放下載結(jié)束。此后進(jìn)入步驟506,判斷當(dāng)前遠(yuǎn)程回放下載網(wǎng)絡(luò)連接數(shù)量是否小于第二門限。若是,則進(jìn)入步驟507 ;若否,則返回步驟503。在步驟507中,因?yàn)楫?dāng)前遠(yuǎn)程回放或下載的網(wǎng)絡(luò)連接數(shù)較少,所以恢復(fù)正常發(fā)送 PS,以便當(dāng)前的各遠(yuǎn)程回放或下載都可以得到有更多細(xì)節(jié)的視頻,此后結(jié)束本流程。此外,亦可通過分析PS封裝格式的PS流來抽取I幀和音頻幀。一個(gè)PS流或者文件可以視為多個(gè)PS G0P,每個(gè)GOP是以I幀起始的多幀集合,各GOP之間的信息沒有相互依賴性,可以進(jìn)行剪切拼接。一個(gè)PS GOP由一個(gè)或多個(gè)PS包組成,一個(gè)PS包內(nèi)包含一個(gè)PSH 和若干個(gè)PES,每個(gè)PS GOP的第一個(gè)PS包應(yīng)當(dāng)在包頭PSH后立即跟隨一個(gè)PSM包。PSM包是一種特殊的PES,含有對(duì)其他PES負(fù)載數(shù)據(jù)類型的描述。在遠(yuǎn)程回放、下載時(shí),分析錄像文件碼流,通過PSM來確定當(dāng)前分析的幀為I幀,通過PES類型來區(qū)分是否為視頻幀、音頻幀。 這樣根據(jù)PSH、PSM和PES就能抽取I幀,根據(jù)PSH和PES的類型抽取音頻幀。本發(fā)明的各方法實(shí)施方式均可以以軟件(程序)、硬件、固件等方式實(shí)現(xiàn)。不管本發(fā)明是以軟件、硬件、還是固件方式實(shí)現(xiàn),指令代碼都可以存儲(chǔ)在任何類型的計(jì)算機(jī)可訪問的存儲(chǔ)器中(例如永久的或者可修改的,易失性的或者非易失性的,固態(tài)的或者非固態(tài)的, 固定的或者可更換的介質(zhì)等等)。同樣,存儲(chǔ)器可以例如是可編程陣列邏輯(Programmable Array Logic,簡(jiǎn)稱 “PAL”)、隨機(jī)存取存儲(chǔ)器(Random Access Memory,簡(jiǎn)稱 “RAM”)、可編程只讀存儲(chǔ)器(Programmable Read Only Memory,簡(jiǎn)稱 “PROM”)、只讀存儲(chǔ)器(Read-Only Memory,簡(jiǎn)稱“ROM”)、電可擦除可編程只讀存儲(chǔ)器(Electrically Erasable Programmable ROM,簡(jiǎn)稱 “EEPR0M”)、磁盤、光盤、數(shù)字通用光盤(Digital Versatile Disc,簡(jiǎn)稱 “DVD”)寸寸。第二或第三實(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ù)字視頻錄像機(jī)的實(shí)施方式中提到的各模塊都是邏輯模塊,在物理上,一個(gè)邏輯模塊可以是一個(gè)物理模塊,也可以是一個(gè)物理模塊的一部分,還可以以多個(gè)物理模塊的組合實(shí)現(xiàn),這些邏輯模塊本身的物理實(shí)現(xiàn)方式并不是最重要的,這些邏輯模塊所實(shí)現(xiàn)的功能的組合是才解決本發(fā)明所提出的技術(shù)問題的關(guān)鍵。此外,為了突出本發(fā)明的創(chuàng)新部分,本發(fā)明上述各數(shù)字視頻錄像機(jī)的實(shí)施方式并沒有將與解決本發(fā)明所提出的技術(shù)問題關(guān)系不太密切的模塊引入,這并不表明上述各數(shù)字視頻錄像機(jī)的并不存在其它的模塊。雖然通過參照本發(fā)明的某些優(yōu)選實(shí)施方式,已經(jīng)對(duì)本發(fā)明進(jìn)行了圖示和描述,但本領(lǐng)域的普通技術(shù)人員應(yīng)該明白,可以在形式上和細(xì)節(jié)上對(duì)其作各種改變,而不偏離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種數(shù)字視頻錄像機(jī),其特征在于,包括預(yù)覽模塊,用于提供遠(yuǎn)程預(yù)覽;回放下載控制模塊,用于控制遠(yuǎn)程回放和遠(yuǎn)程下載;帶寬控制模塊,用于在所述回放下載控制模塊收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),判斷所述預(yù)覽模塊當(dāng)前是否存在遠(yuǎn)程預(yù)覽,如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則指示該預(yù)覽模塊中斷所有已存在的遠(yuǎn)程預(yù)覽。
2.根據(jù)權(quán)利要求1所述的數(shù)字視頻錄像機(jī),其特征在于,所述帶寬控制模塊還用于,在所述預(yù)覽模塊收到遠(yuǎn)程預(yù)覽請(qǐng)求時(shí),判斷所述回放下載控制模塊是否處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài),如果是,則指示所述預(yù)覽模塊拒絕該遠(yuǎn)程預(yù)覽請(qǐng)求。
3.根據(jù)權(quán)利要求2所述的數(shù)字視頻錄像機(jī),其特征在于,所述帶寬控制模塊還用于,在所述預(yù)覽模塊收到遠(yuǎn)程預(yù)覽請(qǐng)求、并且所述回放下載控制模塊未處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),判斷當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,是否超過預(yù)先設(shè)置的最大帶寬門限,如果沒有超過預(yù)先設(shè)置的最大帶寬門限則指示所述預(yù)覽模塊新增該預(yù)覽,如果超過預(yù)先設(shè)置的最大帶寬門限,則指示所述預(yù)覽模塊按時(shí)間從先到后的順序,依次剔除已有的遠(yuǎn)程預(yù)覽,直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率, 小于或等于預(yù)先設(shè)置的最大帶寬門限;所述數(shù)字視頻錄像機(jī)中還包括最大帶寬設(shè)置模塊,用于設(shè)置所述最大帶寬門限。
4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的數(shù)字視頻錄像機(jī),其特征在于,還包括抽幀模塊,用于將節(jié)目流中的I幀和音頻幀抽取出來;所述回放下載控制模塊在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于至少一個(gè)節(jié)目流,通過所述抽幀模塊將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含I幀和音頻幀的節(jié)目流。
5.一種數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,包括以下步驟數(shù)字視頻錄像機(jī)收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),判斷當(dāng)前是否存在遠(yuǎn)程預(yù)覽;如果當(dāng)前存在遠(yuǎn)程預(yù)覽,則中斷所有已存在的遠(yuǎn)程預(yù)覽。
6.根據(jù)權(quán)利要求5所述的數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,還包括以下步驟當(dāng)所述數(shù)字視頻錄像機(jī)處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),如果收到遠(yuǎn)程預(yù)覽請(qǐng)求,則拒絕該遠(yuǎn)程預(yù)覽請(qǐng)求。
7.根據(jù)權(quán)利要求6所述的數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,還包括以下步驟當(dāng)所述數(shù)字視頻錄像機(jī)未處于正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的狀態(tài)時(shí),如果收到新的遠(yuǎn)程預(yù)覽請(qǐng)求,則判斷當(dāng)前占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,是否超過預(yù)先設(shè)置的最大帶寬門限;如果沒有超過預(yù)先設(shè)置的最大帶寬門限,則新增該預(yù)覽;如果超過預(yù)先設(shè)置的最大帶寬門限,則按時(shí)間從先到后的順序,依次剔除已有的遠(yuǎn)程預(yù)覽,直到當(dāng)前已占用的網(wǎng)絡(luò)帶寬加上該新遠(yuǎn)程預(yù)覽請(qǐng)求的碼率,小于或等于預(yù)先設(shè)置的最大帶寬門限。
8.根據(jù)權(quán)利要求5至7中任一項(xiàng)所述的數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,還包括以下步驟所述數(shù)字視頻錄像機(jī)進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于至少一個(gè)節(jié)目流,將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含I幀和音頻幀的節(jié)目流。
9.根據(jù)權(quán)利要求8所述的數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,還包括以下步驟所述數(shù)字視頻錄像機(jī)收到遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求時(shí),判斷當(dāng)前正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的連接數(shù)量是否達(dá)到預(yù)定的第一門限,如果是,則在建立新的遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)于需要發(fā)送的全部或部分節(jié)目流,將節(jié)目流中的I幀和音頻幀抽取出來,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送只包含I幀和音頻幀的節(jié)目流。
10.根據(jù)權(quán)利要求9所述的數(shù)字視頻錄像機(jī)的網(wǎng)絡(luò)帶寬控制方法,其特征在于,所述數(shù)字視頻錄像機(jī)結(jié)束一個(gè)遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),判斷當(dāng)前正在進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載的連接數(shù)量是否小于第二門限,如果是,則結(jié)束對(duì)節(jié)目流中I幀和音頻幀的抽取,向遠(yuǎn)程回放或遠(yuǎn)程下載的請(qǐng)求端發(fā)送正常的節(jié)目流;其中第一門限大于或等于第二門限。
全文摘要
本發(fā)明涉及視頻監(jiān)控領(lǐng)域,公開了一種數(shù)字視頻錄像機(jī)及其網(wǎng)絡(luò)帶寬控制方法。本發(fā)明中,DVR在收到遠(yuǎn)程回放或遠(yuǎn)程下載請(qǐng)求時(shí),關(guān)閉現(xiàn)存的所有遠(yuǎn)程預(yù)覽,可以在總帶寬較低的條件下,保證遠(yuǎn)程回放或遠(yuǎn)程下載正常進(jìn)行。在帶寬不夠時(shí),將最早的遠(yuǎn)程預(yù)覽刪除。在DVR進(jìn)行遠(yuǎn)程回放或遠(yuǎn)程下載時(shí),對(duì)全部或部分的節(jié)目流只抽取和發(fā)送I幀和音頻幀,可以進(jìn)一步降低遠(yuǎn)程回放或遠(yuǎn)程下載對(duì)帶寬的需求。
文檔編號(hào)H04L29/06GK102244775SQ20111017281
公開日2011年11月16日 申請(qǐng)日期2011年6月23日 優(yōu)先權(quán)日2011年6月23日
發(fā)明者劉彥, 張海明, 王建煒, 陳結(jié)合 申請(qǐng)人:杭州??低晹?shù)字技術(shù)股份有限公司