CN104980786A - 一种防意外中止的多路音视频流存储方法 - Google Patents

一种防意外中止的多路音视频流存储方法 Download PDF

Info

Publication number
CN104980786A
CN104980786A CN201510383209.5A CN201510383209A CN104980786A CN 104980786 A CN104980786 A CN 104980786A CN 201510383209 A CN201510383209 A CN 201510383209A CN 104980786 A CN104980786 A CN 104980786A
Authority
CN
China
Prior art keywords
video
file
video file
data
audio
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510383209.5A
Other languages
English (en)
Other versions
CN104980786B (zh
Inventor
蔡延光
戚远航
蔡颢
黄斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201510383209.5A priority Critical patent/CN104980786B/zh
Publication of CN104980786A publication Critical patent/CN104980786A/zh
Application granted granted Critical
Publication of CN104980786B publication Critical patent/CN104980786B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

本发明公开了一种防意外中止的多路音视频流存储方法,本发明的防意外中止的多路音视频流存储方法判断是否初次启动,若是,设置缓冲区和录像区并在缓冲区中创建缓冲文件;判断是否需要录像文件恢复,如是,进行录像文件恢复;在录像区中进行多路音视频流存储。本发明的防意外中止的多路音视频流存储方法能实现设备在意外中止后录像文件的恢复;缓冲区和录像区使用不同硬盘进行读写,大大减少在存储过程中磁头的寻道次数,提高系统的性能。

Description

一种防意外中止的多路音视频流存储方法
技术领域
本发明属于存储技术领域,具体涉及一种防意外中止的多路音视频流存储方法。
背景技术
随着现代网络的逐渐普及,视频监控已经应用于我们的工作和生活中。很多生活的场所都需要视频监控来保障单位及个人的财产和人身安全。人们可以通过实时监控了解现场的情况。但在实际的应用中,单纯进行视频监控,难以提供全面高效的服务。很多时候需要实时对现场的情况进行音视频存储,供后期回放和分析。
发明内容
针对现有技术的不足之处,本发明的所要解决的技术问题在于提供一种防意外中止的多路音视频流存储方法,实现设备在意外中止后录像文件的恢复,缓冲区和录像区使用不同硬盘进行读写,大大减少在存储过程中磁头的寻道次数,提高系统的性能。
为了解决上述技术问题,本发明可以通过以下技术措施实现:一种防意外中止的多路音视频流存储方法,包括以下步骤:
S1、判断是否初次启动,若是,执行步骤S2,若否,执行步骤S3;
S2、设置缓冲区和录像区,并在缓冲区中创建缓冲文件,执行步骤S4;
S3、判断是否需要录像文件恢复,若是,进行录像文件恢复;
S4、多路音视频流存储;
S5、结束。
本发明的防意外中止的多路音视频流存储方法判断是否初次启动,若是,设置缓冲区和录像区并在缓冲区中创建缓冲文件;判断是否需要录像文件恢复,如是,进行录像文件恢复;在录像区中进行多路音视频流存储。本发明能实现设备在意外中止后录像文件的恢复;缓冲区和录像区使用不同硬盘进行读写,大大减少在存储过程中磁头的寻道次数,提高系统的性能。
作为本发明的防意外中止的多路音视频流存储方法的优选实施方式,所述的步骤S2进一步包括:
S2-1、设有D1,D2,…,Dn共n个硬盘,硬盘大小分别为R1,R2,…,Rn,设置硬盘D1,D2,…,Dn为缓冲区,硬盘Dk+1,Dk+2,…,Dn为录像区,其中0<k<n;
S2-2、设有I1,I2,…,Ip共p路音视频流,fi表示音视频流Ii的帧率,si表示音视频流Ii的最大帧长度,录像时间长度为l,单位:秒,创建“录像文件表”,其中i=1,2,…,p;
S2-3、根据公式(1)计算Ii的数据文件大小Datai,根据公式(2)计算Ii的索引文件大小Indexi,设“索引文件”的帧信息的固定长度为K;
Datai=fi×si×l×5   (1)
Indexi=fi×l×K×5   (2)
S2-4、判断公式(3)是否成立,若是,执行步骤S2-1;若否,执行步骤2-5;
&Sigma; i = 1 p ( Data i + Index i ) &le; &Sigma; i = 1 n R i - - - ( 3 )
S2-5、在缓冲区创建缓冲文件,包括数据文件、索引文件,在“缓冲区表”插入其数据库记录;其中,数据文件用于按时间顺序以帧为单位依次存储音视频数据,索引文件用于按数据文件从头到尾顺序依次记录帧信息;
“录像文件表”、“缓冲区表”和“索引文件”的帧信息进一步包括:
“录像文件表”包括:“录像设备名称”、“录像文件路径”、“录像启动时间”、“录像时间”、“录像完成标识”,其中0表示已完成,1表示未完成、“录像文件的重要程度”,其中0-99表示录像文件的重要程度,数字越大表示录像文件越重要;
“缓冲区表”包括:“所属音视频流”、“帧率”、“最大帧长度”、“数据文件路径”、“索引文件路径”、“数据区大小”、“索引区大小”、“录像状态标识”,其中0表示“处于非录像状态”,1表示“处于录像状态”;
“索引文件”的帧信息以固定长度的格式存储,其包括:“帧类型”、“时间戳”、“数据文件内偏移”、“帧长度”4个字段,其中,帧类型为1个字节,0表示音频帧、1表示I帧、2表示其他类型的帧;时间戳为10个字节;数据文件内偏移为10个字节;帧长度为9个字节。
作为本发明的防意外中止的多路音视频流存储方法的优选实施方式,所述的步骤S3进一步包括:
S3-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数p,设i=1;
S3-2、判断音视频流Ii的“录像状态标识”是否为“1”,若是,执行步骤S3-3,若否,执行步骤S-5;
S3-3、连接“录像文件表”,返回音视频流Ii的“录像完成标识”为“1”的记录,根据返回记录的“录像文件路径”删除该录像文件;
S3-4、根据缓冲区的数据,在“录像文件路径”生成同名录像文件,更新“录像文件表”的信息,更新Ii在“缓冲区表”的信息;
S3-5、i=i+1,判断i≤p是否成立,若是,执行步骤S3-2,若否,结束;
所述的步骤S3-4进一步包括:
S3-4-1、在“录像文件路径”下创建并打开同名的录像文件,设W=0;
S3-4-2、读取音视频流Ii的“索引文件”W到W+K字节的数据,W=W+K;
S3-4-3、判断数据是否为空,若是,执行步骤S3-4-5;
S3-4-4、解析数据中的帧信息,根据“数据文件内偏移”Ps和“帧长度”lz,读取“数据文件”中Ps到Ps+lz字节的帧数据,把帧数据填充进录像文件中,执行步骤S3-4-2;
S3-4-5、关闭录像文件,计算出录像文件的时间长度Lt,更新该录像文件在“录像文件表”的信息,其中“录像时间”为Lt、“录像完成标识”为“0”,更新Ii在“缓冲区表”的信息,其中“录像状态标识”为“0”,结束。
作为本发明的防意外中止的多路音视频流存储方法的优选实施方式,所述的步骤S4进一步包括:
S4-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数p,根据公式(4)计算总预留空间Ls:
L s = &Sigma; i = 1 p Data i &times; 2 - - - ( 4 )
S4-2、更新“缓冲区表”的信息,计时参数设置为0,生成“录像文件路径”,在“录像文件表”插入其记录;
S4-3、判断计时参数是否大于Lt,若是,执行步骤S4-4,否则,往缓冲区填充音视频数据及其信息,执行步骤S4-7;
S4-4、判断剩余存储空间是否大于Ls,若是,执行步骤S4-5,否则删除录像文件,重新执行步骤S4-4;
S4-5、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息;
S4-6、设置计时参数为0,生成“录像文件路径”,在“录像文件表”插入其记录;
S4-7、判断是否停止,若是,执行步骤S4-9,若否,执行步骤S4-8;
S4-8、计时1秒后,计时参数加1,执行步骤S4-3;
S4-9、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息,更新“缓冲区表”的信息,结束;
所述的步骤S4-2中,生成“录像文件路径”进一步包括:
S4-2-1、根据录像设备的特征生成一个唯一的文件夹路径,如该文件夹存在,则执行步骤S4-2-2,否则,新建该文件夹,然后执行步骤S4-2-2;
S4-2-2、在该文件夹路径下,根据录像设备的特征生成唯一的“录像文件路径”;
所述的步骤S4-4进一步包括:
S4-4-1、判断剩余预设存储空间是否大于Ls,若是,则立刻执行步骤S4-5,若否,执行步骤S4-4-2;
S4-4-2、连接“录像文件表”并返回预设个数的可删除的录像文件在“录像文件表”的记录;
S4-4-3、根据“录像文件路径”,删除录像文件并删除该录像文件在“录像文件表”的记录,执行步骤S4-4-1;
所述的步骤S4-5和步骤S3-4相似,区别在于步骤S4-5不用更新“缓冲区表”的信息;步骤S4-9和步骤S3-4相同。
实施本发明的防意外中止的多路音视频流存储方法的技术方案具有如下有益效果:本发明的防意外中止的多路音视频流存储方法判断是否初次启动,若是,设置缓冲区和录像区并在缓冲区中创建缓冲文件;判断是否需要录像文件恢复,如是,进行录像文件恢复;在录像区中进行多路音视频流存储。本发明能实现设备在意外中止后录像文件的恢复;缓冲区和录像区使用不同硬盘进行读写,大大减少在存储过程中磁头的寻道次数,提高系统的性能。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下结合优选实施例,并配合附图,详细说明如下。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制。
图1是本发明的防意外中止的多路音视频流存储方法的架构示意图。
图2是本发明的防意外中止的多路音视频流存储方法的工作流程图。
图3是本发明的防意外中止的多路音视频流存储方法的文件恢复的流程图。
图4是本发明的防意外中止的多路音视频流存储方法的录像时间长度固定的多路音视频流存储的流程图。
图5是本发明的防意外中止的多路音视频流存储方法的生成录像文件的流程图。
图6是本发明的防意外中止的多路音视频流存储方法的生成“录像文件路径”的流程图。
图7是本发明的防意外中止的多路音视频流存储方法的删除录像文件的流程图。
具体实施方式
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来说明本发明的原理,本发明的其他方面、特征及其优点通过该详细说明将会变得一目了然。在所参照的附图中,不同的图中相同或相似的部件使用相同的附图标号来表示。为使本发明更加容易理解,下面将进一步阐述本发明的具体实施例。
如图1-7所示,本发明的一种防意外中止的多路音视频流存储方法包括以下步骤:
第一步:判断是否初次启动,若是,执行第二步,若否,执行第三步。
第二步:设置缓冲区和录像区,并在缓冲区中创建缓冲文件,执行第四步。
进一步的,第二步包括:
S2-1、设有D1,D2,…,Dn共n个硬盘,硬盘大小分别为R1,R2,…,Rn,设置硬盘D1,D2,…,Dn为缓冲区,硬盘Dk+1,Dk+2,…,Dn为录像区,其中0<k<n。
S2-2、设有I1,I2,…,Ip共p路音视频流,fi表示音视频流Ii的帧率,si表示音视频流Ii的最大帧长度,录像时间长度为l(单位:秒),创建“录像文件表”,其中i=1,2,…,p。
S2-3、根据公式(1)计算Ii的数据文件大小Datai,根据公式(2)计算Ii的索引文件大小Indexi(设“索引文件”的帧信息的固定长度为K)。
Datai=fi×si×l×5   (1)
Indexi=fi×l×K×5   (2)
S2-4、判断公式(3)是否成立,若是,执行步骤S2-1;若否,执行步骤2-5。
&Sigma; i = 1 p ( Data i + Index i ) &le; &Sigma; i = 1 n R i - - - ( 3 )
S2-5、在缓冲区创建缓冲文件(包括数据文件、索引文件),在“缓冲区表”插入其数据库记录。其中,数据文件用于按时间顺序以帧为单位依次存储音视频数据,索引文件用于按数据文件从头到尾顺序依次记录帧信息。
“录像文件表”、“缓冲区表”和“索引文件”的帧信息进一步包括:
“录像文件表”包括:“录像设备名称”、“录像文件路径”、“录像启动时间”、“录像时间”、“录像完成标识”(0表示已完成,1表示未完成)、“录像文件的重要程度”(0-99表示录像文件的重要程度,数字越大表示录像文件越重要)6个属性。
“缓冲区表”包括:“所属音视频流”、“帧率”、“最大帧长度”、“数据文件路径”、“索引文件路径”、“数据区大小”、“索引区大小”、“录像状态标识”(0表示“处于非录像状态”,1表示“处于录像状态”)8项属性。
“索引文件”的帧信息以固定长度的格式存储,其包括:“帧类型”(1个字节,0表示音频帧、1表示I帧、2表示其他类型的帧)、“时间戳”(10个字节)、“数据文件内偏移”(10个字节)、“帧长度”(9个字节)4个字段。
在一个具体的实施例中,假设有D1、D2共2个硬盘,R1=500G,R2=500G,设置D1为缓冲区,D2为录像区;又设有I1,I2共2路音视频流,其参数如表1所示;录像时间长度为60秒;“索引文件”的帧信息的固定程度为K=30。
表1音视频流参数
根据公式(1),音视频流I1的数据文件大小为Data1=25×80000×60×5=600000000(字节),其索引文件大小为Index1=25×60×30×5=225000(字节);音视频流I2的数据文件大小为Data2=30×100000×60×5=900000000(字节),其索引文件大小为Index2=30×60×30×5=270000(字节)。
根据公式(3),Data1+Index1+Data2+Index2<R1成立,在缓冲区创建缓冲文件(包括数据文件、索引文件),在“缓冲区表”插入其数据库记录。
第三步:判断是否需要录像文件恢复,若是,进行录像文件恢复。
进一步的,步骤S3包括:
S3-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数(即接入音视频流的路数)p,设i=1。
S3-2、判断音视频流Ii的“录像状态标识”是否为“1”,若是,执行步骤S3-3,若否,执行步骤S-5。
S3-3、连接“录像文件表”,返回音视频流Ii的“录像完成标识”为“1”的记录,根据返回记录的“录像文件路径”删除该录像文件。
S3-4、根据缓冲区的数据,在“录像文件路径”生成同名录像文件,更新“录像文件表”的信息,更新Ii在“缓冲区表”的信息。
S3-5、i=i+1,判断i≤p是否成立,若是,执行步骤S3-2,若否,结束。
所述的步骤S3-4进一步包括:
S3-4-1、在“录像文件路径”下创建并打开同名的录像文件,设W=0。
S3-4-2、读取音视频流Ii的“索引文件”W到W+K字节的数据,W=W+K。
S3-4-3、判断数据是否为空,若是,执行步骤S3-4-5。
S3-4-4、解析数据中的帧信息,根据“数据文件内偏移”Ps和“帧长度”lz,读取“数据文件”中Ps到Ps+lz字节的帧数据,把帧数据填充进录像文件中,执行步骤S3-4-2。
S3-4-5、关闭录像文件,计算出录像文件的时间长度Lt(单位:秒),更新该录像文件在“录像文件表”的信息(“录像时间”为Lt、“录像完成标识”为“0”),更新Ii在“缓冲区表”的信息(“录像状态标识”为“0”),结束。
假设,连接“缓冲区表”,返回各路音视频流的缓冲区信息如表2所示,缓冲区的个数(即接入音视频流的路数)p=2。
表2音视频流参数
因为I1、I2的“录像状态标识”为“1”,均需要进行录像文件恢复,下面以I1为例。
连接“录像文件表”,返回音视频流I1的“录像完成标识”为“1”的记录如表3所示,删除“E:\\I1\\20150414153106.mp4”。
表3音视频流I1的“录像完成标识”为“1”的记录
1)在“E:\\I1\\20150414153106.mp4”下创建并打开同名的录像文件,设W=0。
2)读取音视频流Ii的“索引文件”W到W+K字节的数据,W=W+K。
3)判断数据是否为空,若是,执行5)。
4)解析数据中的帧信息,根据“数据文件内偏移”Ps和“帧长度”lz,读取“数据文件”中Ps到Ps+lz字节的帧数据,把帧数据填充进录像文件中,执行2)。
5)关闭录像文件,计算出录像文件的时间长度Lt(单位:秒),更新该录像文件在“录像文件表”的信息(“录像时间”为Lt、“录像完成标识”为0),更新I1在“缓冲区表”的信息(“录像状态标识”为“0”),结束。
第四步:多路音视频流存储。
所述的步骤S4进一步包括:
S4-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数(即接入音视频流的路数)p,根据公式(4)计算总预留空间Ls。
L s = &Sigma; i = 1 p Data i &times; 2 - - - ( 4 )
S4-2、更新“缓冲区表”的信息,计时参数设置为0,生成“录像文件路径”,在“录像文件表”插入其记录。
S4-3、判断计时参数是否大于Lt,若是,执行步骤S4-4,否则,往缓冲区填充音视频数据及其信息,执行步骤S4-7。
S4-4、判断剩余存储空间是否大于Ls,若是,执行步骤S4-5,否则删除录像文件,重新执行步骤S4-4。
S4-5、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息。
S4-6、设置计时参数为0,生成“录像文件路径”,在“录像文件表”插入其记录。
S4-7、判断是否停止,若是,执行步骤S4-9,若否,执行步骤S4-8。
S4-8、计时1秒后,计时参数加1,执行步骤S4-3。
S4-9、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息,更新“缓冲区表”的信息,结束。
所述的步骤S4-2中,生成“录像文件路径”进一步包括:
S4-2-1、根据录像设备的特征生成一个唯一的文件夹路径,如该文件夹存在,则执行步骤S4-2-2,否则,新建该文件夹,然后执行步骤S4-2-2。
S4-2-2、在该文件夹路径下,根据录像设备的特征生成唯一的“录像文件路径”。
进一步的,步骤S4-4包括:
S4-4-1、判断剩余预设存储空间是否大于Ls,若是,则立刻执行步骤S4-5,若否,执行步骤S4-4-2。
S4-4-2、连接“录像文件表”并返回预设个数的可删除的录像文件在“录像文件表”的记录。
S4-4-3、根据“录像文件路径”,删除录像文件并删除该录像文件在“录像文件表”的记录,执行步骤S4-4-1。
所述的步骤S4-5和步骤S3-4相似,区别在于步骤S4-5不用更新“缓冲区表”的信息;步骤S4-9和步骤S3-4相同。
假设,连接“缓冲区表”,返回各路音视频流的缓冲区信息如表4所示,缓冲区的个数(即接入音视频流的路数)p=2。
表4音视频流参数
根据公式(4),总预留空间Ls=600000000+900000000=1500000000(字节)。
因为I1、I2是相对独立的存储,因此以I1为例。
更新I1在“缓冲区表”的信息(“录像状态标识”为“1”)。
根据录像设备特征生成唯一的文件路径为:E:\\I1,如果该文件夹不存在,新建该文件夹。根据当前时间生成唯一的“录像文件路径”为:E:\\I1\\20150414153106.MP4。插入“录像文件表”记录,如表5所示。
表5音视频流I1的插入“录像文件表”记录
判断计时参数是否大于60秒,如否,往缓冲区填充音视频数据及其信息,如是,根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息(“录像时间”为“60”,“录像完成标识”为“0”)。
判断剩余预设存储空间是否大于1500000000字节,若否,连接“录像文件表”并返回预设个数的可删除的录像文件的信息(设置返回个数为p×60),根据“录像文件路径”,删除录像文件并删除该录像文件在“录像文件表”的记录。
判断是否停止,若是,根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息(“录像时间”为Lt,“录像完成标识”为“0”),更新“缓冲区表”的信息(“录像状态标识”为“0”),结束。
第五步:结束。
本发明的防意外中止的多路音视频流存储方法判断是否初次启动,若是,设置缓冲区和录像区并在缓冲区中创建缓冲文件;判断是否需要录像文件恢复,如是,进行录像文件恢复;在录像区中进行多路音视频流存储。本发明能实现设备在意外中止后录像文件的恢复;缓冲区和录像区使用不同硬盘进行读写,大大减少在存储过程中磁头的寻道次数,提高系统的性能。
最后所应当说明的是,以上实施例仅用以说明本发明的技术方案而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。

Claims (4)

1.一种防意外中止的多路音视频流存储方法,其特征在于,包括以下步骤:
S1、判断是否初次启动,若是,执行步骤S2,若否,执行步骤S3;
S2、设置缓冲区和录像区,并在缓冲区中创建缓冲文件,执行步骤S4;
S3、判断是否需要录像文件恢复,若是,进行录像文件恢复;
S4、多路音视频流存储;
S5、结束。
2.根据权利要求1所述的防意外中止的多路音视频流存储方法,其特征在于,所述的步骤S2进一步包括:
S2-1、设有D1,D2,…,Dn共n个硬盘,硬盘大小分别为R1,R2,…,Rn,设置硬盘D1,D2,…,Dn为缓冲区,硬盘Dk+1,Dk+2,…,Dn为录像区,其中0<k<n;
S2-2、设有I1,I2,…,Ip共p路音视频流,fi表示音视频流Ii的帧率,si表示音视频流Ii的最大帧长度,录像时间长度为l,单位:秒,创建“录像文件表”,其中i=1,2,…,p;
S2-3、根据公式(1)计算Ii的数据文件大小Datai,根据公式(2)计算Ii的索引文件大小Indexi,设“索引文件”的帧信息的固定长度为K;
Datai=fi×si×l×5    (1)
Indexi=fi×l×K×5    (2)
S2-4、判断公式(3)是否成立,若是,执行步骤S2-1;若否,执行步骤2-5;
&Sigma; i = 1 p ( Data i + Index i ) &le; &Sigma; i = 1 n R i - - - ( 3 )
S2-5、在缓冲区创建缓冲文件,包括数据文件、索引文件,在“缓冲区表”插入其数据库记录;其中,数据文件用于按时间顺序以帧为单位依次存储音视频数据,索引文件用于按数据文件从头到尾顺序依次记录帧信息;
“录像文件表”、“缓冲区表”和“索引文件”的帧信息进一步包括:
“录像文件表”包括:“录像设备名称”、“录像文件路径”、“录像启动时间”、“录像时间”、“录像完成标识”,其中0表示已完成,1表示未完成、“录像文件的重要程度”,其中0-99表示录像文件的重要程度,数字越大表示录像文件越重要;
“缓冲区表”包括:“所属音视频流”、“帧率”、“最大帧长度”、“数据文件路径”、“索引文件路径”、“数据区大小”、“索引区大小”、“录像状态标识”,其中0表示“处于非录像状态”,1表示“处于录像状态”;
“索引文件”的帧信息以固定长度的格式存储,其包括:“帧类型”、“时间戳”、“数据文件内偏移”、“帧长度”4个字段,其中,帧类型为1个字节,0表示音频帧、1表示I帧、2表示其他类型的帧;时间戳为10个字节;数据文件内偏移为10个字节;帧长度为9个字节。
3.根据权利要求1所述的防意外中止的多路音视频流存储方法,其特征在于,所述的步骤S3进一步包括:
S3-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数p,设i=1;
S3-2、判断音视频流Ii的“录像状态标识”是否为“1”,若是,执行步骤S3-3,若否,执行步骤S-5;
S3-3、连接“录像文件表”,返回音视频流Ii的“录像完成标识”为“1”的记录,根据返回记录的“录像文件路径”删除该录像文件;
S3-4、根据缓冲区的数据,在“录像文件路径”生成同名录像文件,更新“录像文件表”的信息,更新Ii在“缓冲区表”的信息;
S3-5、i=i+1,判断i≤p是否成立,若是,执行步骤S3-2,若否,结束;
所述的步骤S3-4进一步包括:
S3-4-1、在“录像文件路径”下创建并打开同名的录像文件,设W=0;
S3-4-2、读取音视频流Ii的“索引文件”W到W+K字节的数据,W=W+K;
S3-4-3、判断数据是否为空,若是,执行步骤S3-4-5;
S3-4-4、解析数据中的帧信息,根据“数据文件内偏移”Ps和“帧长度”lz,读取“数据文件”中Ps到Ps+lz字节的帧数据,把帧数据填充进录像文件中,执行步骤S3-4-2;
S3-4-5、关闭录像文件,计算出录像文件的时间长度Lt,更新该录像文件在“录像文件表”的信息,其中“录像时间”为Lt、“录像完成标识”为“0”,更新Ii在“缓冲区表”的信息,其中“录像状态标识”为“0”,结束。
4.根据权利要求1所述的防意外中止的多路音视频流存储方法,其特征在于,所述的步骤S4进一步包括:
S4-1、连接“缓冲区表”,返回各路音视频流的缓冲区信息和缓冲区的个数p,根据公式(4)计算总预留空间Ls:
L s = &Sigma; i = 1 p Data i &times; 2 - - - ( 4 )
S4-2、更新“缓冲区表”的信息,计时参数设置为0,生成“录像文件路径”,在“录像文件表”插入其记录;
S4-3、判断计时参数是否大于Lt,若是,执行步骤S4-4,否则,往缓冲区填充音视频数据及其信息,执行步骤S4-7;
S4-4、判断剩余存储空间是否大于Ls,若是,执行步骤S4-5,否则删除录像文件,重新执行步骤S4-4;
S4-5、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息;
S4-6、设置计时参数为0,生成“录像文件路径”,在“录像文件表”插入其记录;
S4-7、判断是否停止,若是,执行步骤S4-9,若否,执行步骤S4-8;
S4-8、计时1秒后,计时参数加1,执行步骤S4-3;
S4-9、根据缓冲区信息,在“录像文件路径”生成录像文件,更新“录像文件表”信息,更新“缓冲区表”的信息,结束;
所述的步骤S4-2中,生成“录像文件路径”进一步包括:
S4-2-1、根据录像设备的特征生成一个唯一的文件夹路径,如该文件夹存在,则执行步骤S4-2-2,否则,新建该文件夹,然后执行步骤S4-2-2;
S4-2-2、在该文件夹路径下,根据录像设备的特征生成唯一的“录像文件路径”;
所述的步骤S4-4进一步包括:
S4-4-1、判断剩余预设存储空间是否大于Ls,若是,则立刻执行步骤S4-5,若否,执行步骤S4-4-2;
S4-4-2、连接“录像文件表”并返回预设个数的可删除的录像文件在“录像文件表”的记录;
S4-4-3、根据“录像文件路径”,删除录像文件并删除该录像文件在“录像文件表”的记录,执行步骤S4-4-1;
所述的步骤S4-5和步骤S3-4相似,区别在于步骤S4-5不用更新“缓冲区表”的信息;步骤S4-9和步骤S3-4相同。
CN201510383209.5A 2015-07-01 2015-07-01 一种防意外中止的多路音视频流存储方法 Expired - Fee Related CN104980786B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510383209.5A CN104980786B (zh) 2015-07-01 2015-07-01 一种防意外中止的多路音视频流存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510383209.5A CN104980786B (zh) 2015-07-01 2015-07-01 一种防意外中止的多路音视频流存储方法

Publications (2)

Publication Number Publication Date
CN104980786A true CN104980786A (zh) 2015-10-14
CN104980786B CN104980786B (zh) 2019-02-22

Family

ID=54276792

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510383209.5A Expired - Fee Related CN104980786B (zh) 2015-07-01 2015-07-01 一种防意外中止的多路音视频流存储方法

Country Status (1)

Country Link
CN (1) CN104980786B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740369A (zh) * 2016-01-27 2016-07-06 桂林长海发展有限责任公司 一种多视点分帧融合系统及方法
CN107623829A (zh) * 2017-08-30 2018-01-23 中国航空无线电电子研究所 一种视频记录设备中的文件管理方法
CN110798730A (zh) * 2019-11-14 2020-02-14 深圳市浪涛科技有限公司 一种mp4文件录制及修复方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050265162A1 (en) * 2004-05-27 2005-12-01 Canon Kabushiki Kaisha File system, file recording method, and file reading method
CN102200935A (zh) * 2011-04-27 2011-09-28 烽火通信科技股份有限公司 一种流媒体系统数据存储方法
CN102262657A (zh) * 2011-06-29 2011-11-30 成都市华为赛门铁克科技有限公司 多媒体数据存储方法及系统
CN103678026A (zh) * 2012-09-18 2014-03-26 杭州海康威视系统技术有限公司 可修复的视频监控数据存储和修复方法及其装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050265162A1 (en) * 2004-05-27 2005-12-01 Canon Kabushiki Kaisha File system, file recording method, and file reading method
CN102200935A (zh) * 2011-04-27 2011-09-28 烽火通信科技股份有限公司 一种流媒体系统数据存储方法
CN102262657A (zh) * 2011-06-29 2011-11-30 成都市华为赛门铁克科技有限公司 多媒体数据存储方法及系统
CN103678026A (zh) * 2012-09-18 2014-03-26 杭州海康威视系统技术有限公司 可修复的视频监控数据存储和修复方法及其装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740369A (zh) * 2016-01-27 2016-07-06 桂林长海发展有限责任公司 一种多视点分帧融合系统及方法
CN105740369B (zh) * 2016-01-27 2019-06-28 桂林长海发展有限责任公司 一种多视点分帧融合系统及方法
CN107623829A (zh) * 2017-08-30 2018-01-23 中国航空无线电电子研究所 一种视频记录设备中的文件管理方法
CN107623829B (zh) * 2017-08-30 2020-07-07 中国航空无线电电子研究所 一种视频记录设备中的文件管理方法
CN110798730A (zh) * 2019-11-14 2020-02-14 深圳市浪涛科技有限公司 一种mp4文件录制及修复方法

Also Published As

Publication number Publication date
CN104980786B (zh) 2019-02-22

Similar Documents

Publication Publication Date Title
CN100578470C (zh) 基于裸设备的音视频数据存取方法和装置
CN100452857C (zh) 数据处理装置
CN105872484B (zh) 一种监控录像异常的保护方法
CN104980786A (zh) 一种防意外中止的多路音视频流存储方法
CN105608142B (zh) 一种Json数据的存储方法及装置
CN101094364B (zh) 用于处理信息的设备和方法
CN1741170B (zh) 附加信息产生方法、记录介质及其记录、编辑、重放装置
CN109936715A (zh) 一种mp4文件的处理方法及其相关设备
CN105933736A (zh) 一种日志处理方法及装置
CN108897992A (zh) 一种数字内容的创作保护方法、装置、设备及介质
CN104869341A (zh) 一种实现庭审文本与庭审音像同步回放的方法及系统
CN106600750A (zh) 一种循环录像的方法、系统及行车记录仪
CN108763531A (zh) 一种mdvr文件存储系统及其运行方法
CN101452725B (zh) 一种播放提示方法及装置
CN103123645A (zh) 一种降低磁盘碎片的方法
CN101785006A (zh) 用于对多媒体数据进行编码和解码的方法和设备
CN103106200A (zh) 非关系型数据库同步系统及双写同步方法
CN103092849A (zh) 文件系统簇管理方法
CN101425310B (zh) 在音频视频交织记录期间保留索引存储空间的方法
CN101794306A (zh) 多类型录像文件分块存储系统及方法
CN103793506A (zh) 一种视频文件管理方法和装置
CN102930875B (zh) 一种实时同步录音录像的方法
CN1330175C (zh) 内容编辑装置
WO2007129684A1 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
TWI261185B (en) Storage medium storing application data providing programming function, and apparatus and method for reproducing the application

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190222

Termination date: 20200701

CF01 Termination of patent right due to non-payment of annual fee