CN112449209B - 视频存储方法、装置、云服务器及计算机可读存储介质 - Google Patents
视频存储方法、装置、云服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112449209B CN112449209B CN201910806798.1A CN201910806798A CN112449209B CN 112449209 B CN112449209 B CN 112449209B CN 201910806798 A CN201910806798 A CN 201910806798A CN 112449209 B CN112449209 B CN 112449209B
- Authority
- CN
- China
- Prior art keywords
- video object
- video
- gop data
- index information
- data
- 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
Images
Classifications
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23109—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2355—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
Abstract
本发明提供一种视频存储方法、装置、云服务器及计算机可读存储介质,所述视频存储方法包括:在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。本发明提供的技术方案解决了现有的云服务器通常是存储封装后的视频数据,难以实现视频的实时存储的问题。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种视频存储方法、装置、云服务器及计算机可读存储介质。
背景技术
随着视频技术的发展,对实时视频存储的效率、扩展、稳定等方面都有了较高的要求。云存储因其存储量大已成为目前使用较为广泛的存储技术,将视频存储于云服务器也成为视频存储的一种主要方式。
目前,云服务器提供的视频存储服务,通常是将视频以MP4、TS等公有格式进行存储,或者通过SDK将实时视频推流到云服务器上,用户终端可直接通过云服务器以公有协议获取到视频数据进行播放。但是,现有的云服务器通常是存储封装后的视频数据,难以实现视频的实时存储。
发明内容
本发明实施例提供一种视频存储方法、装置、云服务器及计算机可读存储介质,以解决现有的云服务器通常是存储封装后的视频数据,难以实现视频的实时存储的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种视频存储方法,应用于云服务器,包括:
在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;
在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;
其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。
可选地,所述完成所述第一视频对象的创建之后,还包括:
获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
可选地,所述获取GOP数据,并将所述GOP数据存储到第一视频对象中,包括:
获取GOP数据及与所述GOP数据对应的第一索引信息;
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
可选地,所述在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中,包括:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
可选地,所述判断所述第一视频对象中的GOP数据的数量是否小于预设数量之后,还包括:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;
其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
第二方面,本发明实施例还提供了一种视频存储装置,应用于云服务器,包括:
存储模块,用于在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;
第一创建模块,用于在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;
其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。
可选地,所述视频存储装置还包括:
获取模块,用于获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
第二创建模块,用于根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
可选地,所述存储模块包括:
获取单元,用于获取GOP数据及与所述GOP数据对应的第一索引信息;
存储单元,用于在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
可选地,所述存储单元还用于:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
可选地,所述存储单元还用于:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;
其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
第三方面,本发明实施例还提供了一种云服务器,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面中任一项所述的视频存储方法的步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述的视频存储方法的步骤。
本发明实施例中,云服务器在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建。其中,所述第一视频对象中不仅包括GOP数据,还包括每一个所述GOP数据对应的第一索引信息。这样,也就使得云服务器能够根据第一索引信息来快速查找到对应的GOP数据,实现GOP数据的快速定位;并且,本发明实施例中是获取到一个GOP数据即存储一个GOP数据,进而实现了视频的实时存储,提高了视频的存储效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种视频存储方法的流程图;
图2是本发明实施例提供的一种视频存储装置的结构图;
图3是本发明实施例提供的一种云服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种视频存储方法,所述视频存储方法应用于云服务器。请参照图1,所述视频存储方法包括以下步骤:
步骤101、在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中。
可以理解地,视频文件通常是将音视频帧封装之后的数据。视频帧分为I帧、B帧和P帧,而视频必须以I帧开始播放形成一段的视频图像,从I帧到下一个I帧之间的所有帧就是一个视频GOP(Group of Picture,图像组)数据。
本发明实施例中,所述视频存储方法应用于云服务器,所述云服务器与终端通信连接。云服务器在接收到终端发送的视频I帧的情况下,获取GOP数据。
具体地,终端可以是实时地将视频帧发送至云服务器。云服务器在接收到视频帧时,判断所述视频帧是否为视频I帧;若是,则生成一个GOP数据,并将所述视频I帧存储在新生成的GOP数据中;若云服务器接收到的视频帧不是视频I帧,则该视频帧为视频B帧或视频P帧,则将该视频B帧或视频P帧存储进最新生成的GOP数据中。这样,每当接收到一个视频I帧,就生成一个GOP数据,而非视频I帧则会存储进新最新生成的GOP数据中,那么一个GOP数据中也就包括一个视频I帧、一个视频B帧和一个视频P帧;这样,云服务器也就能够获取到多个GOP数据,并能够将所述GOP数据存储到第一视频对象中。
需要说明地,云服务器可以是每获取到一个完整的GOP数据,则将所述GOP数据存储到第一视频对象中。那么,所述第一视频对象中也就包括多个GOP数据;并且,第一视频对象中存储的多个GOP数据在时间上是连续的,进而以确保视频播放时的连续性。可选地,云服务器可以预先设定所述第一视频对象能够存储的GOP数据的预设数量,也就是说,第一视频对象最大能够存储预设数量的GOP数据。
其中,云服务器可以是预先创建有所述第一视频对象,或者,还可以是当云服务器在获取到第一个GOP数据时,自动生成一个第一视频对象,并将该GOP数据存储到所述第一视频对象中。
本发明实施例中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。
也就是说,每一个GOP数据都有与其对应的第一索引信息。若所述第一视频对象中包括预设数量的GOP数据,那么也包括相应的预设数量的第一索引信息。所述第一索引信息包括对应的GOP数据的数据偏移量、数据长度及时间信息,那么通过所述第一索引信息至少也就能够获知其对应的GOP数据的时长、起始时间、终止时间、数据大小等信息。
步骤102、在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建。
也就是说,云服务器预先设定有第一视频对象能够存储的GOP数据的数量。当第一视频对象中的GOP数据达到预设数量,说明该第一视频对象不能再存储新的GOP数据,则完成该第一视频对象的创建。或者,当云服务器未再获取到新的GOP数据,也可以完成第一视频对象的创建;这种情况下,该创建的第一视频对象中的GOP数据数量可以是小于预设数量。
另外,云服务器可以是预先建立有第一视频对象,或者也可以是在获取到第一个GOP数据时,自动生成一个第一视频对象,并将该GOP数据存储到所述第一视频对象中。
其中,第一视频对象中不仅包括GOP数据,还包括每一个GOP数据对应的第一索引信息。第一视频对象中包括多个GOP数据,也就包括相应数量的第一索引信息,云服务器可以是将第一视频对象中包括的所有第一索引信息存储到该第一视频对象的尾端。
本发明实施例提供的技术方案,云服务器在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建。其中,所述第一视频对象中不仅包括GOP数据,还包括每一个所述GOP数据对应的第一索引信息。这样,也就使得云服务器能够根据第一索引信息来快速查找到对应的GOP数据,实现GOP数据的快速定位;并且,本发明实施例中是获取到一个GOP数据即存储一个GOP数据,进而实现了视频的实时存储,提高了视频的存储效率。
本发明实施例中,在所述步骤102之后,还可以包括:
获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
可以理解地,云服务器可以是创建多个第一视频对象,并将多个第一视频对象存储进第二视频对象中,进而也就创建了第二视频对象。其中,第二视频对象中不仅包括多个第一视频对象,还包括每一个第一视频对象对应的第二索引信息。
需要说明地,所述第二索引信息至少包括所述第一视频对象的起始时间和终止时间。假设所述第一视频对象包括预设数量的GOP数据,且预设数量的GOP数据在时间上是连续的,以确保第一视频对象播放时的连续性;那么,根据第一视频对象中存储的GOP数据,也就能够获知该第一视频对象的起始时间和终止时间,进而获取第一视频对象对应的第二索引信息。这样,根据第二索引信息也就能够快速查找到第二视频对象中对应的第一视频对象,进而以实现第一视频对象的快速定位。
其中,云服务器可以是预先设定第二视频对象能够存储的第一视频数量的最大数量,或者,也可以是预先设定第二视频对象的时间段,也就是第二视频对象的预设起始时间和预设终止时间,进而也就能够针对性地将第一视频对象存储到对应的第二视频对象中,更有助于对第一视频对象的分类和存储。
例如,针对某一天的监控视频,可以是预先设定第二视频对象的预设时间段是8:10~8:20,也即第二视频对象的预设起始时间是上午8点10分,预设终止时间是上午8点20分,那么当创建的第一视频对象的起始时间和终止时间位于该预设时间段内,则云服务器自动将该第一视频对象存储到第二视频对象中,对于不位于这个时间段内的第一视频对象,则不会存储到该第二视频对象。这样,既能够针对性的对第一视频对象进行分类存储,也更便于对第一视频对象的查找和定位。
可选地,所述步骤101可以包括:
获取GOP数据及与所述GOP数据对应的第一索引信息;
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
可以理解地,每一个GOP数据对应的第一索引信息中包括该GOP数据的时间信息,进而也就能够判断该时间信息是否位于第二视频对象对应的预设时间段内;若是,则将该时间信息对应的GOP数据存储到所述第一视频对象中。其中,第二视频对象对应的预设时间段可以是云服务器预先设置的,那么也就限定了存储在第二视频对象中的第一视频对象对应的时间信息;而第一视频对象中包括存储于其中的每一个GOP数据的第一索引信息,根据第一索引信息也就能够判断出对应的GOP数据是否是位于预设时间段内。
可选地,所述在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中,包括:
在所述GOP数据为所述预设时间段内的数据的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中;
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
可以理解地,云服务器预先设定了所述第一视频对象能够存储的GOP数据为预设数量,那么,也就限定了所述第一视频对象最多只能存储预设数量的GOP数据。
基于GOP数据对应的第一索引信息能够判断出该GOP数据对应的时间信息是否位于预设时间段内,若所述时间信息位于预设时间段内,进一步判断所述第一视频对象中的GOP数据的数量是否小于预设数量。
本发明实施例中,在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,则将所述GOP数据存储到第一视频对象中;若所述第一视频对象中的GOP数据的数量大于或等于预设数量,则创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中。这样,也就确保GOP数据都能够被存储,避免出现因第一视频对象存储的GOP数据超过预设数量而导致无法存储的现象发生。
例如,在第一视频对象A中存储的GOP数据已经达到预设数量的情况下,则云服务器创建第一视频对象B,并将新获得的GOP数据存储到该第一视频对象B中。其中,第一视频对象A对应的终止时间与第一视频对象B对应的起始时间想连续,也就是说,该第一视频对象B中的第一个GOP数据与第一视频对象A中的最后一个GOP数据在时间上是连续的。另外,第一视频对象A与第一视频对象B可以是属于同一个第二视频对象中,进而以确保第二视频对象视频播放的连续性。例如,针对监控视频,所述第二视频对象的预设时间段可以是一天。
本发明实施例提供的技术方案,云服务器能够在获取到一个GOP数据时,将该GOP数据存储到第一视频对象中,实现了视频数据的实时存储;并且,还能够将该GOP数据的第一索引信息也存储到第一视频对象中,进而云服务器在接收到用户输入的时间信息时,快速查找出与用户输入的时间信息对应的视频数据,方便用户能够准确、快速的获取到想要的视频,实现了视频数据的快速定位和播放;另外,本发明实施例中视频是以GOP数据的格式进行存储,视频的数据格式更小,存储的实时性更高,更便于视频云服务器对视频数据的功能性开发,如监控视频回看的高倍数播放等。
本发明实施例还提供了一种视频存储装置,所述视频存储装置应用于云服务器。请参见图2,所述视频存储装置200包括:
存储模块201,用于在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;
第一创建模块202,用于在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;
其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。
可选地,所述视频存储装置200还包括:
获取模块,用于获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
第二创建模块,用于根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
可选地,所述存储模块201包括:
获取单元,用于获取GOP数据及与所述GOP数据对应的第一索引信息;
存储单元,用于在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
可选地,所述存储单元还用于:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
可选地,所述存储单元还用于:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;
其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
需要说明的是,视频存储装置200能够实现上述视频存储方法实施例的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例提供的技术方案,视频存储装置200在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建。其中,所述第一视频对象中不仅包括GOP数据,还包括每一个所述GOP数据对应的第一索引信息。这样,也就使得云服务器能够根据第一索引信息来快速查找到对应的GOP数据,实现GOP数据的快速定位;并且,本发明实施例中是获取到一个GOP数据即存储一个GOP数据,进而实现了视频的实时存储,提高了视频的存储效率。
本发明实施例还提供了一种云服务器,请参加图3,所述云服务器包括:处理器300,用于读取存储器320中的程序,执行下列过程:
在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息。
收发机310,用于在处理器300的控制下接收和发送数据。
其中,在图3中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器300代表的一个或多个处理器和存储器320代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机310可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器300负责管理总线架构和通常的处理,存储器320可以存储处理器300在执行操作时所使用的数据。
处理器300负责管理总线架构和通常的处理,存储器320可以存储处理器300在执行操作时所使用的数据。
可选地,处理器300还用于读取所述计算机程序,执行如下步骤:
获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
可选地,处理器300还用于读取所述计算机程序,执行如下步骤:
获取GOP数据及与所述GOP数据对应的第一索引信息;
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
可选地,处理器300还用于读取所述计算机程序,执行如下步骤:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
可选地,处理器300还用于读取所述计算机程序,执行如下步骤:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
需要说明的是,本发明实施例提供的云服务器能够实现上述视频存储方法实施例的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述视频存储方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种视频存储方法,应用于云服务器,其特征在于,包括:
在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;
在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;
其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息;
所述完成所述第一视频对象的创建之后,还包括:
获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
2.根据权利要求1所述的视频存储方法,其特征在于,所述获取GOP数据,并将所述GOP数据存储到第一视频对象中,包括:
获取GOP数据及与所述GOP数据对应的第一索引信息;
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
3.根据权利要求2所述的视频存储方法,其特征在于,所述在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中,包括:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
4.根据权利要求3所述的视频存储方法,其特征在于,所述判断所述第一视频对象中的GOP数据的数量是否小于预设数量之后,还包括:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;
其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
5.一种视频存储装置,应用于云服务器,其特征在于,包括:
存储模块,用于在接收到视频I帧的情况下,获取GOP数据,并将所述GOP数据存储到第一视频对象中;
第一创建模块,用于在所述第一视频对象中的GOP数据达到预设数量或未获取到新的GOP数据的情况下,完成所述第一视频对象的创建;
其中,所述第一视频对象中还包括每一个所述GOP数据对应的第一索引信息,所述第一索引信息包括对应的所述GOP数据的数据偏移量、数据长度及时间信息;
所述视频存储装置还包括:
获取模块,用于获取所述第一视频对象对应的第二索引信息;所述第二索引信息包括所述第一视频对象的起始时间和终止时间;
第二创建模块,用于根据所述第二索引信息创建第二视频对象;所述第二视频对象包括预设时间段内的多个第一视频对象及每一个第一视频对象对应的所述第二索引信息。
6.根据权利要求5所述的视频存储装置,其特征在于,所述存储模块包括:
获取单元,用于获取GOP数据及与所述GOP数据对应的第一索引信息;
存储单元,用于在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,将所述第一索引信息对应的所述GOP数据存储到所述第一视频对象中。
7.根据权利要求6所述的视频存储装置,其特征在于,所述存储单元还用于:
在所述第一索引信息中的时间信息位于所述预设时间段内的情况下,判断所述第一视频对象中的GOP数据的数量是否小于预设数量;
在所述第一视频对象中的GOP数据的数量小于预设数量的情况下,将所述GOP数据存储到第一视频对象中。
8.根据权利要求7所述的视频存储装置,其特征在于,所述存储单元还用于:
在所述第一视频对象中的GOP数据的数量大于或等于预设数量的情况下,创建新的第一视频对象,并将所述GOP数据存储到所述新的第一视频对象中;
其中,所述第一视频对象对应的终止时间与所述新的第一视频对象对应的起始时间相连续。
9.一种云服务器,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-4中任一项所述的视频存储方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的视频存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910806798.1A CN112449209B (zh) | 2019-08-29 | 2019-08-29 | 视频存储方法、装置、云服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910806798.1A CN112449209B (zh) | 2019-08-29 | 2019-08-29 | 视频存储方法、装置、云服务器及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112449209A CN112449209A (zh) | 2021-03-05 |
CN112449209B true CN112449209B (zh) | 2022-06-10 |
Family
ID=74740782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910806798.1A Active CN112449209B (zh) | 2019-08-29 | 2019-08-29 | 视频存储方法、装置、云服务器及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112449209B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083573A (zh) * | 2018-10-22 | 2020-04-28 | 杭州海康威视系统技术有限公司 | 一种视频文件处理方法、装置和存储节点 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003030533A1 (fr) * | 2001-09-14 | 2003-04-10 | Sanyo Electric Co., Ltd. | Support d'enregistrement, dispositif de reproduction et dispositif d'enregistrement/reproduction |
EP2315428A1 (en) * | 2009-10-23 | 2011-04-27 | Samsung Electronics Co., Ltd. | Digital content processing apparatus and method of digital video receiver |
CN102129474B (zh) * | 2011-04-20 | 2015-02-11 | 浙江宇视科技有限公司 | 一种视频数据检索方法及其装置和系统 |
CN107979621A (zh) * | 2016-10-24 | 2018-05-01 | 杭州海康威视数字技术股份有限公司 | 一种视频文件的存储、定位播放方法及装置 |
CN108632642B (zh) * | 2017-03-16 | 2021-09-03 | 杭州海康威视数字技术股份有限公司 | 流媒体推送方法及装置 |
-
2019
- 2019-08-29 CN CN201910806798.1A patent/CN112449209B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112449209A (zh) | 2021-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107566786B (zh) | 一种获取监控视频的方法、装置及终端设备 | |
US20210160577A1 (en) | Method for playing video, electronic device and storage medium | |
CN111010614A (zh) | 一种显示直播字幕的方法、装置、服务器及介质 | |
CN101867796B (zh) | 一种视频监控的方法和设备 | |
CN108810657B (zh) | 一种设置视频封面的方法和系统 | |
US20230144483A1 (en) | Method for encoding video data, device, and storage medium | |
CN104104971A (zh) | 一种视频文件处理方法及系统 | |
CN111093094A (zh) | 视频转码方法、装置、系统及电子设备及可读存储介质 | |
CN110662017B (zh) | 一种视频播放质量检测方法和装置 | |
CN110830823B (zh) | 播放进度修正方法、装置、电子设备及可读存储介质 | |
WO2018233539A1 (zh) | 视频处理方法、计算机存储介质及设备 | |
CN112003976B (zh) | 硬编硬解测试方法及装置 | |
CN112138376A (zh) | 云游戏存档方法、装置和电子设备 | |
CN106331089A (zh) | 一种视频播放控制方法和系统 | |
CN107493486B (zh) | 一种视频播放终止的方法、系统及终端设备 | |
CN112449209B (zh) | 视频存储方法、装置、云服务器及计算机可读存储介质 | |
US20140304375A1 (en) | Moving picture file transmitting server and method of controlling operation of same | |
TWI602431B (zh) | Method and device for transmitting information | |
US8681860B2 (en) | Moving picture compression apparatus and method of controlling operation of same | |
CN111405215A (zh) | 视频存储方法、装置、云服务器和存储介质 | |
CN111436009A (zh) | 一种实时视频流传送、显示方法以及传送和播放系统 | |
CN111918074A (zh) | 直播视频故障预警方法及相关设备 | |
US20160134674A1 (en) | Communication apparatus, communication method, and program | |
CN113099270B (zh) | 文件存储方法及解码方法、装置、存储介质、电子装置 | |
CN112203050B (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 |