一种防止磁盘碎片产生的多路音视频流存储方法_2

文档序号:9249925阅读:来源:国知局
间"、"已记 录大小"、"文件使用标识"(0表示未使用、1表示已使用)、"文件状态标识"(0表示文件处 于打开状态、1表示处于文件关闭状态)等至少6项属性。
[0068] 结合图2,假设有Ii、12共2路音视频流,I1设置的所需存储空间为250M,I2设置 的所需存储空间为150M。
[0069] 由公式(1)得,Ii的文件数据文件个数& =L25〇 /191)」+ 1 =3、12的文件数据文件 个数=L159 /190」+ 1 = 2。
[0070] 连接数据库的"总文件表",返回未分配的数据文件的个数N=6,未分配的数据文 件kl、k2、k3、k4、k5、k6。
[0071] 因为Ki+K2=3+2 = 5<N=6满足公式(2),所W可W根据公式(3)分配数据文件。 则Ii所需的数据文件个数为3,分配的数据文件为kl、k2、k3,更新kl、k2、k3在"总文件表" 的信息,为Ii创建"I1数据文件信息表"并插入kl、k2、k3的数据库记录;12所需的数据文 件个数为2,分配的数据文件k4、k5,更新k4、k5在"总文件表"的信息,为12创建"12数据 文件信息表"并插入k4、k5的数据库记录。
[007引 WIi的数据文件kl为例,更新kl在"总文件表"的信息谨新"所属音视频流" 为"I/V'分配标识"为"1";为Ii创建"I1数据文件信息表"后插入kl的信息;"数据文 件"为"D: \\kl.data","记录开始时间"为"0000-00-0000:00:00","记录结束时间"为 "0000-00-0000:00:00","已记录大小"为文件使用标识"为文件状态标识"为 "0"。
[0073] 第3步、启动音视频存储。
[0074] 第4步、存储多路音视频流。
[0075] 所述的步骤S4,进一步包括;对于任意一路音视频流li(i= 1, 2,…,P)。
[0076]S4-1、连接数据库的"li数据文件信息表",返回未使用的记录开始时间最早的数 据文件,设为当前数据文件,更新其数据库信息(包括记录开始时间、文件状态标识等数据 库信息),其中(i=1,2,…,P)。
[0077]S4-2、往当前数据文件填充(或覆盖音视频数据)。
[007引 S4-3、判断当前数据文件是否写满,若是,执行步骤S4-4,若否,执行步骤S4-8。
[0079]S4-4、更新当前数据文件的数据库信息(包括记录结束时间、已记录大小、文件使 用标识、文件状态标识等信息)。
[0080] S4-5、判断是否Ki个数据文件都已使用,若否,执行步骤S4-6,若是,执行步骤 S4-7。
[0081]S4-6、连接数据库的"li数据文件信息表",返回未使用的记录开始时间最早的数 据文件,设为当前数据文件,更新其数据库记录(包括记录开始时间、文件状态标识等数据 库信息),执行步骤S4-8。
[0082]S4-7、连接数据库的"li数据文件信息表",返回已使用的记录开始时间最早的数 据文件,设为当前数据文件,更新其数据库信息(包括记录开始时间、记录结束时间、已记 录大小、文件使用标识、文件状态标识),执行步骤S4-8。
[0083]S4-8、判断是否停止li的音视频存储,若是,执行步骤S-9,若否,执行步骤S4-2。
[0084]S4-9、更新当前数据文件的数据库信息(包括记录结束时间、已记录大小、文件使 用标识、文件状态标识等信息),结束。
[0085] 因为在本方法中各路音视频流相互独立的,因此为了更好的阐述如何存储多路音 视频流,结合图3,W第1路音视频流Ii为例来说明。
[0086] 连接数据库的数据文件信息表",返回未使用的记录开始时间最早的数据文 件,假设返回为数据文件kl,设为kl为当前数据文件,更新kl在数据文件信息表"的信 息;"记录开始时间"为"2015-06-02 15:39:12","文件状态标识"为"1"。
[0087] 往kl数据文件填充(或覆盖)音视频数据,并判断是否kl数据文件写满。
[00蝴如果kl写满了,更新kl在"Ii数据文件信息表"的信息:记录结束时间为 "2015-06-02 15:49:05"、已记录大小为"102320"、"文件使用标识"为"rV文件状态标识" 为"0"。
[0089] 通过"Ii数据文件信息表"判断是否kl、k2、k3数据文件都已使用,若否,连接数 据库的"Ii数据文件信息表",返回未使用的记录开始时间最早的数据文件,设其为当前数 据文件,同时更新其在"Ii数据文件信息表"的信息;若是,证明kl、k2、k3数据文件均已 使用,从kl、k2、k3数据文件中选择一个已使用的记录开始时间最早的数据文件,假设返回kl,设kl为当前数据文件,更新其在数据文件信息表"中的信息;"记录开始时间"为 "2015-06-02 15:59:03 ","记录结束时间"为"0000-00-00 00:00:00 ","已记录大小"为 "0","文件使用标识"为"0","文件状态标识"为"1"。
[0090] 判断是否停止Ii的音视频存储,若否,循环第4步,若是,则更新当前数据文件的 数据库记录,包括记录结束时间、已记录大小、文件使用标识、文件状态标识等信息。
[0091] 第5步、判断是否停止,若否,执行第4步,若是,结束。
[0092] 实施本发明的防止磁盘碎片产生的多路音视频流存储方法的技术方案具有如下 优点:
[0093] (1)不产生磁盘碎片,音视频流存储效率不会随着时间增加而降低;
[0094] (2)准确控制每一路音视频数据流的总录像时间;
[0095] (3)每路音视频流数据文件占用的磁盘空间是连续的,提高音视频流文件的访问 效率。
[0096] 最后所应当说明的是,W上实施例仅用W说明本发明的技术方案而非对本发明保 护范围的限制,尽管参照较佳实施例对本发明作了详细说明,本领域的普通技术人员应当 理解,可W对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质 和范围。
【主权项】
1. 一种防止磁盘碎片产生的多路音视频流存储方法,其特征在于,包括以下步骤: 51、 创建用于存储音视频流的数据文件,进一步包括: Sl-I、格式化硬盘并创建S个存储分区; 51- 2、设数据文件的固定大小为m,第i个存储分区存储文件个数为Iii,依次Iii个创建 数据文件并在"总文件表"中插入其数据库记录,其中IiiXm不得大于该分区的剩余空间,i =1,2,…,s; "总文件表"包括:"数据文件"、"所属音视频流"、"分配标识"等至少3项属性,其中"分 配标识"中的〇表示未分配,1表示已分配; 52、 分配多路音视频流存储的数据文件; 53、 启动音视频存储; 54、 存储多路音视频流; 55、 判断是否停止,若否,执行步骤S4,若是,执行步骤S6 ; 56、 停止,结束。2. 根据权利要求1所述的防止磁盘碎片产生的多路音视频流存储方法,其特征在于, 所述的步骤S2,进一步包括: 52- 1、设有I1,I2,…,15共p路音视频流,分别设置其所需存储空间为Ri,R2,…,Rp; S2-2、按公式(1)计算Ii所需数据文件个数Ki; Ki=IRi /hJ+1 (1) 其中i= 1,2,…,p; S2-3、连接数据库的"总文件表",返回未分配的数据文件相关信息,包括未分配的数据 文件的个数N,未分配的数据文件Ic1,k2,…,kN; S2-4、如果公式(2)成立,执行步骤S2-5,否则,执行步骤S2-1 ;S2-5、在未分配数据文件Ic1,k2,…,1%中,分配&+1文件为Ii的数据文件, 更新&+1 在"总文件表"的信息,同时为Ii创建"Ii数据文件信息表"并插入 \+A',的数据库记录,其中Ktl= 0,Ti由公式(3)计算可得,i= 1,2,…,P;"^数据文件信息表"包括:"数据文件"、"记录开始时间"、"记录结束时间"、"已记录大 小"、"文件使用标识"、"文件状态标识"等至少6项属性,其中"文件使用标识"中的0表示 未使用、1表示已使用,"文件状态标识"中的〇表示文件处于打开状态、1表示处于文件关闭 状态。3. 根据权利要求1所述的防止磁盘碎片产生的多路音视频流存储方法,其特征在于, 所述的步骤S4,进一步包括:对于任意一路音视频流Ii(i= 1,2,…,p), S4-1、连接数据库的数据文件信息表",返回未使用的记录开始时间最早的数据文 件,设为当前数据文件,更新其数据库信息,其中(i= 1,2,…,p); S4-2、往当前数据文件填充或覆盖音视频数据; S4-3、判断当前数据文件是否写满,若是,执行步骤S4-4,若否,执行步骤S4-8 ; S4-4、更新当前数据文件的数据库信息; S4-5、判断是否Ki个数据文件都已使用,若否,执行步骤S4-6,若是,执行步骤S4-7 ;S4-6、连接数据库的数据文件信息表",返回未使用的记录开始时间最早的数据文 件,设为当前数据文件,更新其数据库记录,执行步骤S4-8 ; S4-7、连接数据库的数据文件信息表",返回已使用的记录开始时间最早的数据文 件,设为当前数据文件,更新其数据库信息,执行步骤S4-8 ; S4-8、判断是否停止Ii的音视频存储,若是,执行步骤S-9,若否,执行步骤S4-2 ; S4-9、更新当前数据文件的数据库信息,结束。
【专利摘要】本发明公开一种防止磁盘碎片产生的多路音视频流存储方法,主要步骤:(1)创建用于存储音视频流的数据文件;(2)分配多路音视频流存储的数据文件,包括分别设置各路音视频流所需存储空间、根据各路音视频流的所需存储空间自动分配相应数量的数据文件、分别建立各路音视频流对应的数据文件索引数据库表并插入其分配的数据文件的记录;(3)存储多路音视频流,包括结合数据库对各路音视频流进行独立的存储并按需更新其对应的数据库记录。本发明具有的优点:不产生磁盘碎片;音视频流存储效率不会随着时间增加而降低,准确控制每一路音视频数据流的总录像时间;每路音视频流数据文件占用的磁盘空间是连续的,提高音视频流文件的访问效率。
【IPC分类】G11B27/10, G11B20/10
【公开号】CN104966528
【申请号】CN201510364157
【发明人】蔡延光, 戚远航, 蔡颢
【申请人】广东工业大学
【公开日】2015年10月7日
【申请日】2015年6月25日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1