CN111193942B - 一种流媒体回播方法及装置 - Google Patents
一种流媒体回播方法及装置 Download PDFInfo
- Publication number
- CN111193942B CN111193942B CN202010018588.9A CN202010018588A CN111193942B CN 111193942 B CN111193942 B CN 111193942B CN 202010018588 A CN202010018588 A CN 202010018588A CN 111193942 B CN111193942 B CN 111193942B
- Authority
- CN
- China
- Prior art keywords
- time
- streaming media
- user
- file
- request
- 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 35
- 239000012634 fragment Substances 0.000 claims description 46
- 238000010276 construction Methods 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本文公开了一种流媒体回播方法及装置,此方法包括:接收用户的流媒体回播请求;解析所述流媒体回播请求中的时间参数和流媒体名称;根据所述时间参数确定回播时间点;获取所述回播时间点和流媒体名称对应的播放列表文件;将所述播放列表文件发送至所述用户。本发明可以减少中心服务器处理压力和回源压力,提高对用户请求的响应时间,减少回源下载带宽,加快访问速度,提高用户使用体验。
Description
技术领域
本申请涉及但不限于互联网技术领域,尤其涉及一种流媒体回播方法及装置。
背景技术
在HTTP在线媒体流(HTTP Live Streaming,HLS)回播服务中,用户向流媒体服务器请求m3u8播放列表文件,流媒体服务器根据用户回播时间点生成m3u8播放列表文件后发送至用户,用户获取m3u8播放列表文件进而根据该文件中的索引依次请求ts文件。一个m3u8播放列表文件中往往只包含几个ts文件信息,用户需要不断请求新的m3u8播放列表文件以获取后续的ts文件信息才能连续观看视频,这就需要流媒体服务器对每个m3u8播放列表文件的起始时间点进行计算。不同用户获取到的m3u8播放列表文件是不同的,流媒体服务器无法通过缓存来减少计算的压力,因此在需要服务用户的数量级较大时,需要大量的服务器提供服务,每台服务器都承担着计算和存储全量ts文件的压力,这将浪费大量存储空间和成本。
现有技术中一般以中心-边缘的架构提供HLS回播服务,中心服务器负责HLS的录制,建立m3u8播放列表文件索引与ts文件的索引关系,以及ts文件的存储,边缘服务器用于接收m3u8播放列表文件获取请求及缓存ts文件。现有技术的上述方案中所有的m3u8播放列表文件请求都需要经由边缘节点到达中心服务器进行处理,此方案存在如下缺点:
一,中心服务器处理大量m3u8播放列表文件请求,存在巨大的处理压力;
二,对延迟和卡顿敏感的直播来说,极大地影响用户体验。
发明内容
为了解决上述技术问题,本发明提供一种流媒体回播方法及装置。
本发明提供的流媒体回播方法,应用于边缘服务器,包括:
接收用户的流媒体回播请求;
解析所述流媒体回播请求中的时间参数和流媒体名称;
根据所述时间参数确定回播时间点;
获取所述回播时间点和流媒体名称对应的播放列表文件;
将所述播放列表文件发送至所述用户。
上述流媒体回播方法还具有以下特点:
所述根据所述时间参数确定回播时间点包括:
判断所述时间参数的类型为相对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的相对时间的差作为所述回播时间点;
判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为所述临时相对时间的流媒体回播请求,将此流媒体回播请求发送至所述用户,从所述用户接收时间参数的类型为相对时间类型的流媒体回播请求,将所述边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为所述回播时间点。
上述流媒体回播方法还具有以下特点:
所述获取所述回播时间点对应的播放列表文件包括:
查找是否缓存有与所述回播时间点和流媒体名称对应的播放列表文件,如果是,将缓存的此播放列表文件发送至所述用户,如果否,构建时间参数的类型为回播时间类型并且回播时间为所述回播时间点的流媒体回播请求,将流媒体回播请求发送至中心服务器,从所述中心服务器接收播放列表文件,将此播放列表文件缓存为与所述回播时间点对应的播放列表文件。
上述流媒体回播方法还具有以下特点:
边缘服务器接收用户的流媒体回播请求的同时或者前后,所述方法还包括;获取所述用户的标识;
所述获取所述回播时间点对应的播放列表文件之后,在所述播放列表文件中增加所述用户的标识获得具有用户标识的播放列表文件;
所述将所述播放列表文件发送至所述用户包括:将所述具有用户标识的播放列表文件发送至所述用户。
上述流媒体回播方法还具有以下特点:
将所述播放列表文件发送至所述用户之后,所述方法还包括:
接收用户获取所述播放列表文件的分片文件的请求后,查找是否缓存有所述分片文件,如果是,将缓存的此分片文件发送至所述用户,如果否,将此请求发送至中心服务器,从所述中心服务器接收所述分片文件并缓存,将此分片文件发送至所述用户。
上述流媒体回播方法还具有以下特点:
所述流媒体为HTTP在线流HLS,所述播放列表文件为m3u8播放列表文件。
本发明提供的流媒体回播装置,包括:
接收模块,用于接收用户的流媒体回播请求;
解析模块,用于解析所述流媒体回播请求中的时间参数流媒体名称;
确定模块,用于根据所述时间参数确定回播时间点;
播放列表文件获取模块,用于获取所述回播时间点和流媒体名称对应的播放列表文件;
播放列表文件发送模块,用于将所述播放列表文件发送至所述用户。
上述流媒体回播装置还具有以下特点:
所述确定模块包括判断单元、构建单元、请求发送单元、接收单元、处理单元;
所述判断单元,用于判断所述时间参数的类型是否为相对时间类型;还用于判断所述时间参数的类型是否为绝对时间类型;
所述构建单元,用于在所述判断单元判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为所述临时相对时间的流媒体回播请求;
所述请求发送单元,用于将所述流媒体回播请求发送至所述用户;
所述接收模块,用于从所述用户接收时间参数的类型为相对时间类型的流媒体回播请求;
所述处理单元,用于在所述判断单元判断所述时间参数的类型为相对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的相对时间的差作为所述回播时间点,还用于在所述判断单元判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为所述回播时间点。
上述流媒体回播装置还具有以下特点:
所述播放列表文件获取模块包括查找单元、构建单元、发送单元、接收单元、缓存单元;
所述查找单元,用于查找是否缓存有与所述回播时间点和流媒体名称对应的播放列表文件;
所述构建单元,用于在所述查找单元未查找到与所述回播时间点对应的播放列表文件时,构建时间参数的类型为回播时间类型并且回播时间为所述回播时间点的流媒体回播请求;
所述发送单元,用于将所述构建单元构建的流媒体回播请求发送至中心服务器;还用于在所述查找单元查找到缓存有与所述回播时间点对应的播放列表文件时,将缓存的此播放列表文件发送至所述用户;
所述接收单元,用于从所述中心服务器接收播放列表文件;
所述缓存单元,用于将所述播放列表文件缓存为与所述回播时间点对应的播放列表文件。
上述流媒体回播装置还具有以下特点:
所述装置还包括标识获取模块和文件更新模块;
所述标识获取模块,用于获取所述用户的标识;
所述文件更新模块,用于在所述播放列表文件中增加所述用户的标识获得具有用户标识的播放列表文件;
所述播放列表文件发送模块,用于将所述具有用户标识的播放列表文件发送至所述用户。
上述流媒体回播装置还具有以下特点:
所述装置还包括分片文件获取模块;
所述分片文件查询模块包括分片文件查询单元、发送单元、接收单元、缓存单元;
所述分片文件查询模块,用于查找是否缓存有所述分片文件;
所述发送模块,用于在所述分片文件查询模块查找到所述分片文件时,将缓存的此分片文件发送至所述用户;还用于在所述分片文件查询模块未查找到所述分片文件时,将所述请求发送至中心服务器;
所述接收单元,用于从所述中心服务器接收所述分片文件;
所述缓存单元,用于缓存所述分片文件;
所述发送单元,用于将所述分片文件发送至所述用户。
上述流媒体回播装置还具有以下特点:
所述流媒体为HLS,所述播放列表文件为m3u8播放列表文件。
本发明可以减少中心服务器处理压力和回源压力,提高对用户请求的响应时间,减少回源下载带宽,加快访问速度,提高用户使用体验。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是实施例中流媒体回播方法的流程图;
图2是实施例中流媒体回播的装置的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1是实施例中流媒体回播方法的流程图,应用于边缘服务器,包括:
步骤1,接收用户的流媒体回播请求;
步骤2,解析流媒体回播请求中的时间参数和流媒体名称;
步骤3,根据时间参数确定回播时间点;
步骤4,获取回播时间点和流媒体名称对应的播放列表文件;
步骤5,将播放列表文件发送至用户。
本方法中流媒体包括但不限于HTTP在线流HLS(HTTP Live Streaming,简称HLS),播放列表文件包括但不限于m3u8播放列表文件。
本方法相比现有技术的方案,执行了去中心化的操作,将耗费处理资源的回播请求处理放在边缘服务器进行,减少了中心服务器的处理压力。
因为客户端支持的软件功能不同,用户请求回播时,时间参数中携带的可以是相对时间或绝对时间。相对时间是指相对于当前时间回退的一段时间,绝对时间是指过去的某个时间点。随着回播过程的进行,客户端会依次发送新的m3u8播放列表文件请求以获取后续的ts分片信息。此新的m3u8播放列表文件请求中的时间信息与首个m3u8播放列表请求中的时间信息相同。
本方法的步骤3中根据时间参数确定回播时间点具体包括:
判断时间参数的类型为相对时间类型时,将边缘服务器的当前系统时间和时间参数中的相对时间的差作为回播时间点。
判断时间参数的类型为绝对时间类型时,将边缘服务器的当前系统时间和时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为临时相对时间的流媒体回播请求,将此流媒体回播请求发送至用户,从用户接收时间参数的类型为相对时间类型的流媒体回播请求,将边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为回播时间点。
下面针对此两种情况分别举例说明。
一,对于时间参数的类型为相对时间类型的情况,举例如下:
用户发出的请求为:
http://domain/hls/streamName.m3u8?relTime=1800
其中,streamName表示流媒体文件的名称,relTime表示时间参数的类型为相对时间类型,1800表示相对时间,此相对时间的单位为秒。此请求表示用户要从当前直播流播放位置回退1800秒的位置开始观看。
边缘服务器收到此请求,判断时间参数的类型为相对时间类型时,将边缘服务器的当前系统时间和时间参数中的相对时间的差作为回播时间点,例如,边缘服务器的当前系统时间curTime是1518143400(2018/2/910:30:00),则根据下式计算出回播时间点playbackTime:
playbackTime=curTime–relTime=1518143400–1800=1518141600(2018/2/910:0:0)
用户多次发送新的m3u8播放列表文件请求时,边缘服务器都能根据此方法计算出用户的回播时间点。
二,对于时间参数的类型为绝对时间类型的情况,举例如下:
用户发出的请求为:
http://domain/hls/streamName.m3u8?absTime=1518141600
该请求表示用户要从1518141600s的位置开始回播此streamName文件。
边缘服务器收到此请求,判断时间参数的类型为绝对时间类型时,边缘服务器的当前系统时间和绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为临时相对时间的流媒体回播请求,将此流媒体回播请求发送至用户,从用户接收时间参数的类型为相对时间类型的流媒体回播请求,将边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为所述回播时间点,具体的:
边缘服务器的当前系统时间curTime为1518143400(2018/2/910:30:00),将边缘服务器的当前系统时间和绝对时间的差值作为临时相对时间relTime’;
relTime’=1518143400–1518141600=1800
构建时间参数的类型为相对时间类型并且相对时间为临时相对时间的流媒体回播请求为:
http://domain/hls/streamName.m3u8?relTime=1800
将此请求发送至用户,具体的方法为将此请求写入m3u8播放列表文件的EXT-X-STREAM-INF标签后发送至用户,用户收到该响应之后,根据hls规范,后续使用新的请求地址发起请求,即使用标签EXT-X-STREAM_INF里面的URL发起请求,即使用相对时间的方式发起请求,边缘服务器后续使用相对时间的方式计算的回播时间点。
步骤4中获取回播时间点对应的播放列表文件包括:查找是否缓存有与回播时间点和流媒体名称对应的播放列表文件例如1518141600-streamName.m3u8,如果是,将缓存的此播放列表文件发送至用户,如果否,构建时间参数的类型为回播时间类型并且回播时间为回播时间点的流媒体回播请求例如:
http://domain/hls/streamName.m3u8?playbackTime=1518141600,
将流媒体回播请求发送至中心服务器,从中心服务器接收播放列表文件,将此播放列表文件缓存为与回播时间点对应的播放列表文件。
中心服务器根据该请求获取到回播时间点playbackTime,根据此回播时间点playbackTime生成第一m3u8播放列表文件,返回给边缘服务器,这就不需要中心服务器进行时间的计算,可以节省中心服务器的计算资源。
边缘服务器将m3u8播放列表文件按时间缓存,例如按秒缓存m3u8播放列表文件,当提供回播的时间范围为最近一小时时,一台边缘服务器到中心服务器的m3u8播放列表文件请求最多3600次,在用户请求数量较大时,将大大减少了回源,同时缩短了用户响应时间。
由于m3u8播放列表文件中一般要携带与用户有关的参数(用户标识,校验参数等),在生成m3u8播放列表时,需要在ts地址后面带上用户参数,也就是同一playbackTime的m3u8播放列表文件由于用户参数的差异就会不一样。对于这种情况,边缘服务器先保存用户的请求参数,计算playbackTime,从缓存或者中心服务器获取playbackTime对应的m3u8播放列表文件,然后对获取到的m3u8播放列表文件的内容进行修改,具体的,在该m3u8播放列表文件中加入用户参数,生成差异化的m3u8播放列表文件,返回给用户。由于每个用户的观看需求不同,请求的m3u8播放列表文件也是不同的,边缘服务器收到并缓存该第一m3u8播放列表文件,同时根据不同的用户参数生成差异化的第二m3u8播放列表文件返回给用户,这就实现了m3u8播放列表文件在边缘的缓存。
在步骤1接收用户的流媒体回播请求的同时或者之前,本方法还包括;获取用户的标识;在步骤4获取回播时间点对应的播放列表文件之后,本方法还包括在播放列表文件中增加用户的标识获得具有用户标识的播放列表文件;步骤5将播放列表文件发送至用户具体包括:将播放列表文件发送至用户包括:将具有用户标识的播放列表文件发送至用户。
例如:
边缘服务器从用户1接收到请求:
http://domain/hls/streamName.m3u8?relTime=1800&userId=1&args…
边缘服务器确定此用户的标识为1,确定此请求的回播时间点为1518141600,根据此回播时间点从中心服务器或其它边缘服务器获取第一m3u8播放列表文件为:
1518141600-streamName.m3u8
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:140651513
#EXT-X-TARGETDURATION:10
#EXTINF:8,
1.ts
#EXTINF:9,
2.ts?userId=1&args…
#EXTINF:11,
3.ts?userId=1&args…
边缘服务器在第一m3u8播放列表文件中增加用户的标识后生成第二m3u8播放列表文件:
1518141600-streamName.user1.m3u8
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:140651513
#EXT-X-TARGETDURATION:10
#EXTINF:8,
1.ts?userId=1&args…
#EXTINF:9,
2.ts?userId=1&args…
#EXTINF:11,
3.ts?userId=1&args…
再例如:
边缘服务器从用户2接收到请求:
http://domain/hls/streamName.m3u8?relTime=1800&userId=1&args…
边缘服务器确定此用户的标识为2,确定此请求的回播时间点为1518141600,根据此回播时间点从中心服务器或其它边缘服务器(如置于父节点的边缘服务器)获取第一m3u8播放列表文件为:
1518141600-streamName.m3u8
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:140651513
#EXT-X-TARGETDURATION:10
#EXTINF:8,
1.ts
#EXTINF:9,
2.ts
边缘服务器在第一m3u8播放列表文件中增加用户的标识后生成第二m3u8播放列表文件:
1518141600-streamName.user2.m3u8
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:140651513
#EXT-X-TARGETDURATION:10
#EXTINF:8,
1.ts?userId=2&args…
#EXTINF:9,
2.ts?userId=2&args…
#EXTINF:11,
3.ts?userId=2&args…
此方法中在步骤5将播放列表文件发送至用户之后,还包括步骤6:
接收用户获取所述播放列表文件的分片文件的请求后,查找是否缓存有与此分片文件,如果是,将缓存的此分片文件发送至所述用户,如果否,将此请求发送至中心服务器,从所述中心服务器接收所述分片文件并缓存,将此分片文件发送至上述用户。
根据上述举例具体的步骤6中,用户获取到第二m3u8播放列表文件,依次请求ts文件。比如用户请求1.ts,构造请求:http://domain/hls/1.ts?userId=1&args…,发往边缘服务器,边缘服务器根据用户的参数处理业务相关的逻辑(比如检查请求是否合法),之后边缘服务器从缓存中查找1.ts文件,如果命中直接读取返回给用户,否则将请求发往中心服务器,中心服务器读取1.ts返回给边缘服务器,边缘服务器将1.ts文件写入缓存,并发给用户。接着用户请求2.ts、3.ts,同时用户也在更新m3u8播放列表文件,获取后续的ts分片信息,以便请求新的ts文件。
边缘服务器对ts文件进行缓存,减少了回源下载带宽,加快访问速度,使用户的观看更流畅,提高用户的使用体验。
图2是流媒体回播装置的结构图,此装置包括:
接收模块,用于接收用户的流媒体回播请求;
解析模块,用于解析流媒体回播请求中的时间参数流媒体名称;
确定模块,用于根据时间参数确定回播时间点;
播放列表文件获取模块,用于获取回播时间点和流媒体名称对应的播放列表文件;
播放列表文件发送模块,用于将播放列表文件发送至用户。
其中,
确定模块包括判断单元、构建单元、请求发送单元、接收单元、处理单元;
判断单元,用于判断时间参数的类型是否为相对时间类型;还用于判断时间参数的类型是否为绝对时间类型;
构建单元,用于在判断单元判断时间参数的类型为绝对时间类型时,将边缘服务器的当前系统时间和时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为临时相对时间的流媒体回播请求;
请求发送单元,用于将流媒体回播请求发送至用户;
接收模块,用于从用户接收时间参数的类型为相对时间类型的流媒体回播请求;
处理单元,用于在判断单元判断时间参数的类型为相对时间类型时,将边缘服务器的当前系统时间和时间参数中的相对时间的差作为回播时间点,还用于在判断单元判断时间参数的类型为绝对时间类型时,将边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为回播时间点。
播放列表文件获取模块包括查找单元、构建单元、发送单元、接收单元、缓存单元;
查找单元,用于查找是否缓存有与回播时间点和流媒体名称对应的播放列表文件;
构建单元,用于在查找单元未查找到与回播时间点对应的播放列表文件时,构建时间参数的类型为回播时间类型并且回播时间为回播时间点的流媒体回播请求;
发送单元,用于将构建单元构建的流媒体回播请求发送至中心服务器;还用于在查找单元查找到缓存有与回播时间点对应的播放列表文件时,将缓存的此播放列表文件发送至用户;
接收单元,用于从中心服务器接收播放列表文件;
缓存单元,用于将播放列表文件缓存为与回播时间点对应的播放列表文件。
此装置还包括标识获取模块和文件更新模块;
标识获取模块,用于获取用户的标识;
文件更新模块,用于在播放列表文件中增加用户的标识获得具有用户标识的播放列表文件;
播放列表文件发送模块,用于将具有用户标识的播放列表文件发送至用户。
此装置还包括分片文件获取模块;
分片文件获取模块包括分片文件查询单元、发送单元、接收单元、缓存单元;
分片文件查询单元,用于查找是否缓存有分片文件;
发送单元,用于在分片文件查询模块查找到分片文件时,将缓存的此分片文件发送至用户;还用于在分片文件查询模块未查找到分片文件时,将请求发送至中心服务器;
接收单元,用于从中心服务器接收分片文件;
缓存单元,用于缓存分片文件;
发送单元,用于将分片文件发送至上述用户。
流媒体为HLS,播放列表文件为m3u8播放列表文件。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (9)
1.一种流媒体回播方法,其特征在于,应用于边缘服务器,包括:
接收用户的流媒体回播请求;
解析所述流媒体回播请求中的时间参数和流媒体名称;
根据所述时间参数确定回播时间点;
获取所述回播时间点和流媒体名称对应的播放列表文件;
将所述播放列表文件发送至所述用户;
依次接收用户获取所述播放列表文件的分片文件的请求后,查找是否缓存有所述分片文件,如果是,将缓存的此分片文件发送至所述用户,如果否,将此请求发送至中心服务器,从所述中心服务器接收所述分片文件并缓存,将此分片文件发送至所述用户,其中,所述分片文件的请求中的时间信息与首个播放列表请求中的时间信息相同;
所述获取所述回播时间点对应的播放列表文件包括:
查找是否缓存有与所述回播时间点和流媒体名称对应的播放列表文件,如果是,则获取所缓存的播放列表文件;如果否,构建时间参数的类型为回播时间类型并且回播时间为所述回播时间点的流媒体回播请求,将流媒体回播请求发送至中心服务器,从所述中心服务器接收播放列表文件,将此播放列表文件缓存为与所述回播时间点对应的播放列表文件。
2.如权利要求1所述的流媒体回播方法,其特征在于,
所述根据所述时间参数确定回播时间点包括:
判断所述时间参数的类型为相对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的相对时间的差作为所述回播时间点;
判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为所述临时相对时间的流媒体回播请求,将此流媒体回播请求发送至所述用户,从所述用户接收时间参数的类型为相对时间类型的流媒体回播请求,将所述边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为所述回播时间点。
3.如权利要求1所述的流媒体回播方法,其特征在于,
边缘服务器接收用户的流媒体回播请求的同时或者前后,所述方法还包括;获取所述用户的标识;
所述获取所述回播时间点对应的播放列表文件之后,在所述播放列表文件中增加所述用户的标识获得具有用户标识的播放列表文件;
所述将所述播放列表文件发送至所述用户包括:将所述具有用户标识的播放列表文件发送至所述用户。
4.如权利要求1所述的流媒体回播方法,其特征在于,
所述流媒体为HTTP在线流HLS,所述播放列表文件为m3u8播放列表文件。
5.一种流媒体回播装置,其特征在于,应用于边缘服务器,包括:
接收模块,用于接收用户的流媒体回播请求;
解析模块,用于解析所述流媒体回播请求中的时间参数流媒体名称;
确定模块,用于根据所述时间参数确定回播时间点;
播放列表文件获取模块,用于获取所述回播时间点和流媒体名称对应的播放列表文件,查找是否缓存有与所述回播时间点和流媒体名称对应的播放列表文件,如果是,则获取所缓存的播放列表文件;如果否,构建时间参数的类型为回播时间类型并且回播时间为所述回播时间点的流媒体回播请求,将流媒体回播请求发送至中心服务器,从所述中心服务器接收播放列表文件,将此播放列表文件缓存为与所述回播时间点对应的播放列表文件;
播放列表文件发送模块,用于将所述播放列表文件发送至所述用户;
所述装置还包括分片文件获取模块;
所述分片文件获取模块包括分片文件查询单元、发送单元、接收单元、缓存单元;
所述分片文件查询单元,用于查找是否缓存有所述分片文件;
所述发送单元,用于在所述分片文件查询模块查找到所述分片文件时,将缓存的此分片文件发送至所述用户;还用于在所述分片文件查询模块未查找到所述分片文件时,将所述请求发送至中心服务器;
所述接收单元,用于依次从所述中心服务器接收所述分片文件;
所述缓存单元,用于缓存所述分片文件;
所述发送单元,用于将所述分片文件发送至所述用户;其中,所述分片文件的请求中的时间信息与首个播放列表请求中的时间信息相同。
6.如权利要求5所述的流媒体回播装置,其特征在于,
所述确定模块包括判断单元、构建单元、请求发送单元、接收单元、处理单元;
所述判断单元,用于判断所述时间参数的类型是否为相对时间类型;还用于判断所述时间参数的类型是否为绝对时间类型;
所述构建单元,用于在所述判断单元判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的绝对时间的差值作为临时相对时间,构建时间参数的类型为相对时间类型并且相对时间为所述临时相对时间的流媒体回播请求;
所述请求发送单元,用于将所述流媒体回播请求发送至所述用户;
所述接收模块,用于从所述用户接收时间参数的类型为相对时间类型的流媒体回播请求;
所述处理单元,用于在所述判断单元判断所述时间参数的类型为相对时间类型时,将所述边缘服务器的当前系统时间和所述时间参数中的相对时间的差作为所述回播时间点,还用于在所述判断单元判断所述时间参数的类型为绝对时间类型时,将所述边缘服务器的当前系统时间和此流媒体回播请求的时间参数中的相对时间的差作为所述回播时间点。
7.如权利要求5所述的流媒体回播装置,其特征在于,
所述播放列表文件获取模块包括查找单元、构建单元、发送单元、接收单元、缓存单元;
所述发送单元,用于在所述查找单元查找到缓存有与所述回播时间点对应的播放列表文件时,将缓存的此播放列表文件发送至所述用户。
8.如权利要求5所述的流媒体回播装置,其特征在于,
所述装置还包括标识获取模块和文件更新模块;
所述标识获取模块,用于获取所述用户的标识;
所述文件更新模块,用于在所述播放列表文件中增加所述用户的标识获得具有用户标识的播放列表文件;
所述播放列表文件发送模块,用于将所述具有用户标识的播放列表文件发送至所述用户。
9.如权利要求5所述的流媒体回播装置,其特征在于,
所述流媒体为HLS,所述播放列表文件为m3u8播放列表文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010018588.9A CN111193942B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810239723.5A CN110300308B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
CN202010018588.9A CN111193942B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810239723.5A Division CN110300308B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111193942A CN111193942A (zh) | 2020-05-22 |
CN111193942B true CN111193942B (zh) | 2022-08-02 |
Family
ID=68025599
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810239723.5A Active CN110300308B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
CN202010018588.9A Active CN111193942B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810239723.5A Active CN110300308B (zh) | 2018-03-22 | 2018-03-22 | 一种流媒体回播方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110300308B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881151B (zh) * | 2020-09-28 | 2021-07-13 | 湖北安泰泽善科技有限公司 | 一种交通违法数据管理方法、装置及服务器 |
CN116112474A (zh) * | 2021-11-11 | 2023-05-12 | 华为云计算技术有限公司 | 流媒体调度方法、装置及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118438A (zh) * | 2011-01-17 | 2011-07-06 | 中兴通讯股份有限公司 | IPTV系统中直播apple媒体流的方法和装置 |
CN102572555A (zh) * | 2012-01-16 | 2012-07-11 | 深圳市同洲视讯传媒有限公司 | 一种实现hls客户端视频直播回看的方法及系统 |
CN102883187A (zh) * | 2012-09-17 | 2013-01-16 | 华为技术有限公司 | 一种时移节目服务方法、设备和系统 |
CN103618912A (zh) * | 2013-11-26 | 2014-03-05 | 乐视网信息技术(北京)股份有限公司 | 一种直播时移方法及服务器 |
CN105898352A (zh) * | 2015-11-13 | 2016-08-24 | 乐视云计算有限公司 | 基于m3u8的流媒体文件直播方法及系统 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350031B (zh) * | 2008-08-21 | 2014-04-30 | 深圳市同洲电子股份有限公司 | 一种数据存储方法及系统 |
US8473628B2 (en) * | 2008-08-29 | 2013-06-25 | Adobe Systems Incorporated | Dynamically altering playlists |
CN101420603B (zh) * | 2008-09-05 | 2011-10-26 | 中兴通讯股份有限公司 | 一种分片存储实现媒体分发、定位的方法及其流媒体系统 |
CN101378494B (zh) * | 2008-10-07 | 2011-04-20 | 中兴通讯股份有限公司 | 一种实现互联网电视媒体交互的系统及方法 |
CN101588473B (zh) * | 2009-06-18 | 2011-05-25 | 北京浪弯融科科技有限责任公司 | 多媒体时移播放方法及系统 |
US9038116B1 (en) * | 2009-12-28 | 2015-05-19 | Akamai Technologies, Inc. | Method and system for recording streams |
CN101938483A (zh) * | 2010-09-03 | 2011-01-05 | 中兴通讯股份有限公司 | 一种直播内容分发方法和系统 |
US20120116883A1 (en) * | 2010-11-08 | 2012-05-10 | Sony Corporation | Methods and systems for use in incorporating targeted advertising into multimedia content streams |
CN104469433B (zh) * | 2013-09-13 | 2018-09-07 | 深圳市腾讯计算机系统有限公司 | 一种视频直播回看方法及装置 |
CN104168516A (zh) * | 2014-09-01 | 2014-11-26 | 上海下一代广播电视网应用实验室有限公司 | 一种在流媒体直播平台上实现电视回看系统和方法 |
CN104202616A (zh) * | 2014-09-11 | 2014-12-10 | 北京阅联信息技术有限公司 | 一种基于裸流直播方法、回看方法及其系统 |
US9883221B1 (en) * | 2015-03-25 | 2018-01-30 | Concurrent Computer Corporation | System and method for optimizing real-time video-on-demand recording in a content delivery network |
US20170272498A1 (en) * | 2016-03-21 | 2017-09-21 | Le Holdings (Beijing) Co., Ltd. | Streaming media file distribution method and system |
CN107404379A (zh) * | 2016-05-18 | 2017-11-28 | 中兴通讯股份有限公司 | 一种流媒体文件的处理方法及装置 |
CN107666613A (zh) * | 2016-07-27 | 2018-02-06 | 中国电信股份有限公司 | 用于多点录制的时间同步方法、服务器以及系统 |
CN106789976A (zh) * | 2016-12-07 | 2017-05-31 | 中兴通讯股份有限公司 | 媒体文件的播放方法、服务端、客户端及系统 |
CN107707937A (zh) * | 2017-09-22 | 2018-02-16 | 烽火通信科技股份有限公司 | 基于hls协议的时移优化方法及系统 |
-
2018
- 2018-03-22 CN CN201810239723.5A patent/CN110300308B/zh active Active
- 2018-03-22 CN CN202010018588.9A patent/CN111193942B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118438A (zh) * | 2011-01-17 | 2011-07-06 | 中兴通讯股份有限公司 | IPTV系统中直播apple媒体流的方法和装置 |
CN102572555A (zh) * | 2012-01-16 | 2012-07-11 | 深圳市同洲视讯传媒有限公司 | 一种实现hls客户端视频直播回看的方法及系统 |
CN102883187A (zh) * | 2012-09-17 | 2013-01-16 | 华为技术有限公司 | 一种时移节目服务方法、设备和系统 |
CN103618912A (zh) * | 2013-11-26 | 2014-03-05 | 乐视网信息技术(北京)股份有限公司 | 一种直播时移方法及服务器 |
CN105898352A (zh) * | 2015-11-13 | 2016-08-24 | 乐视云计算有限公司 | 基于m3u8的流媒体文件直播方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110300308B (zh) | 2021-10-08 |
CN110300308A (zh) | 2019-10-01 |
CN111193942A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170171590A1 (en) | Rendering content and time-shifted playback operations for personal over-the-top network video recorder | |
US8838725B2 (en) | Internet cache subscription for wireless mobile users | |
CN111263171A (zh) | 直播流的流媒体数据获取方法、边缘节点区域组网系统 | |
CN110933517B (zh) | 码率切换方法、客户端和计算机可读存储介质 | |
US20150026289A1 (en) | Content source discovery | |
KR20160030381A (ko) | 웹 페이지 액세스 방법, 장치, 라우터, 프로그램 및 기록매체 | |
SG177249A1 (en) | Method, system and device for uploading and downloading a caption file | |
US20170187837A1 (en) | Ad download method, the client and the server | |
WO2013044569A1 (zh) | 一种网络用户识别的方法及其应用服务器 | |
CN107566477B (zh) | 一种在分布式文件系统集群中获取文件的方法和装置 | |
CN110300339B (zh) | 一种直播多媒体回播方法、装置及系统 | |
CN110995811A (zh) | 一种数据更新方法及装置 | |
CN103945259A (zh) | 一种在线视频播放方法及装置 | |
CN111193942B (zh) | 一种流媒体回播方法及装置 | |
RU2738447C1 (ru) | Способ кэширования видео и устройство кэширования видео | |
CN108449308A (zh) | 识别恶意资源访问的方法及装置 | |
WO2015081797A1 (zh) | 桌面背景与直播界面同步播放的方法和系统 | |
CN102843615B (zh) | 在线视频文件的缓存索引方法和缓存服务器 | |
CN111225248B (zh) | 点播内容的管理方法及内容分发网络点播服务器 | |
CN110708402A (zh) | 可访问资源的展示方法、装置及资源访问系统 | |
CN108366097B (zh) | 资源访问控制方法及系统 | |
CN114025199A (zh) | 一种直播视频剪辑方法、装置和系统 | |
WO2017113726A1 (zh) | 广告下载方法、客户端和服务器 | |
WO2017096886A1 (zh) | 内容推送的方法、装置以及系统 | |
CN106686156B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40029978 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |