基于嵌入式視頻存儲的專用文件系統(tǒng)設計
數(shù)據(jù)存儲的流程如圖3所示??梢钥闯觯灰?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/視頻">視頻數(shù)據(jù)緩存到一個數(shù)據(jù)塊的大小時就可以進行一次存盤。例如,數(shù)據(jù)塊大小為64 KB,對應為512 kbps碼率1 s的視頻數(shù)據(jù),也就是緊急斷電等突發(fā)事故中實際丟失的視頻數(shù)據(jù)最多是一個數(shù)據(jù)塊的錄像長度。由于突然斷電導致文件信息和索引信息沒有及時存儲,可以在啟動的時候通過掃描沒有形成文件的數(shù)據(jù)塊來進行恢復。即使在最壞的情況下,硬盤的磁盤信息、文件信息及索引信息等都丟失了,完全可以通過掃描所有的數(shù)據(jù)塊來重建整個文件系統(tǒng),這樣極大提高了數(shù)據(jù)的安全性。由于數(shù)據(jù)塊是順序排列,每個數(shù)據(jù)塊的讀寫幾率幾乎一致,不會因為頻繁讀寫某一個硬盤扇區(qū)導致壞道或縮短硬盤使用壽命,也提高了系統(tǒng)和數(shù)據(jù)的可靠性。
3.2 數(shù)據(jù)的讀取
數(shù)據(jù)的讀取可以通過兩種模式進行,一種是直接通過文件號來讀取文件,另一種是通過輸入時間檢索定位指定的錄像資料。這兩種方式最終都是定位到指定的數(shù)據(jù)塊實現(xiàn)數(shù)據(jù)的讀取,只要定位了第一個數(shù)據(jù)塊,就可以根據(jù)數(shù)據(jù)塊的DataBlockInfo來實現(xiàn)前/后數(shù)據(jù)塊的讀取,還可以通過數(shù)據(jù)塊的時間戳來實現(xiàn)高效的快進快退等操作。
圖4 數(shù)據(jù)恢復流程
3.3 數(shù)據(jù)的恢復
在實際使用中,不可避免會出現(xiàn)異常關(guān)機、斷電、磁盤壞道等問題,本系統(tǒng)中數(shù)據(jù)恢復的流程如圖4所示。在開機后首先檢查文件是否正常關(guān)閉。若是則不需要恢復,否則進行數(shù)據(jù)恢復。先讀取數(shù)據(jù)塊信息,然后檢驗數(shù)據(jù)塊信息的合法性,合法則更新相應信息。
3.4 錄像資料的檢索和精確定位
在本文件系統(tǒng)中,由于文件信息、索引信息和數(shù)據(jù)塊都是嚴格按照時間進行記錄的,所以可以采用二分法快速查找到指定錄像時間的錄像文件,再根據(jù)錄像文件信息的錄像開始時間及索引信息里包含的時間偏移和地址偏移,就可以快速準確定位指定錄像時間的數(shù)據(jù)塊,根據(jù)數(shù)據(jù)塊的幀信息可以準確定位到某一秒甚至某一幀,這樣就可以實現(xiàn)快速、準確的錄像資料檢索。
結(jié)語
本視頻存儲專用文件系統(tǒng)通過對嵌入式數(shù)字硬盤錄像機媒體數(shù)據(jù)的特點深入研究和分析,分別從存儲機制、檢索機制、讀取機制和數(shù)據(jù)恢復機制等幾個方面詳細闡述設計思想和具體的實現(xiàn)方法。經(jīng)過相關(guān)產(chǎn)品的嚴格測試和大規(guī)模應用,證明此文件系統(tǒng)可以很好地滿足實際應用需求,在數(shù)據(jù)讀寫效率、檢索效率、檢索精確度、數(shù)據(jù)安全性和系統(tǒng)穩(wěn)定性等幾方面都達到了相應指標,實現(xiàn)了對媒體流數(shù)據(jù)高效、安全的存儲。
DIY機械鍵盤相關(guān)社區(qū):機械鍵盤DIY
評論