CN114363304B - Rtp视频流存储、播放方法及装置 - Google Patents
Rtp视频流存储、播放方法及装置 Download PDFInfo
- Publication number
- CN114363304B CN114363304B CN202111618997.3A CN202111618997A CN114363304B CN 114363304 B CN114363304 B CN 114363304B CN 202111618997 A CN202111618997 A CN 202111618997A CN 114363304 B CN114363304 B CN 114363304B
- Authority
- CN
- China
- Prior art keywords
- target
- frame
- rtp video
- fragmentation
- physical
- 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 87
- 238000013467 fragmentation Methods 0.000 claims abstract description 122
- 238000006062 fragmentation reaction Methods 0.000 claims abstract description 122
- 238000005192 partition Methods 0.000 claims description 109
- 239000012634 fragment Substances 0.000 claims description 77
- 238000004590 computer program Methods 0.000 claims description 13
- 238000007405 data analysis Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Television Signal Processing For Recording (AREA)
Abstract
本发明提供一种RTP视频流存储、播放方法及装置,其中,该方法包括:在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据和帧索引;在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区。本发明提供的RTP视频流存储、播放方法及装置,能兼顾物理磁盘IO性能及应用播放性能。
Description
技术领域
本发明涉及计算机视频技术领域,尤其涉及一种RTP视频流存储、播放方法及装置。
背景技术
视频监控以其直观、准确、及时和信息内容丰富而广泛应用于多种场合。海量视频数据的爆发性增长,给视频内容的存储及回看提出了更高的要求。
目前,监控摄像头大多数遵循国标GB28181,以及ONVIF/RTSP规范,以实时传输协议(Real-time Transport Protocol,RTP)传输视频流。以实时传输协议传输的视频流,可以称为RTP视频流。
现有视频存储方法虽然应用了切片方法,但无法兼顾存储器的物理磁盘IO性能和视频回放的实时性。
发明内容
本发明提供一种RTP视频流存储、播放方法及装置,用以解决现有技术中的无法兼顾磁盘IO性能和视频回放的实时性的缺陷,实现既兼顾磁盘的IO性能,又保证视频回放的实时性。
本发明提供一种RTP视频流存储方法,包括:
在接收到的目标RTP视频帧是关键帧的情况下,解析所述目标RTP视频帧,获取所述目标RTP视频帧的元数据和帧索引;
在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且所述目标RTP视频帧的元数据与所述首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区;
其中,所述元数据包括视频分辨率、帧率和编码类型;所述目标RTP视频帧的帧索引,用于指示所述目标RTP视频帧与所述首个关键帧之间的时间差。
根据本发明提供的一种RTP视频流存储方法,所述获取所述目标RTP视频帧的元数据和帧索引之后,还包括:
在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值且达到逻辑分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区。
根据本发明提供的一种RTP视频流存储方法,所述获取所述目标RTP视频帧的元数据和帧索引之后,还包括:
在所述目标RTP视频帧不是首个关键帧且达到物理分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片和所述当前物理分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建下一物理分片以及所述下一物理分片中的第一个逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区。
根据本发明提供的一种RTP视频流存储方法,还包括:
在接收到的所述目标RTP视频帧不是关键帧的情况下,将所述目标RTP视频帧写入所述缓冲区。
本发明还提供一种RTP视频流播放方法,包括:
接收第一客户端发送的目标逻辑分片的信息;
基于所述目标逻辑分片的信息,从所述目标逻辑分片所在物理分片的存储位置获取目标视频数据;
将封装后的所述目标视频数据发送到流媒体服务器,并向第二客户端发送所述目标视频数据的播放地址,以使得所述第二客户端基于所述播放地址,从所述流媒体服务器获取所述目标视频数据并播放。
本发明还提供一种RTP视频流存储装置,包括:
数据解析模块,用于在接收到的目标RTP视频帧是关键帧的情况下,解析所述目标RTP视频帧,获取所述目标RTP视频帧的元数据和帧索引;
分片存储模块,用于在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且所述目标RTP视频帧的元数据与所述首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区;
其中,所述元数据包括视频分辨率、帧率和编码类型;所述目标RTP视频帧的帧索引,用于指示所述目标RTP视频帧与所述首个关键帧之间的时间差。
本发明还提供一种RTP视频流播放装置,包括:
接收模块,用于接收第一客户端发送的目标逻辑分片的信息;
定位模块,用于基于所述目标逻辑分片的信息,从所述目标逻辑分片所在物理分片的存储位置获取目标视频数据;
发送模块,用于将封装后的所述目标视频数据发送到流媒体服务器,并向第二客户端发送所述目标视频数据的播放地址,以使得所述第二客户端基于所述播放地址,从所述流媒体服务器获取所述目标视频数据并播放。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述RTP视频流存储方法或播放方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述RTP视频流存储方法或播放方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述RTP视频流存储方法或播放方法的步骤。
本发明提供的RTP视频流存储、播放方法及装置,通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的RTP视频流存储方法的流程示意图之一;
图2是本发明提供的RTP视频流存储方法的流程示意图之二;
图3是本发明提供的RTP视频流播放方法的流程示意图之一;
图4是本发明提供的RTP视频流播放方法的流程示意图之二;
图5是本发明提供的RTP视频流存储装置的结构示意图;
图6是本发明提供的RTP视频流播放装置的结构示意图;
图7是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例的描述中,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性,且不涉及顺序。
在本发明实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明实施例中的具体含义。
下面结合图1至图7描述本发明提供的RTP视频流存储、播放方法及装置。
图1是本申请提供的RTP视频流存储方法的流程示意图之一。下面结合图1描述本申请实施例的RTP视频流存储方法。如图1所示,该方法包括:步骤101和步骤102。
具体地,本发明实施例提供的RTP视频流存储方法的执行主体为RTP视频流存储装置。本发明实施例提供的RTP视频流存储方法,用于获取摄像头等视频采集设备采集的RTP视频流并进行存储。
步骤101、在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据和帧索引。
其中,元数据包括视频分辨率、帧率和编码类型;目标RTP视频帧的帧索引,用于指示目标RTP视频帧与首个关键帧之间的时间差。
具体地,摄像头等视频采集设备,基于实时传输协议,向该RTP视频流存储装置发送RTP视频流。
RTP视频流由多个RTP视频帧组成。上述视频采集设备通过逐帧发送各个RTP视频帧,实现RTP视频流的发送,相应地,该RTP视频流存储装置逐帧接收RTP各个视频帧。该RTP视频流存储装置接收的当前RTP视频帧为目标RTP视频帧。
接收到目标RTP视频帧之后,可以先检测该目标RTP视频帧是否为关键帧(IDR帧)。
可以通过解析该目标RTP视频帧的数据包包头,获取包序号、时间戳以及是否为IDR帧等信息,从而确定该目标RTP视频帧是否为关键帧。
需要说明的是,本发明实施例中,每个以逻辑分片首个关键帧为存储的起点。首个关键帧,指当前逻辑分片的第一个关键帧。
在目标RTP视频帧不是关键帧且还未接收到RTP视频流的第一个关键帧的情况下,丢弃该目标RTP视频帧。
若目标RTP视频帧是关键帧,则可以解析该目标RTP视频帧,获取该目标RTP视频帧的视频分辨率、帧率和编码类型等元数据以及接收时间等,并获取该目标RTP视频帧的接收时间与首个关键帧的接收时间之间的秒数差,作为该目标RTP视频帧的帧索引。
可以理解的是,首个关键帧的帧索引为0;目标RTP视频帧的帧索引,可以指示目标RTP视频帧与首个关键帧之间的时间差。
步骤102、在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区。
具体地,本发明实施例采用物理分片与逻辑分片两重分片的方式,存储RTP视频流。一个物理分片包含多个逻辑分片,每个逻辑分片会在数据库中存储一条数据记录。
物理分片用于表明视频存储文件的大小。物理分片可以划分得较大,避免文件过小造成磁盘碎片过多,影响读取效率。逻辑分片则代表视频内容。逻辑分片可以划分得较小,逻辑分片越小,能查询到视频的时间越及时(即越接近用户的需求)。
在符合物理分片条件的情况下,关闭当前物理分片以及当前逻辑分片(该当前逻辑分片为该当前物理分片的最后一个逻辑分片),新建下一物理分片以及该下一分片的第一个逻辑分片;在符合逻辑分片条件的情况下,关闭当前物理分片,新建下一逻辑分片。
一个物理分片是一个物理文件,可以存储于本地磁盘或者分布式文件系统上。每个逻辑分片按照在物理分片中顺序写入该物理文件进行存储。
针对预先设置的逻辑分片大小,设置合适的内存缓冲区(简称“缓冲区”),需要存储的视频帧以逻辑分片为单位先存入缓冲区,然后异步分批写入磁盘(即写入物理分片),减少磁盘写入次数,提高磁盘IO性能。
可以理解的是,在目标RTP视频帧是RTP视频流的第一个关键帧的情况下,新建第一个物理分片以及该物理分片的第一个逻辑分片,将首个关键帧写入缓冲区。
在目标RTP视频帧不是首个关键帧的情况下,判断是否符合物理分片条件和逻辑分片条件。
物理分片条件可以包括当前物理分片的第一目标参数达到物理分片阈值。
第一目标参数可以为对应的视频时长和/或大小(字节数)。物理分片阈值可以根据实际需求预先设置,本发明实施例对此不进行具体限定。
示例性地,在第一目标参数为对应的视频时长的情况下,若当前物理分片对应的视频时长达到2小时(即时长对应的物理分片阈值为2小时),则可以确定满足物理分片条件;在第一目标参数可以为对应的视频时长和大小的情况下,若当前物理分片对应的视频时长达到3小时(即时长对应的物理分片阈值为3小时)或当前物理分片的大小达到1GB(即大小对应的物理分片阈值为1GB),则可以确定满足物理分片条件。
逻辑分片条件可以包括当前逻辑分片的第二目标参数达到逻辑分片阈值。
第二目标参数可以为对应的视频时长和/或大小(字节数)。
示例性地,在第二目标参数为大小的情况下,若当前逻辑分片的大小达到3M(即大小对应的逻辑分片阈值为3M),则可以确定满足逻辑分片条件;在第一目标参数可以为对应的视频时长和大小的情况下,若当前逻辑分片对应的视频时长达到1分钟(即时长对应的逻辑分片阈值为1分钟)且当前逻辑分片的大小达到10M(即大小对应的逻辑分片阈值为10M),则可以确定满足逻辑分片条件。
逻辑分片条件可以包括目标RTP视频帧的元数据与首个关键帧的元数据不同,即目标RTP视频帧与首个关键帧相比,视频分辨率、帧率和编码类型中的至少一个发生了变化。可以理解的是,逻辑分片中各关键帧的元数据相同。
可选地,可以先判断是否满足物理分片条件,在不满足物理分片条件的情况下,再判断是否满足逻辑分片条件。
可选地,判断是否满足逻辑分片条件,基于第二目标参数是否达到逻辑分片阈值进行判断的优先级,可以高于、等于或低于基于元数据是否发生变化进行判断的优先级。
可选地,可以先判断当前物理分片的第一目标参数是否达到物理分片阈值;在未达到的情况下,再判断当前逻辑分片的第二目标参数是否达到逻辑分片阈值;在未达到的情况下,再判断目标RTP视频帧的元数据与首个关键帧的元数据是否相同。
在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,说明元数据发生了变化,可以执行逻辑分片操作。
逻辑分片操作的作用在于关闭当前逻辑分片,并新建下一逻辑分片,实现对逻辑分片的切分。
执行逻辑分片操作可以包括以下操作:
将缓冲区中已缓存的各RTP视频帧写入当前物理分片,清空缓冲区,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,新建当前物理分片中的下一逻辑分片,以及将目标RTP视频帧写入清空后的缓冲区。
将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,具体可以采用任意形式的表结构实现对数据库的写入。
示例性地,一种表结构包括的字段及其说明如表1所示。
表1表结构的字段列表
数据库可以采用MySQL等轻量化的数据库,易于在标RTP视频流存储装置上部署,并且也能容易扩展部署为读写分离主从模式,提高查询效率。
可以理解的是,表1用于说明保存数据种类,实际中可以根据情况分库分表以提升性能。
需要说明的是,对于每个逻辑分片,还可以在数据库中存储物理分片的相关信息,包括所属物理分片文件地址、逻辑分片开始偏移量、逻辑分片字节数等。表1中列举的各字段对应的数据(即逻辑分片的属性),除了帧索引之外,均可以作为逻辑分片的索引,形成逻辑分片与关键帧的两级索引。
需要说明的是,对于小规模部署场景,可以采用小规模部署本地磁盘/磁阵存储各物理分片,还可以采用单实例MySQL数据库,简单易部署;对于大规模部署场景,可以采用分布式文件系统存储各物理分片,还可以普通的MySQL数据库。
本发明实施例通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
基于上述任一实施例的内容,获取目标RTP视频帧的元数据和帧索引之后,还包括:在目标RTP视频帧不是首个关键帧、未达到物理分片阈值且达到逻辑分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区。
具体地,可以先判断当前物理分片的第一目标参数是否达到物理分片阈值;在未达到的情况下,再判断当前逻辑分片的第二目标参数是否达到逻辑分片阈值;在未达到的情况下,再判断目标RTP视频帧的元数据与首个关键帧的元数据是否相同。
在目标RTP视频帧不是首个关键帧、未达到物理分片阈值且达到逻辑分片阈值的情况下,可以执行逻辑分片操作。
执行逻辑分片操作的步骤,可以参见前述实施例,此处不再赘述。
本发明实施例通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
基于上述任一实施例的内容,获取目标RTP视频帧的元数据和帧索引之后,还包括:在目标RTP视频帧不是首个关键帧且达到物理分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片和当前物理分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建下一物理分片以及下一物理分片中的第一个逻辑分片,将目标RTP视频帧写入清空后的缓冲区。
具体地,可以先判断当前物理分片的第一目标参数是否达到物理分片阈值;在未达到的情况下,再判断当前逻辑分片的第二目标参数是否达到逻辑分片阈值;在未达到的情况下,再判断目标RTP视频帧的元数据与首个关键帧的元数据是否相同。
在目标RTP视频帧不是首个关键帧且达到物理分片阈值的情况下,可以物理逻辑分片操作。
物理分片操作的作用主要在于关闭当前物理分片,并新建下一物理分片,实现对物理分片的切分。
执行物理分片操作可以包括以下操作:
将缓冲区中已缓存的各RTP视频帧写入当前物理分片,清空缓冲区,关闭当前逻辑分片和当前物理分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,新建下一物理分片以及下一物理分片中的第一个逻辑分片,更新缓存的物理分片地址(即更新为该下一物理分片的地址),以及将目标RTP视频帧写入清空后的缓冲区。
本发明实施例通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
基于上述任一实施例的内容,RTP视频流存储方法还包括:在接收到的目标RTP视频帧不是关键帧的情况下,将目标RTP视频帧写入缓冲区。
具体地,在目标RTP视频帧不是关键帧的情况下,即目标RTP视频帧是普通的I帧、P帧或B帧,不满足逻辑分片条件也不满足物理分片条件,则可以直接将目标RTP视频帧写入缓冲区。
可选地,一种全流程的RTP视频流存储方法的流程如图2所示。
本发明实施例通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
图3是本申请提供的RTP视频流播放方法的流程示意图之一。下面结合图3描述本申请实施例的RTP视频流播放方法。如图3所示,该方法包括:步骤301、步骤302和步骤303。
具体地,本发明实施例提供的RTP视频流播放方法的执行主体为RTP视频流播放装置。本发明实施例提供的RTP视频流播放方法,用于播放通过执行上述任一RTP视频存储方法实施例提供的RTP视频存储方法得到的文件(物理分片)。
可选地,该RTP视频流播放装置可以为前述RTP视频流存储装置,也可以为不同于前述RTP视频流存储装置、但存储有通过前述RTP视频存储方法得到的文件和各逻辑分片的属性的电子设备。
该RTP视频流播放装置可以封装REST API服务接口,提供视频查询与播放功能。对于小规模部署场景,可以采用REST API服务接口;对于大规模部署场景,可以采用REST API服务集群。
视频查询功能,可以提供任意视频源与任意时间段条件搜索,返回该视频源有录像的时间段信息。
视频播放功能,可以提供某个视频源任意时间段的视频回放功能,可跨逻辑分片和物理分片播放,该功能需要配合流媒体服务器使用。
步骤301、接收第一客户端发送的目标逻辑分片的信息。
具体地,用户可以通过第一客户端向该RTP视频流播放装置发送目标逻辑分片的信息,该RTP视频流播放装置可以接收该目标逻辑分片的信息。
目标逻辑分片,可以为用户希望播放的第一个播放帧所在的逻辑分片。
步骤302、基于目标逻辑分片的信息,从目标逻辑分片所在物理分片的存储位置获取目标视频数据。
具体地,基于目标逻辑分片的信息,以及数据库中存储的目标逻辑分片的属性,获取目标逻辑分片中各关键帧的帧索引、物理分片偏移和物理分片地址。
基于第一个播放帧、目标逻辑分片中各关键帧的帧索引和物理分片偏移,可以获取第一个播放帧在目标逻辑分片所在(即所属)物理分片的偏移量。
基于目标逻辑分片的物理分片地址,载入目标逻辑分片所在物理分片,获取以第一个播放帧为起始的目标视频数据。
步骤303、将封装后的目标视频数据发送到流媒体服务器,并向第二客户端发送目标视频数据的播放地址,以使得第二客户端基于播放地址,从流媒体服务器获取目标视频数据并播放。
具体地,封装目标视频数据,将封装后的目标视频数据发送到流媒体服务器,得到目标视频数据的播放地址。
向第二客户端返回目标视频数据的播放地址。第二客户端可以通过访问该播放地址,播放目标视频数据。
图4是本申请提供的RTP视频流播放方法的流程示意图之二。如图4所示,RTP视频流播放方法可以包括以下步骤:
步骤401、传入视频的开始时间和结束时间。
步骤402、Sql查询时间范围内的逻辑分片。
时间范围,指由步骤401中视频的开始时间和结束时间界定的时间范围。
通过第一客户端查询时间范围内的逻辑分片,指定第一个播放帧。
步骤403、加载第一个逻辑分片的帧索引。
第一个播放帧所在的逻辑分片为待播放的第一个逻辑分片。
对于待播放的第一个逻辑分片,加载该逻辑分片中各关键帧的帧索引。
步骤404、计算第一个逻辑分片的开始时间与播放开始时间之间的时间差。
播放开始时间,指第一个播放帧对应的时间。
步骤405、基于帧索引得到第一个播放帧对于物理分片的偏移量。
基于第一个逻辑分片的帧索引以及第一个逻辑分片的开始时间与播放开始时间之间的时间差,获取第一个播放帧在第一个逻辑分片所在物理分片的偏移量。
步骤406、载入物理分片并从读取数据,封装后发送到流媒体服务器。
载入第一个逻辑分片所在物理分片,获取以第一个播放帧为起始的目标视频数据,封装目标视频数据,将封装后的目标视频数据发送到流媒体服务器。
步骤407、返回流媒体服务器播放地址。
向第二客户端返回流媒体服务器上目标视频数据的播放地址。
本发明实施例通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能。
下面对本发明提供的RTP视频流存储装置进行描述,下文描述的RTP视频流存储装置与上文描述的RTP视频流存储方法可相互对应参照。
图5是本发明提供的RTP视频流存储装置的结构示意图。基于上述任一实施例的内容,如图5所示,该装置包括数据解析模块501和分片存储模块502,其中:
数据解析模块501,用于在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据;
分片存储模块502,用于在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已存储的各RTP视频帧写入当前物理分片中的当前逻辑分片,清空缓冲区,关闭当前逻辑分片,将当前逻辑分片存储于当前物理分片,将当前逻辑分片中各关键帧的帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区;
其中,元数据包括视频分辨率、帧率和编码类型;目标RTP视频帧的帧索引,用于指示目标RTP视频帧与首个关键帧之间的时间差。
具体地,数据解析模块501和分片存储模块502电连接。
数据解析模块501接收到目标RTP视频帧之后,可以先检测该目标RTP视频帧是否为关键帧;若目标RTP视频帧是关键帧,则可以解析该目标RTP视频帧,获取该目标RTP视频帧的视频分辨率、帧率和编码类型等元数据以及接收时间等,并获取该目标RTP视频帧的接收时间与首个关键帧的接收时间之间的秒数差,作为该目标RTP视频帧的帧索引。
分片存储模块502在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,说明元数据发生了变化,可以执行逻辑分片操作。
可选地,分片存储模块502,可以还用于在目标RTP视频帧不是首个关键帧、未达到物理分片阈值且达到逻辑分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区。
可选地,分片存储模块502,可以还用于在目标RTP视频帧不是首个关键帧且达到物理分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片和当前物理分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建下一物理分片以及下一物理分片中的第一个逻辑分片,将目标RTP视频帧写入清空后的缓冲区。
可选地,分片存储模块502,可以还用于在接收到的目标RTP视频帧不是关键帧的情况下,将目标RTP视频帧写入缓冲区。
本发明实施例提供的RTP视频流存储装置,用于执行本发明上述RTP视频流存储方法,其实施方式与本发明提供的RTP视频流存储方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
该RTP视频流存储装置用于前述各实施例的RTP视频流存储方法。因此,在前述各实施例中的RTP视频流存储方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
本发明实施例通过使用物理分片和逻辑分片双重分片存储RTP视频流,能兼顾物理磁盘IO性能及应用播放性能;通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能;通过磁盘写入设置缓冲区异步写入,能减少磁盘IO次数,能提高磁盘写入性能。
下面对本发明提供的RTP视频流存储装置进行描述,下文描述的RTP视频流存储装置与上文描述的RTP视频流存储方法可相互对应参照。
图6是本发明提供的RTP视频流播放装置的结构示意图。基于上述任一实施例的内容,如图6所示,该装置包括接收模块601、定位模块602和发送模块603,其中:
接收模块601,用于接收第一客户端发送的目标逻辑分片的信息;
定位模块602,用于基于目标逻辑分片的信息,从目标逻辑分片所在物理分片的存储位置获取目标视频数据;
发送模块603,用于将封装后的目标视频数据发送到流媒体服务器,并向第二客户端发送目标视频数据的播放地址,以使得第二客户端基于播放地址,从流媒体服务器获取目标视频数据并播放。
具体地,接收模块601、定位模块602和发送模块603顺次电连接。
用户可以通过第一客户端向该RTP视频流播放装置发送目标逻辑分片的信息,接收模块601可以接收该目标逻辑分片的信息。
定位模块602可以基于目标逻辑分片的信息,以及数据库中存储的目标逻辑分片的属性,获取目标逻辑分片中各关键帧的帧索引、物理分片偏移和物理分片地址;基于第一个播放帧、目标逻辑分片中各关键帧的帧索引和物理分片偏移,可以获取第一个播放帧在目标逻辑分片所在物理分片的偏移量;基于目标逻辑分片的物理分片地址,载入目标逻辑分片所在物理分片,获取以第一个播放帧为起始的目标视频数据。
发送模块603可以封装目标视频数据,将封装后的目标视频数据发送到流媒体服务器,得到目标视频数据的播放地址。
发送模块603还可以向第二客户端返回目标视频数据的播放地址。第二客户端可以通过访问该播放地址,播放目标视频数据。
本发明实施例提供的RTP视频流播放装置,用于执行本发明上述RTP视频流存储方法,其实施方式与本发明提供的RTP视频流存储方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
该RTP视频流播放装置用于前述各实施例的RTP视频流存储方法。因此,在前述各实施例中的RTP视频流存储方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
本发明实施例通过逻辑分片与关键帧的两级索引,能提高播放文件的定位速度,能降低播放时延;通过使用物理分片、逻辑分片、关键帧等多维度条件进行分片,能保证单个分片的视频完整性,能提高播放的容错性能。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行RTP视频流存储方法,该方法包括:在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据和帧索引;在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区;其中,元数据包括视频分辨率、帧率和编码类型;目标RTP视频帧的帧索引,用于指示目标RTP视频帧与首个关键帧之间的时间差;或者执行RTP视频流播放方法,该方法包括:接收第一客户端发送的目标逻辑分片的信息;基于目标逻辑分片的信息,从目标逻辑分片所在物理分片的存储位置获取目标视频数据;将封装后的目标视频数据发送到流媒体服务器,并向第二客户端发送目标视频数据的播放地址,以使得第二客户端基于播放地址,从流媒体服务器获取目标视频数据并播放。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的电子设备中的处理器710可以调用存储器730中的逻辑指令,其实施方式与本申请提供的RTP视频流存储方法或播放方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的RTP视频流存储方法,该方法包括:在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据和帧索引;在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区;其中,元数据包括视频分辨率、帧率和编码类型;目标RTP视频帧的帧索引,用于指示目标RTP视频帧与首个关键帧之间的时间差;或者执行RTP视频流播放方法,该方法包括:接收第一客户端发送的目标逻辑分片的信息;基于目标逻辑分片的信息,从目标逻辑分片所在物理分片的存储位置获取目标视频数据;将封装后的目标视频数据发送到流媒体服务器,并向第二客户端发送目标视频数据的播放地址,以使得第二客户端基于播放地址,从流媒体服务器获取目标视频数据并播放。
本申请实施例提供的计算机程序产品被执行时,实现上述RTP视频流存储方法或播放方法,其具体的实施方式与前述方法的实施例中记载的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的RTP视频流存储方法,该方法包括:在接收到的目标RTP视频帧是关键帧的情况下,解析目标RTP视频帧,获取目标RTP视频帧的元数据和帧索引;在目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且目标RTP视频帧的元数据与首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建当前物理分片中的下一逻辑分片,将目标RTP视频帧写入清空后的缓冲区;其中,元数据包括视频分辨率、帧率和编码类型;目标RTP视频帧的帧索引,用于指示目标RTP视频帧与首个关键帧之间的时间差;或者执行RTP视频流播放方法,该方法包括:接收第一客户端发送的目标逻辑分片的信息;基于目标逻辑分片的信息,从目标逻辑分片所在物理分片的存储位置获取目标视频数据;将封装后的目标视频数据发送到流媒体服务器,并向第二客户端发送目标视频数据的播放地址,以使得第二客户端基于播放地址,从流媒体服务器获取目标视频数据并播放。
本申请实施例提供的非暂态计算机可读存储介质上存储的计算机程序被执行时,实现上述RTP视频流存储方法或播放方法,其具体的实施方式与前述方法的实施例中记载的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种RTP视频流存储方法,其特征在于,包括:
在接收到的目标RTP视频帧是关键帧的情况下,解析所述目标RTP视频帧,获取所述目标RTP视频帧的元数据和帧索引;
在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且所述目标RTP视频帧的元数据与所述首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区;
其中,所述元数据包括视频分辨率、帧率和编码类型;所述目标RTP视频帧的帧索引,用于指示所述目标RTP视频帧与所述首个关键帧之间的时间差。
2.根据权利要求1所述的RTP视频流存储方法,其特征在于,所述获取所述目标RTP视频帧的元数据和帧索引之后,还包括:
在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值且达到逻辑分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区。
3.根据权利要求1所述的RTP视频流存储方法,其特征在于,所述获取所述目标RTP视频帧的元数据和帧索引之后,还包括:
在所述目标RTP视频帧不是首个关键帧且达到物理分片阈值的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片和所述当前物理分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建下一物理分片以及所述下一物理分片中的第一个逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区。
4.根据权利要求1至3任一所述的RTP视频流存储方法,其特征在于,还包括:
在接收到的所述目标RTP视频帧不是关键帧的情况下,将所述目标RTP视频帧写入所述缓冲区。
5.一种RTP视频流播放方法,其特征在于,用于播放通过权利要求1至4任一项所述的RTP视频流存储方法得到的文件,包括:
接收第一客户端发送的目标逻辑分片的信息;
基于所述目标逻辑分片的信息,从所述目标逻辑分片所在物理分片的存储位置获取目标视频数据;
将封装后的所述目标视频数据发送到流媒体服务器,并向第二客户端发送所述目标视频数据的播放地址,以使得所述第二客户端基于所述播放地址,从所述流媒体服务器获取所述目标视频数据并播放。
6.一种RTP视频流存储装置,其特征在于,包括:
数据解析模块,用于在接收到的目标RTP视频帧是关键帧的情况下,解析所述目标RTP视频帧,获取所述目标RTP视频帧的元数据和帧索引;
分片存储模块,用于在所述目标RTP视频帧不是首个关键帧、未达到物理分片阈值、未达到逻辑分片阈值且所述目标RTP视频帧的元数据与所述首个关键帧的元数据不同的情况下,将缓冲区中已缓存的各RTP视频帧写入当前物理分片,关闭当前逻辑分片,将所述当前逻辑分片中各关键帧的元数据和帧索引写入数据库,并新建所述当前物理分片中的下一逻辑分片,将所述目标RTP视频帧写入清空后的所述缓冲区;
其中,所述元数据包括视频分辨率、帧率和编码类型;所述目标RTP视频帧的帧索引,用于指示所述目标RTP视频帧与所述首个关键帧之间的时间差。
7.一种RTP视频流播放装置,其特征在于,用于播放通过权利要求1至4任一项所述的RTP视频流存储方法得到的文件,包括:
接收模块,用于接收第一客户端发送的目标逻辑分片的信息;
定位模块,用于基于所述目标逻辑分片的信息,从所述目标逻辑分片所在物理分片的存储位置获取目标视频数据;
发送模块,用于将封装后的所述目标视频数据发送到流媒体服务器,并向第二客户端发送所述目标视频数据的播放地址,以使得所述第二客户端基于所述播放地址,从所述流媒体服务器获取所述目标视频数据并播放。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述RTP视频流存储方法的步骤,或者如权利要求5项所述RTP视频流播放方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述RTP视频流存储方法的步骤,或者如权利要求5项所述RTP视频流播放方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111618997.3A CN114363304B (zh) | 2021-12-27 | 2021-12-27 | Rtp视频流存储、播放方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111618997.3A CN114363304B (zh) | 2021-12-27 | 2021-12-27 | Rtp视频流存储、播放方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114363304A CN114363304A (zh) | 2022-04-15 |
CN114363304B true CN114363304B (zh) | 2024-04-19 |
Family
ID=81103072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111618997.3A Active CN114363304B (zh) | 2021-12-27 | 2021-12-27 | Rtp视频流存储、播放方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114363304B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114697712B (zh) * | 2022-05-16 | 2022-09-23 | 浙江华创视讯科技有限公司 | 一种媒体流的下载方法、装置、设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137027A (zh) * | 2006-11-23 | 2008-03-05 | 中兴通讯股份有限公司 | 一种媒体分片存储的方法 |
CN102238434A (zh) * | 2011-07-22 | 2011-11-09 | 中兴通讯股份有限公司 | 一种iptv流媒体文件虚拟分段和使用的方法及系统 |
WO2012146098A1 (zh) * | 2011-04-27 | 2012-11-01 | 中兴通讯股份有限公司 | 一种流媒体存储、播放方法及相应系统 |
CN103348690A (zh) * | 2011-11-26 | 2013-10-09 | 华为技术有限公司 | 一种视频处理的方法及装置 |
CN103731678A (zh) * | 2013-12-30 | 2014-04-16 | 世纪龙信息网络有限责任公司 | 视频文件的并行转码方法及系统 |
WO2015058617A1 (zh) * | 2013-10-23 | 2015-04-30 | 腾讯科技(深圳)有限公司 | 视频帧存储管理方法、视频服务器及通信系统 |
CN106101595A (zh) * | 2016-07-12 | 2016-11-09 | 中科创达软件股份有限公司 | 一种分段录像数据处理方法、系统及终端 |
WO2017035804A1 (zh) * | 2015-09-02 | 2017-03-09 | 深圳好视网络科技有限公司 | 一种传送流切片方法及装置 |
CN108696773A (zh) * | 2017-04-11 | 2018-10-23 | 上海谦问万答吧云计算科技有限公司 | 一种实时视频的传输方法及装置 |
CN110267117A (zh) * | 2019-06-11 | 2019-09-20 | 网宿科技股份有限公司 | 一种流媒体数据的处理方法及流媒体处理服务器 |
CN110636346A (zh) * | 2019-09-19 | 2019-12-31 | 北京达佳互联信息技术有限公司 | 一种码率自适应切换方法、装置、电子设备及存储介质 |
CN110913272A (zh) * | 2019-12-03 | 2020-03-24 | 腾讯科技(深圳)有限公司 | 视频播放方法、装置、计算机可读存储介质和计算机设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10225583B2 (en) * | 2014-08-01 | 2019-03-05 | Realnetworks, Inc. | Video-segment identification systems and methods |
-
2021
- 2021-12-27 CN CN202111618997.3A patent/CN114363304B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137027A (zh) * | 2006-11-23 | 2008-03-05 | 中兴通讯股份有限公司 | 一种媒体分片存储的方法 |
WO2012146098A1 (zh) * | 2011-04-27 | 2012-11-01 | 中兴通讯股份有限公司 | 一种流媒体存储、播放方法及相应系统 |
CN102238434A (zh) * | 2011-07-22 | 2011-11-09 | 中兴通讯股份有限公司 | 一种iptv流媒体文件虚拟分段和使用的方法及系统 |
CN103348690A (zh) * | 2011-11-26 | 2013-10-09 | 华为技术有限公司 | 一种视频处理的方法及装置 |
WO2015058617A1 (zh) * | 2013-10-23 | 2015-04-30 | 腾讯科技(深圳)有限公司 | 视频帧存储管理方法、视频服务器及通信系统 |
CN103731678A (zh) * | 2013-12-30 | 2014-04-16 | 世纪龙信息网络有限责任公司 | 视频文件的并行转码方法及系统 |
WO2017035804A1 (zh) * | 2015-09-02 | 2017-03-09 | 深圳好视网络科技有限公司 | 一种传送流切片方法及装置 |
CN106101595A (zh) * | 2016-07-12 | 2016-11-09 | 中科创达软件股份有限公司 | 一种分段录像数据处理方法、系统及终端 |
CN108696773A (zh) * | 2017-04-11 | 2018-10-23 | 上海谦问万答吧云计算科技有限公司 | 一种实时视频的传输方法及装置 |
CN110267117A (zh) * | 2019-06-11 | 2019-09-20 | 网宿科技股份有限公司 | 一种流媒体数据的处理方法及流媒体处理服务器 |
CN110636346A (zh) * | 2019-09-19 | 2019-12-31 | 北京达佳互联信息技术有限公司 | 一种码率自适应切换方法、装置、电子设备及存储介质 |
CN110913272A (zh) * | 2019-12-03 | 2020-03-24 | 腾讯科技(深圳)有限公司 | 视频播放方法、装置、计算机可读存储介质和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114363304A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11836385B2 (en) | High speed data packet flow processing | |
US8666985B2 (en) | Hardware accelerated application-based pattern matching for real time classification and recording of network traffic | |
EP3211834B1 (en) | Fast packet retrieval based on flow id and metadata | |
CN102244758A (zh) | 一种基于录像文件的数据获取方法和设备 | |
CN104156400B (zh) | 一种海量网络流数据的存储方法及装置 | |
CN112702259B (zh) | 延迟消息推送方法、装置及消息中间件 | |
US11496596B2 (en) | Streaming network monitoring caching infrastructure | |
CN114363304B (zh) | Rtp视频流存储、播放方法及装置 | |
CN114647698A (zh) | 数据同步方法、装置及计算机存储介质 | |
CN112650755A (zh) | 数据存储方法、查询数据的方法、数据库、以及可读介质 | |
US20140013007A1 (en) | Access log management method | |
CN110381128B (zh) | 一种适用于流媒体文件的上传方法和云存储模型 | |
CN107659626B (zh) | 面向临时元数据的分离存储方法 | |
US8761579B2 (en) | Video data processing apparatus and file management method | |
CN102611716B (zh) | 一种传输媒体文件的方法、装置及系统 | |
CN110825940B (zh) | 网络数据包存储和查询方法 | |
CN111506747A (zh) | 文件解析方法、装置、电子设备及存储介质 | |
CN116506702A (zh) | 一种数据处理和同步方法、系统、设备及存储介质 | |
CN108683643A (zh) | 一种基于流式处理的数据脱敏系统及其脱敏方法 | |
CN112181670B (zh) | 进程间通讯方法及装置和Linux设备 | |
US20160035388A1 (en) | Video chunking for robust, progressive uploading | |
CN110377584A (zh) | 一种基于元数据的数据结构版本兼容的存取方法及装置 | |
CN107247632A (zh) | 非结构化数据、碎片化数据汇聚系统 | |
CN117435670A (zh) | 异构数据源同步方法、系统、电子设备及存储介质 | |
CN117472947A (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 |