CN108769789A - 一种基于切片的rtp流媒体存储、读取方法及装置 - Google Patents

一种基于切片的rtp流媒体存储、读取方法及装置 Download PDF

Info

Publication number
CN108769789A
CN108769789A CN201810553550.4A CN201810553550A CN108769789A CN 108769789 A CN108769789 A CN 108769789A CN 201810553550 A CN201810553550 A CN 201810553550A CN 108769789 A CN108769789 A CN 108769789A
Authority
CN
China
Prior art keywords
rtp
slice
slices
information
index file
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
CN201810553550.4A
Other languages
English (en)
Other versions
CN108769789B (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.)
Hytera Communications Corp Ltd
Original Assignee
Hytera Communications Corp Ltd
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 Hytera Communications Corp Ltd filed Critical Hytera Communications Corp Ltd
Priority to CN201810553550.4A priority Critical patent/CN108769789B/zh
Publication of CN108769789A publication Critical patent/CN108769789A/zh
Application granted granted Critical
Publication of CN108769789B publication Critical patent/CN108769789B/zh
Active 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请提供了一种基于切片的RTP流媒体存储、读取方法及装置,该存储方法具体包括接收基于RTP切片的RTP流文件,其中,该RTP切片包括切片数据和第一描述信息;生成该RTP切片的存储关联描述信息,并将该存储关联描述信息添加到第一描述信息中,得到该RTP切片的第二描述信息。存储该RTP切片对应的第二描述信息及切片数据;以及,根据该RTP切片的第二描述信息生成索引文件。以便快速读取某个RTP切片,大大缩短了查找RTP切片所需的时间,提高RTP切片的读取速度。

Description

一种基于切片的RTP流媒体存储、读取方法及装置
技术领域
本发明属于流媒体技术领域,尤其涉及一种基于切片的RTP流媒体存储、读取方法及装置。
背景技术
实时传输协议(Real-time Transport Protocol,RTP)是一种实时流媒体协议。RTP协议广泛应用于流媒体相关的通讯和娱乐,包括电话、视频会议、视频监控、电视和基于网络的一键通业务(类似对讲机的通话)。
由于目前的RTP流媒体协议中没有关于如何基于切片进行存储和定位RTP流文件的统一定义,很难实现基于RTP流媒体的切片技术方案。而相关技术中,成熟的切片技术例如,HLS(HTTP Live Streaming)、MPEG-DASH、HDS基本都是基于HTTP协议。目前尚未针对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切片的存储位置;
根据所述存储位置得到所述存储关联描述信息。
可选地,所述方法还包括:对所述索引文件进行加密存储。
可选地,所述索引文件采用TLV格式存储。
可选地,所述第一描述信息包括切片关联信息和切片属性信息,所述切片关联信息表征同一个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切片的存储关联描述信息,并将该存储关联描述信息添加到第一描述信息中,得到该RTP切片的第二描述信息。存储该RTP切片对应的第二描述信息及切片数据;以及,根据该RTP切片的第二描述信息生成索引文件。以便快速读取某个RTP切片,大大缩短了查找RTP切片所需的时间,提高RTP切片的读取速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例一种基于切片的RTP流媒体存储方法的流程图;
图2是本申请实施例一种RTP切片的文件格式示意图;
图3是本申请实施例一种索引文件与RTP文件之间的关系示意图;
图4是本申请实施例一种基于切片的RTP流媒体读取方法的流程图;
图5是本申请实施例一种查找RTP切片过程的流程图;
图6是本申请实施例一种基于切片的RTP流媒体存储装置的框图;
图7是本申请实施例一种基于切片的RTP流媒体读取装置的框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,示出了本申请实施例一种基于切片的RTP流媒体存储方法的流程图,该方法应用于服务器中,如图1所示,该方法可以包括以下步骤:
S110,接收基于RTP切片的RTP流文件。
服务器接收RTP流生成方发送的基于RTP切片的RTP流文件,即,RTP流生成方将RTP流分割成一系列RTP切片。生成的RTP切片包括切片数据和第一描述信息。切片数据是指RTP切片的内容数据,即,多个RTP数据包。第一描述信息用于表征RTP切片之间的关联关系。
在本申请一种可能的应用场景中,同一时刻只需处理一个RTP流,例如,双方通话,此种应用场景下,,第一描述信息包括切片关联信息、切片属性信息。
其中,切片关联信息表征同一个RTP流内不同RTP切片之间的关联关系,例如,前驱片段、当前片段和后继片段;切片属性信息表征RTP切片自身属性,例如,切片大小、包数、同步时间戳、时长、名称等。
在本申请的另一种可能的应用场景中,同一时刻需要处理多个RTP流,例如,多方通话、视频会议等,此种应用场景下第一描述信息不仅包括切片关联信息、切片属性信息还包括流关联信息;
流关联信息表征不同RTP流之间的关联关系,例如,复合关联、同步关联、自适应关联。
请参见图2,示出了本申请实施例一种RTP切片的文件格式示意图,如图2所示,每一个RTP流由多个独立的RTP切片连接而成,每个RTP切片独立解码。
每一个RTP切片包括描述区和一个或多个RTP独立解码单元,其中,描述区是附加在RTP切片数据前面的独立索引包,具有特定的RTP载荷类型。该描述区包括流关联描述区、切片关联描述区和切片属性描述区;每一个RTP独立解码单元包括一个或多个RTP数据包,该一个或多个RTP独立解码单元即上述的切片数据。
其中,流关联描述区存储流关联信息,用于描述当前RTP流与哪些RTP流之间的存在哪种关联类型,关联类型包括复合、同步和自适应;切片关联描述区存储切片关联信息,用于描述当前RTP切片的1-2个前驱切片和1个后继切片;切片属性描述区用于描述当前RTP切片的切片属性信息,包括切片大小、切片名称、切片类型、切片序列号、时间戳、加密信息等。传输过程要求数据包尽量精简,因此,该描述区内的信息尽量精简。
在本申请的一个实施例中,RTP切片的时间戳实现统一定义,该时间戳可以是相对时间或绝对时间。其中,绝对时间和相对时间都基于相同的时间基准,以保证相关联的各个RTP流的时间戳保持一致。
切片关联信息将一系列RTP切片串联形成基于切片的RTP流媒体,而且,各个RTP切片之间独立解码,即,同一个RTP流中可以有不同媒体格式、解码参数等的RTP切片,不影响传输、播放。
流关联信息将多个基于RTP切片的RTP流关联形成复合RTP流,能够将具有一定关系的多个RTP流关联传输、关联存储、关联定位、关联播放、关联加密等。例如,同源RTP流同步关联,可定义唇音同步、主辅流同步等。
S120,生成该RTP切片的存储关联描述信息。
存储关联描述信息表征与存储该RTP切片相关联的信息。在本申请的一个实施例中,该存储关联描述信息即该RTP切片的存储位置信息。
在接收到RTP流之后该RTP流的存储位置就能够确定,例如,可以按照预先配置的存储位置顺序进行存储。通常,同一个RTP流中的RTP切片存储在一个文件中,因此,在存储RTP切片之前能够确定该RTP切片的存储位置。
S130,将该存储关联描述信息添加到RTP切片的第一描述信息中,得到第二描述信息。
将上一步骤生成的该RTP切片对应的存储关联描述信息添加到该RTP切片的第一描述信息中,得到该RTP切片对应的第二描述信息。
S140,存储与该RTP切片对应的第二描述信息及切片数据。
将该RTP切片对应的第二描述信息及切片数据存储到服务器中的相应存储空间中。
在本申请的一个实施例中,该第二描述信息和切片数据可以分开存储,例如,每一个RTP切片的第二描述信息均存储在第一存储空间内,切片数据均存储在第二存储空间内。
在本申请的另一个实施例中,同一RTP切片对应的描述信息和切片数据存储在同一存储空间内。
存储RTP切片时,以图2所示的格式进行存储,将同一个RTP流的RTP切片存储在同一个文件中。
RTP切片中包含切片数据和对应的描述信息,从而将码流与业务关联起来。该描述信息中包含RTP流的名称、类型、事件、RTP流间的关联关系;流的事件表示某种业务,流间的关联关系反应业务上的关系。
本实施例中,在存储RTP切片之前就能获得存储关联信息,然后,根据该存储关联信息生成第二描述信息。
在本申请的其它实施例中,存储关联信息可以在存储RTP切片之后生成,然后,再根据存储关联信息生成第二描述信息。
S150,根据该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流所涉及的事件、切片索引文件的存储位置等。
请参见图3,示出了本申请实施例一种索引文件与RTP切片之间的关系示意图。
如图3所示,一个RTP流包括n个RTP切片,每一个RTP流对应的切片索引文件用于记录该RTP流内各个RTP切片的信息,例如,流1对应的切片索引文件即流1切片索引,流2对应的切片索引文件即流2切片索引,流3对应的切片索引文件即流3切片索引。总索引文件即图中的总索引,用于定位RTP流。然后,利用该RTP流的切片索引文件定位具体的RTP切片。
在切片索引文件和总索引文件中存储了附加描述信息,可以表示RTP切片的存储位置和RTP流的存储位置等,以便后续快速、准确地读取RTP切片。
在本申请的一个优选实施例中,切片索引文件和总索引文件采用TLV格式存储,格式简单高效且清晰易懂。TLV是一种可变的格式,T是Type(类型)的缩写,L是Length(长度)的缩写,V是Value(值)的缩写。Type字段是关于标签和编码格式的信息;Length字段是定义数值的长度;Value字段表示实际的数值。
在本申请的另一个优选实施例中,切片索引文件和总索引文件可以加密存储从而对敏感信息进行加密保护。
需要说明的是,RTP切片、切片索引文件和总索引文件可以是磁盘文件、文件中的数据块;存储位置采用URL表达,URL可以是相对路径或绝对路径,即,RTP切片全网可用,因此可以分布式存储。
路径可以是相对路径、绝对路径或者是网络上的一个URL,即,RTP切片全网可用,可以分布式存储也可以实现RTP流的端到端传输。
本实施例提供的基于切片的RTP流媒体存储方法,接收基于RTP切片的RTP流,RTP切片包括切片数据和第一描述信息;生成该RTP切片的存储关联描述信息,并将该存储关联描述信息添加到第一描述信息中,得到该RTP切片的第二描述信息。存储该RTP切片对应的第二描述信息及切片数据;以及,根据该RTP切片的第二描述信息生成索引文件。以便快速读取某个RTP切片,大大缩短了查找RTP切片所需的时间,提高RTP切片的读取速度。
请参见图4,示出了本申请实施例一种基于切片的RTP流媒体读取方法的流程图,该方法应用于服务器中,服务器利用图1所示的方法存储RTP流媒体之后,利用本实施例提供的读取方法读取RTP切片。
如图4所示,该读取方法可以包括以下步骤:
S210,获取切片搜索信息。
该切片搜索信息包括RTP流信息和RTP切片信息中的至少一个。通常,RTP切片的读取过程是渐进的,先进行粗略定位,再在粗略定位结果中进行精确定位。因此,要定位一个RTP切片通常需要不止一个切片搜索信息才能实现精确定位。
S220,利用索引文件查找与该切片搜索信息相匹配的RTP切片的存储位置。
在本申请的一个实施例中,索引文件包括切片索引文件和总索引文件;如图5所示,查找RTP切片的过程可以包括以下步骤:
S221,利用总索引文件查找与切片搜索信息中的RTP流信息相匹配的切片索引文件的存储位置。
定位RTP流的搜索信息可以包括总索引文件中存储的一个或多个索引项,例如,流名称、流类型、流长度、事件。
S222,利用该切片索引文件查找到与切片搜索信息中的RTP切片信息相匹配的目标RTP切片的存储位置。
定位RTP切片的搜索信息可以包括切片索引文件中存储的一个或多个索引项,例如,切片名称、切片类型、时间等。
S230,读取该存储位置对应存储空间所存储的RTP切片文件。
本实施例提供的基于切片的RTP流媒体读取方法,获取切片搜索信息,然后,利用总索引文件快速定位切片索引文件的位置,然后,利用定位得到的切片索引文件快速定位RTP切片,大大缩短了查找RTP切片所需的时间,提高了读取RTP切片的效率。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
相应于上述的基于切片的RTP流媒体存储方法实施例,本申请还提供了基于切片的RTP流媒体存储装置实施例。
请参见图6,示出了本申请实施例一种基于切片的RTP流媒体存储装置的框图,该装置应用于服务器中。如图6所示,该装置包括:第一获取模块110、第一信息生成模块120、第二信息生成模块130、存储模块140和索引生成模块150。
第一获取模块110,用于获取基于RTP切片的RTP流文件。
RTP切片包括切片数据和第一描述信息,所述第一描述信息包括用于表征所述RTP切片属性的信息。
第一信息生成模块120,用于生成每一RTP切片的存储关联描述信息,该存储关联描述信息表征与存储RTP切片相关联的信息。
在本申请一个可能的实施例中,第一信息生成模块120具体用于:
确定用于存储所述RTP切片的存储位置;以及,根据该存储位置得到存储关联描述信息。
第二信息生成模块130,用于将RTP切片的存储关联描述信息添加到RTP切片对应的第一描述信息中,得到RTP切片对应的第二描述信息。
存储模块140,用于存储与RTP切片对应的第二描述信息及切片数据。
索引生成模块150,用于根据RTP切片的第二描述信息生成能够定位RTP切片的索引文件。
在本申请一个可能的实施例中,索引生成模块150具体用于:
根据RTP切片对应的第二描述信息生成RTP切片对应的索引项;
将索引项存储到RTP切片所属RTP流的切片索引文件中,切片索引文件包括RTP切片的切片名称、切片类型、切片长度、切片存储位置、切片序列号、切片大小、流时间和/或流来源。
根据各个RTP流对应的切片索引文件生成总索引文件,总索引文件包括RTP流名称、RTP流类型、RTP流长度和/或RTP流涉及的事件及切片索引文件的存储位置。
在本申请的一个优选实施例中,生成索引文件后,对该索引文件进行加密存储,提高数据的安全性。
本实施例提供的基于切片的RTP流媒体存储装置,接收基于RTP切片的RTP流文件,其中,该RTP切片包括切片数据和第一描述信息;生成该RTP切片的存储关联描述信息,并将该存储关联描述信息添加到第一描述信息中,得到该RTP切片的第二描述信息。存储该RTP切片对应的第二描述信息及切片数据;以及,根据该RTP切片的第二描述信息生成索引文件。以便快速读取某个RTP切片,大大缩短了查找RTP切片所需的时间,提高RTP切片的读取速度。
相应于上述的基于切片的RTP流媒体读取方法实施例,本申请还提供了基于切片的RTP流媒体读取装置实施例。
请参见图7,示出了本申请实施例一种基于切片的RTP流媒体读取装置的框图,该装置应用于服务器中。如图7所示,该装置可以包括:获取模块210和查找模块220。
获取模块210,用于获取切片搜索信息,切片搜索信息包括RTP切片信息。
RTP切片信息可以包括上述的切片关联信息和切片属性信息。
查找模块220,用于利用索引文件查找与切片搜索信息相匹配的RTP切片的存储位置,索引文件包括能够定位RTP切片的信息。
在本申请的一个应用场景中,索引文件仅包括切片索引文件,此时,查找模块具体用于从切片索引文件中与RTP切片信息相匹配的目标RTP切片的存储位置。
在本申请的另一个应用场景中,索引文件包括切片索引文件和总索引文件,总索引文件是切片索引文件的索引。此种应用场景中,切片搜索信息包括RTP切片信息和RTP流信息。
此种应用场景下,查找模块220具体用于:利用总索引文件查找到与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切片的存储位置;
根据所述存储位置得到所述存储关联描述信息。
在本申请又一种可能的实现方式中,所述方法还包括:对所述索引文件进行加密存储。
在本申请再一种可能的实现方式中,所述索引文件采用TLV格式存储。
在本申请另一种可能的实现方式中,所述第一描述信息包括切片关联信息和切片属性信息,所述切片关联信息表征同一个RTP流内不同的RTP切片之间的关联关系,所述切片属性信息表征RTP切片自身属性的信息。
在本申请又一种可能的实现方式中,所述第一描述信息还包括用于表征不同RTP流之间的流关联信息。
在本申请再一种可能的实现方式中,每个RTP切片内的切片数据包括至少一个能够独立解码的数据包。
该计算设备中的存储器中还存储有另一种程序,该程序被处理器执行时实现以下步骤:
获取切片搜索信息,所述切片搜索信息包括RTP切片信息;
利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置,所述索引文件包括能够定位所述RTP切片的信息。
在本申请一种可能的实现方式中,所述索引文件包括切片索引文件;
所述利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置包括:
从切片索引文件中查找与所述RTP切片信息相匹配的目标RTP切片的存储位置。
在本申请另一种可能的实现方式中,所述索引文件包括切片索引文件和总索引文件;所述切片搜索信息包括RTP流信息和RTP切片信息;
所述利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置,包括:
利用所述总索引文件查找到与所述切片搜索信息中的RTP流信息相匹配的切片索引文件的存储位置;
根据所述切片索引文件的存储位置读取目标切片索引文件;
利用所述目标切片索引文件查找到与所述切片搜索信息中的RTP切片信息相匹配的目标RTP切片的存储位置。
本申请还提供了一种计算设备可执行的存储介质,该存储介质中存储有程序,该程序由计算设备执行时实现上述的基于切片的RTP流媒体存储方法及基于切片的RTP流媒体读取方法。
本文中的存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM),存储器包括至少一个存储芯片。
处理器中包含内核,由内核取存储器中调取相应的程序,内核可以设置一个或以上。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (15)

1.一种基于切片的RTP流媒体存储方法,其特征在于,包括:
获取基于RTP切片的RTP流文件,所述RTP切片包括切片数据和第一描述信息,所述第一描述信息包括用于表征所述RTP切片属性的信息;
对于每一个RTP切片执行以下步骤:
生成所述RTP切片的存储关联描述信息,所述存储关联描述信息表征与存储所述RTP切片相关联的信息;
将所述存储关联描述信息添加到所述第一描述信息中,得到所述RTP切片对应的第二描述信息;
存储与所述RTP切片对应的第二描述信息及切片数据;
根据所述RTP切片的第二描述信息生成能够定位所述RTP切片的索引文件。
2.根据权利要求1所述的方法,其特征在于,根据所述RTP切片的第二描述信息生成能够定位所述RTP切片的索引文件,包括:
根据所述RTP切片对应的第二描述信息生成所述RTP切片对应的索引项;
将所述索引项存储到所述RTP切片所属RTP流的切片索引文件中,所述切片索引文件包括所述RTP切片的切片名称、切片类型、切片长度、切片存储位置、切片序列号、切片大小、流时间和/或流来源;
根据各个RTP流对应的切片索引文件生成总索引文件,所述总索引文件包括RTP流名称、RTP流类型、RTP流长度和/或RTP流涉及的事件以及所述切片索引文件的存储位置。
3.根据权利要求1所述的方法,其特征在于,生成所述RTP切片的存储关联描述信息,包括:
确定用于存储所述RTP切片的存储位置;
根据所述存储位置得到所述存储关联描述信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:对所述索引文件进行加密存储。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述索引文件采用TLV格式存储。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述第一描述信息包括切片关联信息和切片属性信息,所述切片关联信息表征同一个RTP流内不同的RTP切片之间的关联关系,所述切片属性信息表征RTP切片自身属性的信息。
7.根据权利要求6所述的方法,其特征在于,所述第一描述信息还包括用于表征不同RTP流之间的流关联信息。
8.根据权利要求1-3任一项所述的方法,其特征在于,每个RTP切片内的切片数据包括至少一个能够独立解码的数据包。
9.一种基于切片的RTP流媒体读取方法,其特征在于,包括:
获取切片搜索信息,所述切片搜索信息包括RTP切片信息;
利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置,所述索引文件包括能够定位所述RTP切片的信息。
10.根据权利要求9所述的方法,其特征在于,所述索引文件包括切片索引文件;
所述利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置包括:
从切片索引文件中查找与所述RTP切片信息相匹配的目标RTP切片的存储位置。
11.根据权利要求9所述的方法,其特征在于,所述索引文件包括切片索引文件和总索引文件,所述切片搜索信息包括RTP流信息和RTP切片信息;
所述利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置,包括:
利用所述总索引文件查找到与所述切片搜索信息中的RTP流信息相匹配的切片索引文件的存储位置;
根据所述切片索引文件的存储位置读取目标切片索引文件;
利用所述目标切片索引文件查找到与所述切片搜索信息中的RTP切片信息相匹配的目标RTP切片的存储位置。
12.一种基于切片的RTP流媒体存储装置,其特征在于,包括:
第一获取模块,用于获取基于RTP切片的RTP流文件,所述RTP切片包括切片数据和第一描述信息,所述第一描述信息包括用于表征所述RTP切片属性的信息;
第一信息生成模块,用于生成每一所述RTP切片的存储关联描述信息,所述存储关联描述信息表征与存储所述RTP切片相关联的信息;
第二信息生成模块,用于将所述RTP切片的存储关联描述信息添加到所述RTP切片对应的第一描述信息中,得到所述RTP切片对应的第二描述信息;
存储模块,用于存储与所述RTP切片对应的第二描述信息及切片数据;
索引生成模块,用于根据所述RTP切片的第二描述信息生成能够定位所述RTP切片的索引文件。
13.一种基于切片的RTP流媒体读取装置,其特征在于,包括:
获取模块,用于获取切片搜索信息,所述切片搜索信息包括RTP切片信息;
查找模块,用于利用索引文件查找与所述切片搜索信息相匹配的RTP切片的存储位置,所述索引文件包括能够定位所述RTP切片的信息。
14.一种计算设备,其特征在于,包括存储器和处理器,所述存储器内存储有可在处理器上运行的程序,处理器执行所述程序时实现权利要求1-11任一项所述的方法。
15.一种计算设备可执行的存储介质,所述存储介质中存储有程序,所述程序由计算设备执行时实现权利要求1-11任一项所述的方法。
CN201810553550.4A 2018-05-31 2018-05-31 一种基于切片的rtp流媒体存储、读取方法及装置 Active CN108769789B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810553550.4A CN108769789B (zh) 2018-05-31 2018-05-31 一种基于切片的rtp流媒体存储、读取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810553550.4A CN108769789B (zh) 2018-05-31 2018-05-31 一种基于切片的rtp流媒体存储、读取方法及装置

Publications (2)

Publication Number Publication Date
CN108769789A true CN108769789A (zh) 2018-11-06
CN108769789B CN108769789B (zh) 2021-07-30

Family

ID=64001737

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810553550.4A Active CN108769789B (zh) 2018-05-31 2018-05-31 一种基于切片的rtp流媒体存储、读取方法及装置

Country Status (1)

Country Link
CN (1) CN108769789B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111291035A (zh) * 2020-03-23 2020-06-16 东软睿驰汽车技术(沈阳)有限公司 一种对数据进行切片的方法、装置及相关产品
CN111787420A (zh) * 2020-07-23 2020-10-16 北京数码视讯技术有限公司 一种数据处理方法及装置、电子设备、可读存储介质
CN114697712A (zh) * 2022-05-16 2022-07-01 浙江华创视讯科技有限公司 一种媒体流的下载方法、装置、设备及存储介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1755248A1 (en) * 2005-08-19 2007-02-21 BenQ Mobile GmbH & Co. OHG Indication of lost segments across layer boundaries
CN101552800A (zh) * 2008-04-01 2009-10-07 华为技术有限公司 提供媒体内容的方法、装置和系统
CN102217313A (zh) * 2011-05-26 2011-10-12 华为技术有限公司 重排、抽取分片中媒体数据的方法、设备及系统
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
CN104750859A (zh) * 2015-04-16 2015-07-01 成都影泰科技有限公司 一种网络存储方法
US20150264224A1 (en) * 2014-03-12 2015-09-17 Here Global B.V. Determination of an ordered set of separate videos
WO2016147092A1 (en) * 2015-03-13 2016-09-22 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live adaptive bitrate (abr) media
CN106464932A (zh) * 2014-03-31 2017-02-22 英国电讯有限公司 多播流传输
CN106549916A (zh) * 2015-09-18 2017-03-29 中兴通讯股份有限公司 组播传输方法、装置及系统
EP3269143A1 (en) * 2015-03-13 2018-01-17 Telefonaktiebolaget LM Ericsson (publ) System and method for optimized delivery of live adaptive bitrate (abr) media using a multi-cast mechanism
US10749922B2 (en) * 2013-12-10 2020-08-18 Ringcentral, Inc. Method and telecommunications arrangement for transferring media data having differing media types via a network sensitive to quality of service

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1755248A1 (en) * 2005-08-19 2007-02-21 BenQ Mobile GmbH & Co. OHG Indication of lost segments across layer boundaries
CN101552800A (zh) * 2008-04-01 2009-10-07 华为技术有限公司 提供媒体内容的方法、装置和系统
CN102217313A (zh) * 2011-05-26 2011-10-12 华为技术有限公司 重排、抽取分片中媒体数据的方法、设备及系统
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
US10749922B2 (en) * 2013-12-10 2020-08-18 Ringcentral, Inc. Method and telecommunications arrangement for transferring media data having differing media types via a network sensitive to quality of service
US20150264224A1 (en) * 2014-03-12 2015-09-17 Here Global B.V. Determination of an ordered set of separate videos
CN106464932A (zh) * 2014-03-31 2017-02-22 英国电讯有限公司 多播流传输
WO2016147092A1 (en) * 2015-03-13 2016-09-22 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live adaptive bitrate (abr) media
CN107409135A (zh) * 2015-03-13 2017-11-28 瑞典爱立信有限公司 用于直播自适应比特率(abr)媒体的优化传递的系统和方法
EP3269143A1 (en) * 2015-03-13 2018-01-17 Telefonaktiebolaget LM Ericsson (publ) System and method for optimized delivery of live adaptive bitrate (abr) media using a multi-cast mechanism
CN104750859A (zh) * 2015-04-16 2015-07-01 成都影泰科技有限公司 一种网络存储方法
CN106549916A (zh) * 2015-09-18 2017-03-29 中兴通讯股份有限公司 组播传输方法、装置及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111291035A (zh) * 2020-03-23 2020-06-16 东软睿驰汽车技术(沈阳)有限公司 一种对数据进行切片的方法、装置及相关产品
CN111291035B (zh) * 2020-03-23 2023-05-16 东软睿驰汽车技术(沈阳)有限公司 一种对数据进行切片的方法、装置及相关产品
CN111787420A (zh) * 2020-07-23 2020-10-16 北京数码视讯技术有限公司 一种数据处理方法及装置、电子设备、可读存储介质
CN111787420B (zh) * 2020-07-23 2022-11-04 北京数码视讯技术有限公司 一种数据处理方法及装置、电子设备、可读存储介质
CN114697712A (zh) * 2022-05-16 2022-07-01 浙江华创视讯科技有限公司 一种媒体流的下载方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN108769789B (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
US10776418B2 (en) Relationship mapping employing multi-dimensional context including facial recognition
CN102822826B (zh) 创建和传播注释的信息
CN108769789A (zh) 一种基于切片的rtp流媒体存储、读取方法及装置
CN106209431B (zh) 一种告警关联方法及网管系统
CN104516892B (zh) 关联富媒体信息的用户生成内容的发布方法、系统和终端
US20160188981A1 (en) Identifying and categorizing contextual data for media
US20180089241A1 (en) Context enhanced indexing
CN109936474B (zh) 一种生成网络拓扑图的方法及设备
WO2017054578A1 (zh) 一种报文转发方法、业务链代理装置及代理设备
CN108076377A (zh) 一种视频的存储、播放方法、装置、电子设备及存储介质
CN112486915B (zh) 数据存储方法及装置
CN105808546A (zh) 一种视频文件索引管理平台、系统及其方法
CN105159959A (zh) 图像文件的处理方法和系统
CN102932430B (zh) 一种连接终端设备的方法、装置及系统
US20170193009A1 (en) Systems and methods for filtering of computer vision generated tags using natural language processing
CN103503441B (zh) 内容数据管理装置、内容数据管理方法以及内容数据的显示方法
CN115514759B (zh) 文件转发方法、电子设备及存储介质
CN111177463A (zh) 一种会议记录查找方法、装置、电子设备及介质
US20210368002A1 (en) Intelligent routing of media items
CN104717078A (zh) 基于配置的数据归并方法
CN108228773A (zh) 一种实现信息保存的方法及装置
WO2013063745A1 (en) On-demand video cut service
CN116166640A (zh) 全球导航卫星观测数据实时采集与管理方法及系统
CN106453080B (zh) 一种链路状态清除报文的溯源方法及装置
JP5974663B2 (ja) 分析装置、分析方法及び分析プログラム

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