嵌入式硬盤錄像機的報警錄像預錄方法
【專利摘要】本發(fā)明公開了一種嵌入式硬盤錄像機的報警錄像預錄方法,包括錄像之前,創(chuàng)建一個預錄文件和文件頭以及無效幀;開始錄像時寫入預錄數(shù)據(jù),當寫入的預錄數(shù)據(jù)超過預錄文件容量之后,折返到文件頭和無效幀之后的位置繼續(xù)開始寫入;當預錄文件中收到報警信號時,創(chuàng)建有效預錄文件和有效文件頭,同時將報警錄像數(shù)據(jù)在硬盤內(nèi)該預錄文件之后的文件系統(tǒng)中寫入。本發(fā)明在收到報警信號之后開始錄像,報警之前開啟預錄,預錄數(shù)據(jù)在一段數(shù)據(jù)區(qū)內(nèi)反復寫入,報警開始之后的預錄時間之內(nèi)的有效預錄數(shù)據(jù)保存到有效預錄文件中,更新錄像的有效預錄數(shù)據(jù)開始位置和有效預錄數(shù)據(jù)結束位置。這樣的即不會丟失錄像,并降低I/O接口,避免出現(xiàn)反復拷貝的問題。
【專利說明】嵌入式硬盤錄像機的報警錄像預錄方法
【技術領域】
[0001]本發(fā)明屬于視頻監(jiān)控領域,具體涉及一種嵌入式硬盤錄像機的報警錄像預錄方法。
【背景技術】
[0002]嵌入式設備包括嵌入式DVR (Digital Video Recorder即硬盤錄像機)設備,嵌入式NVR (Network Video Recorder即網(wǎng)絡硬盤錄像機)設備和嵌入式混合型DVR設備。
[0003]嵌入式DVR設備是一種能夠連接模擬攝像機、球機等,并模擬采集其視頻信號,進行本地輸出回顯,以及視頻編碼本地存儲、網(wǎng)絡實時視頻傳播的嵌入式網(wǎng)絡視頻設備。
[0004]嵌入式NVR設備是一種能夠連接和控制網(wǎng)絡IPC (Internet Protocol Camra即網(wǎng)絡攝像機)前端,將IPC傳來的視頻數(shù)據(jù)進行本地存儲以及網(wǎng)絡轉發(fā),并解碼在NVR設備的輸出接口上顯示IPC所采集的實時視頻信號的設備。
[0005]嵌入式混合型DVR設備是嵌入式DVR與NVR功能全體的嵌入式硬盤錄像機設備。
[0006]隨著安全防范、視頻監(jiān)控行業(yè)的不斷發(fā)展,數(shù)字視頻監(jiān)控的發(fā)展速度越來越快,近幾年不僅傳統(tǒng)的嵌入式DVR設備取得了長足發(fā)展,而且嵌入式NVR、混合型DVR等新設備也應運而生。隨之而來的,由于用戶對視頻監(jiān)控的安全性要求越來越高。
[0007]嵌入式DVR、NVR、混合型DVR最重要的是錄像功能。嵌入式DVR、NVR、混合型DVR的錄像分為定時錄像和報警錄像,報警錄像一般用于包括端口報警、移動偵測報警、視頻丟失報警、音頻丟失報警、智能分析報警等。報警錄像一般需要預錄和延錄,預錄是發(fā)現(xiàn)報警之前一段時間的事情,通常預錄時間不超過一分鐘,有助于發(fā)現(xiàn)報警的原因和險情。現(xiàn)有的預錄是創(chuàng)建一個預錄文件,在報警的時候將預錄數(shù)據(jù)拷貝到錄像文件中,但是在有比較高的1/0 (input/output,輸入輸出)接口時,會造成硬盤寫入失敗,丟失錄像。
【發(fā)明內(nèi)容】
[0008]本發(fā)明是為了上述的技術問題,而提出的一種嵌入式硬盤錄像機的報警錄像預錄方法。
[0009]本發(fā)明的技術方案是:
本發(fā)明嵌入式硬盤錄像機的報警錄像預錄方法,具體為:
I錄像之前,在硬盤內(nèi)創(chuàng)建一個固定容量的預錄文件,并記錄該預錄文件開始預錄數(shù)據(jù)的位置和結束預錄數(shù)據(jù)的位置,同時在預錄文件開始位置寫入一個固定容量的文件頭和無效巾貞;
II創(chuàng)建預錄文件之后,當設備滿足錄像條件并開始錄像時,在預錄文件中文件頭和無效幀之后的位置寫入預錄數(shù)據(jù),并為預錄數(shù)據(jù)的每一個I幀寫一個I幀索引,當寫入的預錄數(shù)據(jù)超過預錄文件容量之后,折返到文件頭和無效幀之后的位置繼續(xù)開始寫入;
III當預錄文件中收到報警信號時,根據(jù)當前系統(tǒng)時間和預錄時間,通過I幀索引尋找報警錄像前最近的一個I幀并將其創(chuàng)建為有效預錄文件,在該有效預錄文件前創(chuàng)建一個固定容量的有效文件頭,并記錄該有效預錄文件開始有效預錄數(shù)據(jù)的地址和結束有效預錄數(shù)據(jù)的地址,同時將報警錄像數(shù)據(jù)在硬盤內(nèi)該預錄文件之后的文件系統(tǒng)中寫入;
IV當該有效預錄文件和報警錄像數(shù)據(jù)記錄后,在該預錄文件和報警錄像數(shù)據(jù)之后的硬盤內(nèi)再創(chuàng)建一個新的預錄文件;
V當預錄文件中未收到報警信號時,則刪除該預錄文件,重新創(chuàng)建一個新的預錄文件。
[0010]本發(fā)明的有益效果是:
本發(fā)明在收到報警信號之前不進行錄像的,在收到報警信號之后開始錄像。報警之前開啟預錄,預錄數(shù)據(jù)無條件在一段數(shù)據(jù)區(qū)內(nèi)反復寫入,并記錄I幀索引,報警開始之后的預錄時間之內(nèi)的有效預錄數(shù)據(jù)保存到有效預錄文件中,并刷新I幀索引數(shù)據(jù),更新錄像的有效預錄數(shù)據(jù)開始位置和有效預錄數(shù)據(jù)結束位置。這樣的即不會丟失錄像,并降低I/o接口,避免出現(xiàn)反復拷貝的問題。
【專利附圖】
【附圖說明】
[0011]圖1是本發(fā)明硬盤內(nèi)預錄文件的結構示意圖;
圖2是本發(fā)明的流程框圖。
【具體實施方式】
[0012]以下,參照附圖及實施例對本發(fā)明進行詳細說明:
如圖1-2所示,本發(fā)明嵌入式硬盤錄像機的報警錄像預錄方法,具體為:
I錄像之前,在硬盤內(nèi)創(chuàng)建一個固定容量的預錄文件,并記錄該預錄文件開始預錄數(shù)據(jù)的位置和結束預錄數(shù)據(jù)的位置,同時在預錄文件開始位置寫入一個固定容量的文件頭和無效巾貞;
II創(chuàng)建預錄文件之后,當設備滿足錄像條件并開始錄像時,在預錄文件中文件頭和無效幀之后的位置寫入預錄數(shù)據(jù),并為預錄數(shù)據(jù)的每一個I幀寫一個I幀索引,當寫入的預錄數(shù)據(jù)超過預錄文件容量之后,折返到文件頭和無效幀之后的位置繼續(xù)開始寫入;
III當預錄文件中收到報警信號時,根據(jù)當前系統(tǒng)時間和預錄時間,通過I幀索引尋找報警錄像前最近的一個I幀并將其創(chuàng)建為有效預錄文件,在該有效預錄文件前創(chuàng)建一個固定容量的有效文件頭,并記錄該有效預錄文件開始有效預錄數(shù)據(jù)的地址和結束有效預錄數(shù)據(jù)的地址,同時將報警錄像數(shù)據(jù)在硬盤內(nèi)該預錄文件之后的文件系統(tǒng)中寫入;
IV當該有效預錄文件和報警錄像數(shù)據(jù)記錄后,在該預錄文件和報警錄像數(shù)據(jù)之后的硬盤內(nèi)再創(chuàng)建一個新的預錄文件;
V當預錄文件中未收到報警信號時,則刪除該預錄文件,重新創(chuàng)建一個新的預錄文件。
[0013]所述的嵌入式硬盤錄像機的報警錄像預錄方法,當備份報警錄像數(shù)據(jù)時,先根據(jù)預錄文件中有效預錄文件的開始地址和結束地址讀取有效預錄數(shù)據(jù),有效預錄數(shù)據(jù)讀取之后,再讀取報警錄像數(shù)據(jù),并將有效預錄數(shù)據(jù)和報警錄像數(shù)據(jù)備份到硬盤內(nèi)的文件系統(tǒng)中。
[0014]所述的嵌入式硬盤錄像機的報警錄像預錄方法,當查詢回放報警錄像數(shù)據(jù)時,先根據(jù)預錄文件中有效預錄文件的開始地址和結束地址讀取有效預錄數(shù)據(jù),有效預錄數(shù)據(jù)讀取之后,再讀取正常報警錄像數(shù)據(jù)。
[0015]在DVR/NVR/混合DVR錄像模塊中錄像文件打包和開啟的定時任務中,檢測若沒有某通道開始錄像和預錄,而且硬盤有足夠的存儲空間,那么為該通道在它的硬盤存儲區(qū)創(chuàng)建一個預錄文件。寫空文件頭和一個無效幀,為了訪問數(shù)據(jù)對齊而補齊512K,為預錄文件記錄預錄數(shù)據(jù)寫入開始位置和結束位置。
[0016]在DVR/NVR/混合DVR錄像模塊中數(shù)據(jù)處理線程檢測如果有預錄文件滿足寫預錄數(shù)據(jù)的條件時,將數(shù)據(jù)送到預錄文件中保存。
[0017]寫預錄文件時,為每一個I幀寫一個I幀索引。如果預錄文件的64M已經(jīng)寫滿,則從頭開始重寫,并刷掉被覆蓋的I幀索引。
[0018]如果滿足打包條件,如修改音頻編碼方式、數(shù)字通道斷開等,則刪除預錄文件,清掉預錄數(shù)據(jù),重新開始預錄。
[0019]在報警信號發(fā)生之后,數(shù)據(jù)處理線程停止送預錄數(shù)據(jù)。同時按照當前系統(tǒng)時間和要求的預錄時間,往前計算距離報警錄像數(shù)據(jù)開始最近的一個I幀為有效預錄文件,根據(jù)這個I幀數(shù)據(jù)的位置往前計算512K有效文件頭的位置,更新有效文件頭,并更新該有效預錄文件的有效預錄數(shù)據(jù)開始位置和結束位置。同時在該預錄文件之后的位置寫入報警錄像數(shù)據(jù),數(shù)據(jù)處理線程送報警錄像數(shù)據(jù)。
[0020]讀取報警錄像數(shù)據(jù)時,從預錄文件的有效預錄文件開始位置開始讀,讀到有效預錄文件結束位置,然后跳轉到預錄文件的結束位置開始讀報警錄像數(shù)據(jù)。
【權利要求】
1.一種嵌入式硬盤錄像機的報警錄像預錄方法,其特征在于: I錄像之前,在硬盤內(nèi)創(chuàng)建一個固定容量的預錄文件,并記錄該預錄文件開始預錄數(shù)據(jù)的位置和結束預錄數(shù)據(jù)的位置,同時在預錄文件開始位置寫入一個固定容量的文件頭和無效巾貞; II創(chuàng)建預錄文件之后,當設備滿足錄像條件并開始錄像時,在預錄文件中文件頭和無效幀之后的位置寫入預錄數(shù)據(jù),并為預錄數(shù)據(jù)的每一個I幀寫一個I幀索引,當寫入的預錄數(shù)據(jù)超過預錄文件容量之后,折返到文件頭和無效幀之后的位置繼續(xù)開始寫入; III當預錄文件中收到報警信號時,根據(jù)當前系統(tǒng)時間和預錄時間,通過I幀索引尋找報警錄像前最近的一個I幀并將其創(chuàng)建為有效預錄文件,在該有效預錄文件前創(chuàng)建一個固定容量的有效文件頭,并記錄該有效預錄文件開始有效預錄數(shù)據(jù)的地址和結束有效預錄數(shù)據(jù)的地址,同時將報警錄像數(shù)據(jù)在硬盤內(nèi)該預錄文件之后的文件系統(tǒng)中寫入; IV當該有效預錄文件和報警錄像數(shù)據(jù)記錄后,在該預錄文件和報警錄像數(shù)據(jù)之后的硬盤內(nèi)再創(chuàng)建一個新的預錄文件; V當預錄文件中未收到報警信號時,則刪除該預錄文件,重新創(chuàng)建一個新的預錄文件。
2.根據(jù)權利要求1所述的嵌入式硬盤錄像機的報警錄像預錄方法,其特征在于:當備份報警錄像數(shù)據(jù)時,先根據(jù)預錄文件中有效預錄文件的開始地址和結束地址讀取有效預錄數(shù)據(jù),有效預錄數(shù)據(jù)讀取之后,再讀取報警錄像數(shù)據(jù),并將有效預錄數(shù)據(jù)和報警錄像數(shù)據(jù)備份到硬盤內(nèi)的文件系統(tǒng)中。
3.根據(jù)權利要求1所述的嵌入式硬盤錄像機的報警錄像預錄方法,其特征在于:當查詢回放報警錄像數(shù)據(jù)時,先根據(jù)預錄文件中有效預錄文件的開始地址和結束地址讀取有效預錄數(shù)據(jù),有效預錄數(shù)據(jù)讀取之后,再讀取正常報警錄像數(shù)據(jù)。
【文檔編號】H04N7/18GK104333724SQ201410694422
【公開日】2015年2月4日 申請日期:2014年11月27日 優(yōu)先權日:2014年11月27日
【發(fā)明者】戴林, 邊偉, 屈新鋒 申請人:天津天地偉業(yè)數(shù)碼科技有限公司