CN112203031B - 数字视频缓存系统及方法 - Google Patents
数字视频缓存系统及方法 Download PDFInfo
- Publication number
- CN112203031B CN112203031B CN202010806248.2A CN202010806248A CN112203031B CN 112203031 B CN112203031 B CN 112203031B CN 202010806248 A CN202010806248 A CN 202010806248A CN 112203031 B CN112203031 B CN 112203031B
- Authority
- CN
- China
- Prior art keywords
- audio
- frame
- video
- access
- video frames
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 239000000872 buffer Substances 0.000 claims abstract description 76
- 230000003139 buffering effect Effects 0.000 claims abstract description 18
- 239000003550 marker Substances 0.000 claims description 3
- 230000007717 exclusion Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 239000007853 buffer solution Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明实施例提供一种数字视频缓存系统及方法,所述系统包括:音视频获取模块,用于实时获取音视频帧;标记模块,用于对获取的每一帧音视频帧均添加标记帧头;环形缓冲区,用于在固定帧数范围内缓存及刷新带有标记帧头的音视频帧;以及访问模块,用于对访问用户的访问信息进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段。本发明实施例通过采用环形缓冲区对音视频帧进行缓存,由于环形缓冲区读写同步的特性,使得环形缓冲区的内存连续,避免了数据丢失,同时对访问用户的访问信息进行区分,使得访问用户可以通过访问信息与标记帧头的信息来快速读取指定的音视频帧,避免数据的重复及混乱,有效支持多用户同时访问。
Description
技术领域
本发明实施例涉及数字视频监控技术领域,特别是涉及一种数字视频缓存系统及方法。
背景技术
现有的数字视频缓存系统需要能够同时支持录像与实时视频记录的功能,录像系统将实时记录的音视频帧保存到缓存模块内,在系统需要对某个时间点后的音视频进行查阅时,缓存系统需要对这段音视频进行整理,将缓存模块内的音视频帧整理为音视频段,方便访问用户对缓存系统的访问读取。但由于缓存模块一般采用队列缓存,当缓存空间内的音视频帧满时,无法继续进行缓存,需要删除一定大小的音视频帧才能继续存入新的音视频帧,并且数据的写入与读取不同步,容易造成数据丢失,由于缓存的音视频帧的信息不同,多用户同时读取易产生信息重叠错乱,在同一时间内仅能支持一个用户对缓存系统进行访问,读取效率低。
发明内容
本发明实施例要解决的技术问题在于,提供一种数字视频缓存系统,能够提高内存使用率,支持多用户同时访问。
本发明实施例进一步要解决的技术问题在于,提供一种数字视频缓存方法,能够提高内存使用率,支持多用户同时访问。
为解决上述技术问题,本发明实施例采用以下技术方案:一种数字视频缓存系统,包括:
音视频获取模块,用于实时获取音视频帧;
标记模块,用于对获取的每一帧音视频帧均添加标记帧头;
环形缓冲区,用于在固定帧数范围内缓存及刷新带有标记帧头的音视频帧;以及
访问模块,用于对访问用户进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段。
进一步地,所述标记帧头包括以下信息:帧标记、帧头长度、帧类型、通道、帧率、帧编号、长度及时间。
进一步地,所述环形缓冲区包括:
检查单元,用于检查环形缓冲区内是否有空余的帧数内存;
写入单元,用于在环形缓冲区内的帧数内存有空余时将带有标记帧头的音视频帧写入至环形缓冲区内;以及
删除单元,用于在检查环形缓冲区内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
进一步地,所述访问模块包括:
区分单元,用于对访问用户的访问信息进行区分以供访问用户分别对环形缓冲区进行访问;
读取单元,用于在检查环形缓冲区内缓存有带有标记帧头的音视频帧时对指定写入时间段的音视频帧进行读取;以及
整理单元,用于将读取的音视频帧整理为连续的音视频段并发送给访问用户。
进一步地,所述访问用户的访问信息包括标记帧头中的帧标记及时间。
另一方面,为进一步解决上述技术问题,本发明实施例采用一种数字视频缓存方法,包括以下步骤:
实时获取音视频帧;
对获取的每一帧音视频帧均添加标记帧头;
在固定帧数范围内缓存及刷新带有标记帧头的音视频帧;以及
对访问用户进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段。
进一步地,所述标记帧头包括以下信息:帧标记、帧头长度、帧类型、通道、帧率、帧编号、长度及时间。
进一步地,所述在固定帧数范围内缓存及刷新带有标记帧头的音视频帧包括:
检查环形缓冲区内是否有空余的帧数内存;
在环形缓冲区内的帧数内存有空余时将带有标记帧头的音视频帧写入至环形缓冲区内;以及
在检查环形缓冲区内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
进一步地,所述对访问用户进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段包括:
对访问用户的访问信息进行区分以供访问用户分别对环形缓冲区进行访问;
在检查环形缓冲区内缓存有带有标记帧头的音视频帧时对指定写入时间段的音视频帧进行读取;以及
将读取的音视频帧整理为连续的音视频段并发送给访问用户。
进一步地,所述访问用户的访问信息包括标记帧头中的帧标记及时间。
采用上述技术方案,本发明实施例至少具有以下有益效果:本发明实施例通过在获取的音视频上添加包含特定信息的标记帧头,并采用环形缓冲区对音视频帧进行缓存,由于环形缓冲区读写同步的特性,使得环形缓冲区的内存连续,避免了数据丢失,同时对访问用户的访问信息进行区分,使得访问用户可以通过访问信息与标记帧头的信息来快速读取指定的音视频帧,避免数据的重复及混乱,有效支持多用户同时访问。
附图说明
图1是本发明数字视频缓存系统一个可选实施例的原理方框图。
图2是本发明数字视频缓存系统一个可选实施例添加有标记帧头的音视频帧示意图。
图3是本发明数字视频缓存系统一个可选实施例环形缓冲区50的原理方框图。
图4是本发明数字视频缓存系统一个可选实施例访问模块70的原理方框图。
图5是本发明数字视频缓存方法一个可选实施例的步骤流程图。
图6是本发明数字视频缓存方法一个可选实施例的步骤S3的示意流程图。
图7是本发明数字视频缓存方法一个可选实施例的步骤S4的示意流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细说明。应当理解,以下的示意性实施例及说明仅用来解释本发明,并不作为对本发明的限定,而且,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互结合。
本发明一个可选实施例提供一种数字视频缓存系统1,如图1所示,包括:
音视频获取模块10,用于实时获取音视频帧;
标记模块30,用于对获取的每一帧音视频帧均添加标记帧头90;
环形缓冲区50,用于在固定帧数范围内缓存及刷新带有标记帧头90的音视频帧;以及
访问模块70,用于对访问用户进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段。
本发明实施例通过在获取的音视频上添加包含特定信息的标记帧头90,并采用环形缓冲区50对音视频帧进行缓存,由于环形缓冲区50读写同步的特性,使得环形缓冲区50的内存连续,避免了数据丢失,同时对访问用户的访问信息进行区分,使得访问用户可以通过访问信息与标记帧头90的信息来快速读取指定的音视频帧,避免数据的重复及混乱,有效支持多用户同时访问。
在本发明又一个可选实施例中,如图2所示,所述标记帧头90包括以下信息:帧标记、帧头长度、帧类型、通道、帧率、帧编号、长度及时间。本实施例通过设置标记帧头90,能够根据标记帧头90中包含的特定信息快速的定位到某一帧,提高读取效率,同时使得访问用户对添加有标记帧头90的每一帧音视频进行读取时不会产生混乱。
在本发明又一个可选实施例中,如图3所示,所述环形缓冲区50包括:
检查单元501,用于检查环形缓冲区50内是否有空余的帧数内存;
写入单元503,用于在环形缓冲区50内的帧数内存有空余时将带有标记帧头90的音视频帧写入至环形缓冲区50内;以及
删除单元505,用于在检查环形缓冲区50内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
本实施例通过设置检查单元501来对环形缓冲区50的内存空间进行检查,当环形缓冲区50有空余内存时,写入单元503会写入新的音视频帧,当环形缓冲区50内存满时,删除单元505会对环形缓冲区50内写入时间最早的音视频帧进行删除,同时环形缓冲区50的写入与读取是同步的,能够有效保证新数据的写入及环形缓冲区50内数据的读取。
在本发明再一个可选实施例中,如图4所示,所述访问模块70包括:
区分单元701,用于对访问用户的访问信息进行区分以供访问用户分别对环形缓冲区50进行访问;
读取单元703,用于在检查环形缓冲区50内缓存有带有标记帧头90的音视频帧时对指定写入时间段的音视频帧进行读取;以及
整理单元705,用于将读取的音视频帧整理为连续的音视频段并发送给访问用户。
本实施例通过区分单元701来对各访问用户的访问信息进行区分,通过区分使得各访问用户得到的访问权限一致但访问记录却有所区别,从而使各访问用户之间的访问操作互斥,不会产生数据之间的错乱,读取单元703根据访问用户的访问信息对访问用户指定的音视频帧进行读取,之后由整理单元705整理成连续的音视频段再发送给访问用户,使得访问用户调用预录像的音视频段更方便。
在本发明又一个可选实施例中,所述访问用户的访问信息包括标记帧头90中的帧标记及时间。本实施例通过设置访问信息包含帧标记及时间,能够有效快速定位到指定的音视频帧,由于原有的数据帧所包含的信息不一致且无规律,难以查找到指定的某一音视频帧,通过帧标记及时间能够快速准确的进行帧定位,保证效率的同时提高精确性。
另一方面,如图5所示,本发明实施例采用一种数字视频缓存方法,包括以下步骤:
S1:实时获取音视频帧;
S2:对获取的每一帧音视频帧均添加标记帧头90;
S3:在固定帧数范围内缓存及刷新带有标记帧头90的音视频帧;以及
S4:对访问用户进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段。
本实施例通过采用上述方法,能够对音视频帧进行不断缓存及刷新,提高内存使用率,同时还能够对音视频帧进行快速读取并区分访问用户以实现多用户的同时访问
在本发明又一个可选实施例中,所述标记帧头90包括以下信息:帧标记、帧头长度、帧类型、通道、帧率、帧编号、长度及时间。本实施例通过设置标记帧头90包括上述信息,能够使各个标记帧头90有所区别,同时易于查找,提高缓存系统读取效率。
在本发明再一个可选实施例中,如图6所示,所述步骤S3包括:
S31:检查环形缓冲区50内是否有空余的帧数内存;
S32:在环形缓冲区50内的帧数内存有空余时将带有标记帧头90的音视频帧写入至环形缓冲区50内;以及
S33:在检查环形缓冲区50内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
本实施例通过采用上述方法,在写入及删除音视频帧之前均对环形缓冲区50内的内存空间进行检查,以保证环形缓冲区50读取及写入的正常运行,提高系统可靠性。
在本发明又一个可选实施例中,如图7所示,所述步骤S4包括:
S41:对访问用户的访问信息进行区分以供访问用户分别对环形缓冲区50进行访问;
S42:在检查环形缓冲区50内缓存有带有标记帧头90的音视频帧时对指定写入时间段的音视频帧进行读取;以及
S43:将读取的音视频帧整理为连续的音视频段并发送给访问用户。
本实施例通过采用上述方法,对访问用户的访问信息进行区分,使得各个访问用户的访问信息独立开来,再对应到特定的音视频帧进行访问,读取并整理音视频帧为音视频段供访问用户下载观看,可支持多用户同时对缓存系统进行访问。
在本发明又一个可选实施例中,所述访问用户的访问信息包括标记帧头90中的帧标记及时间。本实施例通过设置标记帧头90包含帧标记与时间,通过帧标记与时间可方便快速的定位到指定的音视频帧,提高读取效率及精确性。
本发明实施例所述的功能如果以软件功能模块或单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本发明实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多变化形式,这些均属于本发明的保护范围之内。
Claims (8)
1.一种数字视频缓存系统,其特征在于,所述系统包括:
音视频获取模块,用于实时获取音视频帧;
标记模块,用于对获取的每一帧音视频帧均添加标记帧头;
环形缓冲区,用于在固定帧数范围内缓存及刷新带有标记帧头的音视频帧;以及
访问模块,用于对同时访问的多个访问用户的访问信息进行区分以分别读取环形缓冲区内由音视频帧组成的音视频段,所述访问模块包括:
区分单元,用于对所述多个访问用户的访问信息进行区分以供所述多个访问用户分别对环形缓冲区进行互斥访问;
读取单元,用于在检查环形缓冲区内缓存有带有标记帧头的音视频帧时对指定写入时间段的音视频帧进行读取;以及
整理单元,用于将读取的音视频帧整理为连续的音视频段并发送给相对应的访问用户。
2.如权利要求1所述的数字视频缓存系统,其特征在于,所述标记帧头包括以下信息:
帧头长度、帧类型、通道、帧率、帧编号及时间。
3.如权利要求1所述的数字视频缓存系统,其特征在于,所述环形缓冲区包括:
检查单元,用于检查环形缓冲区内是否有空余的帧数内存;
写入单元,用于在环形缓冲区内的帧数内存有空余时将带有标记帧头的音视频帧写入至环形缓冲区内;以及
删除单元,用于在检查环形缓冲区内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
4.如权利要求1所述的数字视频缓存系统,其特征在于,所述访问用户的访问信息包括标记帧头中的时间。
5.一种数字视频缓存方法,其特征在于,所述方法包括以下步骤:
实时获取音视频帧;
对获取的每一帧音视频帧均添加标记帧头;
在固定帧数范围内缓存及刷新带有标记帧头的音视频帧;
对同时访问的多个访问用户的访问信息进行区分以供访问用户分别对环形缓冲区进行互斥访问;
在检查环形缓冲区内缓存有带有标记帧头的音视频帧时对指定写入时间段的音视频帧进行读取;以及
将读取的音视频帧整理为连续的音视频段并发送给相对应的访问用户。
6.如权利要求5所述的数字视频缓存方法,其特征在于,所述标记帧头包括以下信息:
帧头长度、帧类型、通道、帧率、帧编号及时间。
7.如权利要求5所述的数字视频缓存方法,其特征在于,所述在固定帧数范围内缓存及刷新带有标记帧头的音视频帧包括:
检查环形缓冲区内是否有空余的帧数内存;
在环形缓冲区内的帧数内存有空余时将带有标记帧头的音视频帧写入至环形缓冲区内;以及
在检查环形缓冲区内的帧数内存已满时,对写入时间最早的音视频帧进行删除。
8.如权利要求6所述的数字视频缓存方法,其特征在于,所述访问用户的访问信息包括标记帧头中的时间。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010806248.2A CN112203031B (zh) | 2020-08-12 | 2020-08-12 | 数字视频缓存系统及方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010806248.2A CN112203031B (zh) | 2020-08-12 | 2020-08-12 | 数字视频缓存系统及方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN112203031A CN112203031A (zh) | 2021-01-08 |
| CN112203031B true CN112203031B (zh) | 2023-06-02 |
Family
ID=74005556
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010806248.2A Active CN112203031B (zh) | 2020-08-12 | 2020-08-12 | 数字视频缓存系统及方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN112203031B (zh) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104604240A (zh) * | 2012-07-18 | 2015-05-06 | 欧朋软件爱尔兰有限责任公司 | 准时分布式视频高速缓存 |
| CN105376218A (zh) * | 2015-10-21 | 2016-03-02 | 上海思华科技股份有限公司 | 一种快速响应用户请求的流媒体系统和方法 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6748508B1 (en) * | 2000-10-17 | 2004-06-08 | Sun Microsystems, Inc. | Method and apparatus for buffering in multi-node, data distribution architectures |
| CN103686312B (zh) * | 2013-12-05 | 2017-02-08 | 中国航空无线电电子研究所 | 一种dvr多路音视频记录方法 |
| CN111405358A (zh) * | 2020-03-24 | 2020-07-10 | 上海依图网络科技有限公司 | 基于缓存的视频帧提取方法、装置、介质及系统 |
-
2020
- 2020-08-12 CN CN202010806248.2A patent/CN112203031B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104604240A (zh) * | 2012-07-18 | 2015-05-06 | 欧朋软件爱尔兰有限责任公司 | 准时分布式视频高速缓存 |
| CN105376218A (zh) * | 2015-10-21 | 2016-03-02 | 上海思华科技股份有限公司 | 一种快速响应用户请求的流媒体系统和方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN112203031A (zh) | 2021-01-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107870973B (zh) | 一种加快多路监控同时回放的文件存储系统 | |
| US11250888B1 (en) | Flash memory and method for storing and retrieving embedded audio video data | |
| US7631140B2 (en) | Data accessing method, device in which the data accessing method is executed and recording medium | |
| CN102393854B (zh) | 一种获取音视频数据的方法及装置 | |
| CN103761056A (zh) | 一种视频监控应用中流式数据的存储方法 | |
| RU2010106007A (ru) | Приемник телевизионных сигналов | |
| CN101644996A (zh) | 索引数据的存储方法和存储控制装置 | |
| CN102136290A (zh) | 一种嵌入式实时视频文件存储方法 | |
| WO2021249201A1 (zh) | 一种基于叠瓦式磁记录盘的监控数据存储方法及装置 | |
| KR101743411B1 (ko) | 데이터 액세스 방법 및 장치 | |
| CN103974013B (zh) | 进行视频录像回放的方法及视频录像设备 | |
| JP6052812B2 (ja) | テープ上のファイルの管理、書き込み、及び読み出し方法 | |
| CN108833817A (zh) | 一种视频数据存储方法及装置 | |
| CN111163297A (zh) | 一种实现视频监控云存储高并发和快速回放的方法 | |
| JP6218668B2 (ja) | メディアへのファイル書き込みに伴うメタ情報の効率的な利用 | |
| CN112203031B (zh) | 数字视频缓存系统及方法 | |
| CN112181275B (zh) | 一种数据处理器及数据处理方法 | |
| CN114741552A (zh) | 一种自定义格式的录像文件存储方法及介质 | |
| KR20190089796A (ko) | 감시 시스템의 영상 관리 장치 및 방법 | |
| CN109710782A (zh) | 卡口图片管理优化方法 | |
| RU2012111054A (ru) | Неперезаписываемый носитель записи информации, способ записи информации, устройство записи информации, способ воспроизведения информации, устройство воспроизведения информации и способ изготовления носителя записи информации | |
| CN102541957A (zh) | 一种基于数据流磁带操作数据文件的方法及装置 | |
| CN111930320B (zh) | 一种基于分布式存储数据的内存优化方法及其系统 | |
| CN107168767B (zh) | 存储设备的数据处理方法和装置 | |
| CN116627320B (zh) | 一种非结构化数据的存储、迁移和识别方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |