CN110493324A - 下载方法、下载器及计算机可读存储介质 - Google Patents

下载方法、下载器及计算机可读存储介质 Download PDF

Info

Publication number
CN110493324A
CN110493324A CN201910690185.6A CN201910690185A CN110493324A CN 110493324 A CN110493324 A CN 110493324A CN 201910690185 A CN201910690185 A CN 201910690185A CN 110493324 A CN110493324 A CN 110493324A
Authority
CN
China
Prior art keywords
multimedia file
file
range
multimedia
key frame
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.)
Pending
Application number
CN201910690185.6A
Other languages
English (en)
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.)
MIGU Video Technology Co Ltd
Original Assignee
MIGU Video Technology Co 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 MIGU Video Technology Co Ltd filed Critical MIGU Video Technology Co Ltd
Priority to CN201910690185.6A priority Critical patent/CN110493324A/zh
Publication of CN110493324A publication Critical patent/CN110493324A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例涉及多媒体技术领域,公开了一种下载方法、下载器及计算机可读存储介质。本申请的部分实施例中,下载方法包括:确定播放器请求的第一多媒体文件,以及播放器请求的第一多媒体文件的第一播放范围;根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围;获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器。这提高了下载速度,能够应对播放过程中用户频繁查询等播放场景。

Description

下载方法、下载器及计算机可读存储介质
技术领域
本发明实施例涉及多媒体技术领域,特别涉及一种下载方法、下载器及计算机可读存储介质。
背景技术
下载器是辅助下载的工具,在提升启播速度,节省用户流量方面有着很重要的作用。目前使用较多的开源的文件下载器(File Downloader)只支持整个文件存储。
然而,发明人发现现有技术中至少存在如下问题:当前的下载器无法应对播放过程中用户频繁seek等播放场景。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明实施方式的目的在于提供一种下载方法、下载器及计算机可读存储介质,使得能够提高下载速度,能够应对播放过程中用户频繁seek等播放场景。
为解决上述技术问题,本发明的实施方式提供了一种下载方法,包括以下步骤:确定播放器请求的第一多媒体文件,以及播放器请求的第一多媒体文件的第一播放范围;根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围;获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器。
本发明的实施方式还提供了一种下载器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施方式提及的下载方法。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述实施方式提及的下载方法
本发明实施方式相对于现有技术而言,下载器中存储有第一多媒体文件的关键帧位置索引文件,使得下载器可以在用户请求播放的过程中,或者,在用户播放过程中不断seek时,可以根据关键帧位置索引文件,更新请求的播放范围,使得更新后的播放范围以关键帧为起始帧。下载器将以关键帧为起始帧的多媒体数据发送至播放器,播放器在接收到该多媒体数据后,可以直接播放该多媒体数据,减少了用户进行seek操作时,播放器查询多媒体文件的媒体描述信息,确定并等待关键帧的时间,提高了播放速度,能够应对播放过程中用户频繁seek等播放场景。
另外,在根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围之前,下载方法还包括:判断第一多媒体文件的源服务器中是否存储有第一多媒体文件的关键帧位置索引文件;若判断结果为是,向源服务器请求第一多媒体文件的关键帧位置索引文件;若判断结果为不是,向源服务器请求第一多媒体文件的媒体描述信息,第一多媒体文件的媒体描述信息中包括第一多媒体文件的关键帧的位置信息;根据第一多媒体文件的媒体描述信息,确定第一多媒体文件的关键帧位置索引文件。
另外,根据第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围,具体包括:根据第一播放范围的起始帧的位置信息,以及第一多媒体文件的关键帧位置索引文件,确定第一多媒体文件中与第一播放范围的起始帧最接近的第一关键帧的位置信息;根据第一播放范围的结束帧的位置信息,以及第一多媒体文件的关键帧位置索引文件,确定第一多媒体文件中与第一播放范围的结束帧最接近的第二关键帧的位置信息;根据第一关键帧的位置信息和第二关键帧的位置信息,确定第二播放范围。
另外,在获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器之后,下载方法还包括:若接收到跳转请求,在第一多媒体文件的缓存目录下创建跳转信息文件;将跳转请求对应的第二多媒体文件的标识信息记录在跳转信息文件中;在第一多媒体文件的根缓存目录下创建第二多媒体文件的缓存目录,第二多媒体文件的缓存目录用于记录第二多媒体文件的缓存信息。对跳转前后的URL进行关联,下载器可以在用户重复播放第一多媒体文件时,正确关联到跳转之后的URL对应的缓存目录,并在用户需要删除该第一多媒体文件的缓存目录时,完整删除跳转前后的其他多媒体文件的缓存目录,使得缓存删除过程更为高效。
另外,第一多媒体文件的第二播放范围的多媒体数据以分段缓存的形式存储在第一多媒体文件的缓存目录中,每个分段文件的名称根据分段文件的起始帧的位置信息、分段文件的多媒体数据大小以及分段文件的缓存状态确定。以分段文件的起始帧的位置信息、分段文件的多媒体数据大小以及分段文件的缓存状态确定缓存目录的名称,使得分段文件的数据范围和文件状态一目了然,使得下载器可以进行快速遍历。
另外,在获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器之前或之后,下载方法还包括:若确定所有的多媒体文件的数据量大于第一阈值,根据各个多媒体文件的各个分段文件的最后修改时间,将最后修改时间距离当前时间最远的分段文件删除。根据分段文件的最后修改时间来确定删除的分段文件,比按照缓存目录进行删除,粒度更小,更符合用户播放行为,使得缓存命中率更高。
另外,获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器,具体包括:在获取第一多媒体文件的第二播放范围内的多媒体数据的过程中,若已获取的多媒体数据中,尚未发送至播放器的多媒体数据的数据量达到第二阈值,或,第二播放范围内的多媒体数据已获取完成,将尚未发送至播放器的多媒体数据发送至播放器。对文件进行分段存储,实现了边播边下载,提高了下载器的响应速度,减少了播放器的等待时间。
另外,获取第一多媒体文件的第二播放范围内的多媒体数据的过程包括:根据第一多媒体文件的标识信息和预设的转换规则,确定第一多媒体文件的缓存目录;判断是否存在第一多媒体文件的缓存目录;若判断结果指示存在第一多媒体文件的缓存目录,根据第一多媒体文件的缓存目录中的分段文件的名称,以及第一多媒体文件的第二播放范围的起始帧的位置信息,判断是否存在包含第二播放范围的起始帧的分段文件;若判断结果指示存在包含第二播放范围的起始帧的分段文件,则读取包含第二播放范围的起始帧的分段文件中的属于第二播放范围的多媒体数据,向第一多媒体文件的源服务器请求当前未缓存的第一多媒体文件的多媒体数据;若判断结果指示不存在包含第二播放范围的起始帧的分段文件,向源服务器请求第一多媒体文件的第二播放范围内的多媒体数据;获取源服务器响应的多媒体数据;若判断结果指示不存在第一多媒体文件的缓存目录,则创建第一多媒体文件的缓存目录,向源服务器请求第一多媒体文件的第二播放范围内的多媒体数据;获取源服务器响应的多媒体数据。根据第一多媒体文件的标识信息生成缓存目录,保证了缓存目录的名称的唯一性以及名称长度的一致性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明的第一实施方式的下载方法的流程图;
图2是本发明的第二实施方式的下载方法的流程图;
图3是本发明的第二实施方式的播放器请求播放至实际播放的过程的示意图;
图4是本发明的第三实施方式的下载器的结构示意图;
图5是本发明的第四实施方式的下载器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本发明的第一实施方式涉及一种下载方法,应用于下载器。如图1所示,下载方法包括以下步骤:
步骤101:确定播放器请求的第一多媒体文件,以及播放器请求的第一多媒体文件的第一播放范围。
具体地说,第一多媒体文件可以是音频文件或者视频文件。播放器向下载器发送的播放请求或查询(seek)请求,播放请求或seek请求中包括请求播放的第一多媒体文件的标识信息和请求播放的第一播放范围。下载器根据播放器发送的播放请求,确定播放器请求的第一多媒体文件和第一播放范围。
在一个实施例中,第一多媒体文件的关键帧位置索引文件的获取过程包括:判断第一多媒体文件的源服务器中是否存储有第一多媒体文件的关键帧位置索引文件;若判断结果为是,向源服务器请求第一多媒体文件的关键帧位置索引文件;若判断结果为不是,向源服务器请求第一多媒体文件的媒体描述信息,第一多媒体文件的媒体描述信息中包括第一多媒体文件的关键帧的位置信息;根据第一多媒体文件的媒体描述信息,确定第一多媒体文件的关键帧位置索引文件。
在一个实施例中,可以在URL中增加一个关键帧字段,该关键帧(keyframe)字段用于指示存储第一多媒体文件的源服务器中是否存储有第一多媒体文件的关键帧位置索引文件。下载器可以根据播放器发送的播放请求的播放URL的参数中keyframe字段是否为1,确定存储第一多媒体文件的源服务器是否存储有关键帧位置索引文件。如果有,下载器向存储第一多媒体文件的源服务器请求第一多媒体文件的关键帧位置索引文件。如果没有,下载器向存储第一多媒体文件的源服务器请求第一多媒体文件的媒体描述信息,根据媒体描述信息确定关键帧位置索引文件。
在一个实施例中,第一多媒体文件为mp4视频文件,封装格式是基于视频播放(QuckTime)容器格式定义的,它的媒体描述信息和媒体数据信息是分开的。mp4文件中的所有数据是装在数据包(box)中,每个box有类型和长度。其中“moov”类型的box是媒体描述信息。“moov”类型的box本身也是一个容器数据包(container box),包含若干子box。其中“示例表格数据包(Sample Table Box,stbl)”的子box包含了关于mp4视频帧的时间和位置的信息。“stbl”box也是一个container box,其子box包括:示例说明数据包(sampledescription box,stsd)、到示例的时间数据包(time to sample box,stts)、示例大小数据包(sample size box,stsz或stz2)、示例到块数据包(sample to chunk box,stsc)、块偏移数据包(chunk offset box,stco或co64)、示例组成时间数据包(composition timeto sample box,ctts)、同步样本数据包(sync sample box,stss)等。下载器通过对“stbl”box解析,获取到每个关键帧的偏移和时间戳,生成关键帧位置索引文件,用于记录每个关键帧的位置信息和时间戳信息。
值得一提的是,在源服务器存储多媒体文件的关键帧位置索引文件,减少了下载器解析多媒体文件的媒体描述信息的时间,进一步缩短了播放器的启播时间。通过关键帧位置索引文件进行seek操作,在每次seek时可以实现精准seek,并缩短seek时间。
在一个实施例中,下载器为本地代理服务器。使用过程中,先开启本地代理服务器,在指定端口监听HTTP请求。用户触发播放器播放或seek请求后,本地代理服务器接收到HTTP请求。本地代理服务器根据HTTP请求的播放统一资源定位符(Uniform ResourceLocator,URL)生成代理URL。本地代理服务器通过更改播放URL为代理URL,播放器发起的HTTP请求不是直接发送给服务器,而是通过本地代理(即下载器)向存储第一多媒体文件的源服务器请求数据,因而实现了在本地缓存数据的目的。
在一个实施例中,下载器生成代理URL的规则如下:
第一步、根据请求URL获取去除参数的URL body,即请求url“?”前面部分。
第二步、判断URL主体(URL body)部分有无文件后缀名;若有后缀名,将URL body最后一个“.”前面的部分进行base64编码,然后加上“.”和后缀名;若无后缀名,对整个URLbody进行base64编码。
值得一提的是,使用base64编码,能够避免特殊字符和明文。
第三步、将第二步中的字符拼接“?”和URL参数部分形成代理URL。
第四步、根据下载器的主机名(host)和端口(port)生成代理URL前缀,具体如下:http://proxyhost:proxyport/,http://proxyhost:proxyport/表示该下载器走代理服务。
第五步、拼接第四步和第三步,形成最终的下载器代理URL。
以下结合实际场景举例说明下载器生成代理URL的过程。
假设,在一个场景中,播放器向下载器发送的播放请求中,播放URL的内容如下所示:http://117.131.17.227:40000/_uploads/videos/huanglesong.mp4?msisdn=6f990e757a6e479190f78dc00fc5dc3b&mdspid=&spid=600058,由上可知,对于该播放URL,URLbody是?之前的内容,即http://117.131.17.227:40000/_uploads/videos/huanglesong.mp4。去除后缀名(.mp4),得到http://117.131.17.227:40000/_uploads/videos/huanglesong,对其进行base64编码,得到aHR0cDovLzExNy4xMzEuMTcuMjI3OjQwMDAwL191cGxvYWRzL3ZpZGVvcy9odWFuZ2xlc29uZw==,在其后加上后缀名,加上后缀名后内容如下:
aHR0cDovLzExNy4xMzEuMTcuMjI3OjQwMDAwL191cGxvYWRzL3ZpZGVvcy9odWFuZ2xlc29uZw==.mp4;
拼接URL参数部分,得到:
aHR0cDovLzExNy4xMzEuMTcuMjI3OjQwMDAwL191cGxvYWRzL3ZpZGVvcy9odWFuZ2xlc29uZw==.mp4?msisdn=6f990e757a6e479190f78dc00fc5dc3b&mdspid=&spid=600058;
根据下载器host和port,如http://127.0.0.1:54858/,生成代理URL前缀,拼接形成最终的代理url为:
http://127.0.0.1:54858/
aHR0cDovLzExNy4xMzEuMTcuMjI3OjQwMDAwL191cGxvYWRzL3ZpZGVvcy9odWFuZ2xlc29uZw==.mp4?msisdn=6f990e757a6e479190f78dc00fc5dc3b&mdspid=&spid=600058。
需要说明的是,本领域技术人员可以理解,实际应用中,可以通过其他方式生成该代理URL,本实施方式不限制下载器,即本地代理服务器,将播放URL转换为代理URL的方式。
步骤102:根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围。
具体地说,下载器中存储有第一多媒体文件的关键帧位置索引文件。第一多媒体文件的关键帧位置索引文件指示第一多媒体文件的关键帧的位置信息。在已知第一多媒体文件的关键帧的位置信息后,下载器可以根据第一多媒体文件的各个关键帧的位置信息和第一请求范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围。
在一个实施例中,关键帧位置索引文件为可扩展标记语言(xml)格式,命名为keyframe.xml。例如,某一多媒体文件的关键帧位置索引文件内容如下:
<?xml version=”1”encoding=”utf-8?>
<keyframes>
<value id=”0”time=”0”,offset=”3187345”,size=“3200”>
<value id=”1”time=”5.0”,offset=”3446587”,size=“2665”>
</keyframes>
其中,<?xml version=”1”encoding=”utf-8?>表示该关键帧位置索引文件的格式为xml格式,版本号为1,编码方式为变长字节编码方式(utf-8),<keyframes>表示该文件为关键帧位置索引文件,value表示值,id表示关键帧索引序列号,time表示关键帧的时间戳(pts),offset表示关键帧位置偏移量,size表示关键帧的数据大小,即<value id=”0”time=”0”,offset=”3187345”,size=“3200”>表示索引序列号为0的关键帧的时间戳为0,偏移量为3187345字节,数据大小为3200字节。
在一个实施例中,下载器根据第一播放范围的起始帧的位置信息,以及第一多媒体文件的关键帧位置索引文件,确定第一多媒体文件中与第一播放范围的起始帧最接近的第一关键帧的位置信息;根据第一播放范围的结束帧的位置信息,以及第一多媒体文件的关键帧位置索引文件,确定第一多媒体文件中与第一播放范围的结束帧最接近的第二关键帧的位置信息;根据第一关键帧的位置信息和第二关键帧的位置信息,确定第二播放范围。
以下结合实际场景,举例说明确定第二播放范围的过程。
假设,播放请求指示请求第一多媒体文件的第一播放范围为A-B,即第一播放范围的起始帧的位置信息为A,结束帧的位置信息为B。下载器通过解析关键帧位置索引文件(keyframe.xml)得到关键帧(keyframe)的列表(只需要解析一次,并按照时间戳(pts)进行了升序排序),则遍历keyframe列表,确认离A和B最近的关键帧的序号分别为i和j。则第二播放范围的起始帧的位置信息(A1)=keyframes[i].offset,第二播放范围结束帧的位置信息(B1)=keyframes[j].offset+keyframes[j].size,第二播放范围为A1-B1。其中,keyframes[i].offset表示序号为i的关键帧的偏移量,keyframes[j].offset表示序号为j的关键帧的偏移量,keyframes[j].size表示序号为j的关键帧的大小。
需要说明的是,本领域技术人员可以理解,下载器在确定与第一播放范围的起始帧最接近的第一关键帧的位置信息时,可以选择位于第一播放范围的起始帧前的与第一播放范围的起始帧最接近的关键帧的位置信息作为第一关键帧的位置信息,也可以选择位于第一播放范围的起始帧后的与第一播放范围的起始帧最接近的关键帧的位置信息作为第一关键帧的位置信息,实际应用中,本领域技术人员可以根据需要设置具体的选择规则。
需要说明的是,本领域技术人员可以理解,下载器在确定与第一播放范围的结束帧最接近的第二关键帧的位置信息时,可以选择位于第一播放范围的结束帧前的与第一播放范围的起始帧最接近的关键帧的位置信息作为第二关键帧的位置信息,也可以选择位于第一播放范围的结束帧后的与第一播放范围的起始帧最接近的关键帧的位置信息作为第二关键帧的位置信息,实际应用中,本领域技术人员可以根据需要设置具体的选择规则。
步骤103:获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器。
具体地说,下载器从本地缓存或第一多媒体文件的源服务器中获取第一多媒体文件的第二播放范围内的多媒体数据,并将第一多媒体文件的第二播放范围内的多媒体数据发送至播放器。
在一个实施例中,下载器获取第一多媒体文件的第二播放范围内的多媒体数据的过程包括:根据第一多媒体文件的标识信息和预设的转换规则,确定第一多媒体文件的缓存目录;判断是否存在第一多媒体文件的缓存目录;若判断结果指示存在第一多媒体文件的缓存目录,根据第一多媒体文件的缓存目录中的分段文件的名称,以及第一多媒体文件的第二播放范围的起始帧的位置信息,判断是否存在包含第二播放范围的起始帧的分段文件;若判断结果指示存在包含第二播放范围的起始帧的分段文件,则读取包含第二播放范围的起始帧的分段文件中的属于第二播放范围的多媒体数据,向第一多媒体文件的源服务器请求当前未缓存的第一多媒体文件的多媒体数据;若判断结果指示不存在包含第二播放范围的起始帧的分段文件,向源服务器请求第一多媒体文件的第二播放范围内的多媒体数据;获取源服务器响应的多媒体数据;若判断结果指示不存在第一多媒体文件的缓存目录,则创建第一多媒体文件的缓存目录,向源服务器请求第一多媒体文件的第二播放范围内的多媒体数据;获取源服务器响应的多媒体数据。
在一个实施例中,第一多媒体文件的标识信息为播放器发送的播放请求中的播放URL。为了保证相同HTTP资源请求(即播放请求)会命中同样的缓存目录,需要建立HTTP请求地址和本地缓存目录的一一对应关系,即转换规则。转换规则如下:将播放请求中的请求地址(播放url中参数标识符号‘&’前面部分)进行消息摘要算法(MD5)加密生成MD5文件夹名字(md5_folder_name)。然后,下载器以$(下载器缓存目录)/$(md5_folder_name)做为该文件的缓存目录。
例如,播放URL为:
http://117.131.17.227:40000/_uploads/videos/huanglesong.mp4?msisdn=6f990e757a6e479190f78dc00fc5dc3b&mdspid=&spid=600058;
下载器对“?”前面的URL即http://117.131.17.227:40000/_uploads/videos/huanglesong.mp4进行MD5编码得到1efc51caab6ec3bc,则以$(下载器缓存目录)/1efc51caab6ec3bc为该文件存储路径。
需要说明的是,本领域技术人员可以理解,转换规则可以根据需要设置,本实施方式不限制转换规则的具体要求。
值得一提的是,根据第一多媒体文件的标识信息生成缓存目录,保证了缓存目录的名称的唯一性以及名称长度的一致性。
在一个实施例中,第一多媒体文件的第二播放范围的多媒体数据以分段缓存的形式存储在第一多媒体文件的缓存目录中,每个分段文件的名称根据分段文件的起始帧的位置信息、分段文件的多媒体数据大小以及分段文件的缓存状态确定。
例如,起始帧的位置信息为起始帧的偏移量,分段文件已“分段文件的起始帧的偏移量_分段文件的长度_分段文件的缓存状态”命名。其中,分段文件的缓存状态若标识为0,则表示未缓存完成,分段文件的缓存状态若标识为1,则表示缓存完成,分段文件的缓存状态若标识为2,则表示该多媒体文件全部完成。
值得一提的是,以分段文件的起始帧的位置信息、分段文件的多媒体数据大小以及分段文件的缓存状态确定分段文件的名称,使得分段文件的数据范围和文件状态一目了然,使得下载器可以进行快速遍历。
在一个实施例中,下载器在获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器之前或之后,若确定所有的多媒体文件的数据量大于第一阈值,根据各个多媒体文件的各个分段文件的最后修改时间,将最后修改时间距离当前时间最远的分段文件删除。具体地说,如果下载器缓存的某个多媒体文件最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。当下载器的缓存空间已满,或者到达指定的大小时,可以将最久没有被访问到的分段文件删除。该情况下,下载器遍历下载器缓存目录,依次遍历每个多媒体文件的缓存目录,保留头信息分片和关键帧位置索引文件,根据分段文件最后修改时间对分段文件进行排序,删除最后修改时间最久远的分段文件。通过对所有分段文件按照最后修改时间属性排序进行删除。
值得一提的是,根据分段文件的最后修改时间来确定删除的分段文件,比按照缓存目录进行删除,粒度更小,更符合用户播放行为,使得缓存命中率更高。
在一个实施例中,在获取第一多媒体文件的第二播放范围内的多媒体数据的过程中,若已获取的多媒体数据中,尚未发送至播放器的多媒体数据的数据量达到第二阈值,或,第二播放范围内的多媒体数据已获取完成,将尚未发送至播放器的多媒体数据发送至播放器。具体地说,下载器对于请求的第一多媒体文件的多媒体数据进行分段存储,最大分段的大小可配置。例如,请求的第二播放范围为0-50M,最大分片大小为5M,下载器可以在本地开辟一块内存,每次达到5M时就写文件,并发送给播放器,快速响应播放器的请求。
值得一提的是,对文件进行分段存储,实现了边播边下载,提高了下载器的响应速度,减少了播放器的等待时间。
发明人在实验模拟过程中,采用相同的播放器,对比下载器开启和下载器关闭情况下的首帧性能和seek响应速度,发现使用本实施方式提及的下载方法的情况下,首帧响应速度性能、步进seek(每次向前/向后seek 10秒)性能以及随机seek性能均得到一定程度的提升。
需要说明的是,以上仅为举例说明,并不对本发明的技术方案构成限定。
与现有技术相比,本实施方式中提供的下载方法,下载器中存储有第一多媒体文件的关键帧位置索引文件,使得下载器可以在用户请求播放的过程中,或者,在用户播放过程中不断seek时,可以根据关键帧位置索引文件,更新请求的播放范围,使得更新后的播放范围以关键帧为起始帧。下载器将以关键帧为起始帧的多媒体数据发送至播放器,播放器在接收到该多媒体数据后,可以直接播放该多媒体数据,减少了用户进行seek操作时,播放器查询多媒体文件的媒体描述信息,确定并等待关键帧的时间,提高了播放速度,能够应对播放过程中用户频繁seek等播放场景。
本发明的第二实施方式涉及一种下载方法,本实施方式在第一实施方式的基础上进行了进一步改进,具体改进之处为:下载器在获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器之后,若接收到跳转请求,记录跳转请求后的第二多媒体文件的标识信息。
具体的说,如图2所示,在本实施方式中,获取关键帧位置索引文件的获取方法如下,包含步骤201至步骤205,其中,步骤201至步骤203分别与第一实施方式中的步骤101至步骤103大致相同,此处不再赘述。下面主要介绍不同之处:
步骤201:确定播放器请求的第一多媒体文件,以及播放器请求的第一多媒体文件的第一播放范围。
步骤202:根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围。
步骤203:获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器。
步骤204:判断是否接收到跳转请求。
具体地说,下载器若确定接收到跳转请求,执行步骤205,否则,执行步骤207。
步骤205:在第一多媒体文件的缓存目录下创建跳转信息文件,将跳转请求对应的第二多媒体文件的标识信息记录在跳转信息文件中。
具体地说,跳转信息文件可以以各种形式存储在第一多媒体文件的缓存目录下。例如,跳转信息文件可以直译式脚本语言(JavaScript)对象简谱(json)格式。
步骤206:在第一多媒体文件的根缓存目录下创建第二多媒体文件的缓存目录。之后结束流程。
具体地说,第二多媒体文件的缓存目录用于记录第二多媒体文件的缓存信息。在下载器创建第二多媒体文件的缓存目录后,下载器向存储有第二多媒体文件的源服务器请求第二多媒体文件的多媒体数据,并缓存在第二多媒体文件的缓存目录下。
需要说明的是,第一多媒体文件的根缓存目录可以是下载器缓存目录,也可以是第一缓存目录的上一级缓存目录,本实施方式不做限制,本领域技术人员可以根据需要设置。
例如,第二多媒体文件的标识信息为用于请求第一多媒体文件的URL。在播放第一多媒体文件的过程中,若遇到跳转请求302,在第一多媒体文件的缓存目录写跳转信息文件(info.json文件),记录302跳转之后的第二多媒体文件的URL。
值得一提的是,对跳转前后的URL进行关联,下载器可以在用户重复播放第一多媒体文件时,正确关联到跳转之后的URL对应的缓存目录,并在用户需要删除该第一多媒体文件的缓存目录时,完整删除跳转前后的其他多媒体文件的缓存目录,使得缓存删除过程更为高效。
需要说明的是,本实施方式中,为描述清楚,将步骤206设置为步骤205的后续步骤。但本领域技术人员可以理解,实际应用中,步骤206也可以设置为步骤205的前一步骤,本实施方式不起限定作用。
步骤207:继续请求第一多媒体文件的多媒体数据。
具体地说,若下载器未接收到跳转请求,下载器可以在缓存完第二播放范围内的多媒体数据后,继续缓存后续数据。
在一个实施例中,从请求播放至实际播放的过程如图3所示,包括以下步骤:
步骤301:播放器发送播放请求或查询请求。
步骤302:下载器根据播放请求或查询请求中的播放URL生成代理URL。其中,代理URL的生成过程可以参考第一实施方式的相关内容,此处不再赘述。
步骤303:下载器向第一多媒体文件的源服务器发起第一HTTP请求,请求第一多媒体文件的关键帧位置索引文件,或,第一多媒体文件的媒体描述信息。
步骤304:下载器遍历下载器缓存目录,查找或创建下载器缓存目录下存在第一多媒体文件的缓存目录。具体地说,若下载器缓存目录下存在第一多媒体文件的缓存目录,无需进行创建操作,若下载器缓存目录下不存在第一多媒体文件的缓存目录,创建第一多媒体文件的缓存目录。
步骤305:下载器确定第二播放范围。具体地说,电子设备确定第二播放范围的过程可以参考第一实施方式的相关内容,此处不再赘述。
步骤306:判断本地是否缓存有第二播放范围的媒体数据。具体地说,若有缓存,执行步骤307,否则,执行步骤308。
步骤307:下载器读取本地缓存的第二播放范围的媒体数据,发送给播放器。之后结束流程。
步骤308:下载器向源服务器发送第二HTTP请求,请求第一多媒体文件的第二播放范围的媒体数据,并将其发送给播放器。
上述各步骤的具体实现过程与第一实施方式和第二实施方式中的相关内容相似,此处不一一赘述,本领域技术人员可以根据第一实施方式和第二实施方式的相关内容,执行相关步骤。
需要说明的是,以上仅为举例说明,并不对本发明的技术方案构成限定。
与现有技术相比,本实施方式中提供的下载方法,下载器中存储有第一多媒体文件的关键帧位置索引文件,使得下载器可以在用户请求播放的过程中,或者,在用户播放过程中不断seek时,根据关键帧位置索引文件,更新请求的播放范围,使得更新后的播放范围以关键帧为起始帧。下载器将以关键帧为起始帧的多媒体数据发送至播放器,播放器在接收到该多媒体数据后,可以直接播放该多媒体数据,减少了用户进行seek操作时,播放器查询多媒体文件的媒体描述信息,确定并等待关键帧的时间,提高了播放速度。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护播放范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护播放范围内。
本发明的第三实施方式涉及一种下载器,如图4所示,包括:第一确定模块401、第二确定模块402和传输模块403。第一确定模块401用于确定播放器请求的第一多媒体文件,以及播放器请求的第一多媒体文件的第一播放范围;第二确定模块402用于根据存储的第一多媒体文件的关键帧位置索引文件,以及第一播放范围,确定以第一多媒体文件的关键帧为起始帧的第二播放范围;传输模块403用于获取并发送第一多媒体文件的第二播放范围内的多媒体数据至播放器。
不难发现,本实施方式为与第一实施方式相对应的***实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本发明的第四实施方式涉及一种下载器,如图5所示,包括:至少一个处理器501;以及,与至少一个处理器501通信连接的存储器502;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行上述实施方式提及的下载方法。
该下载器包括:一个或多个处理器501以及存储器502,图5中以一个处理器501为例。处理器501、存储器502可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施方式中关键帧位置索引文件等就存储于存储器502中。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述下载方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器502中,当被一个或者多个处理器501执行时,执行上述任意方法实施方式中的下载方法。
上述产品可执行本申请实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本申请实施方式所提供的方法。
本发明的第五实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和播放范围。

Claims (10)

1.一种下载方法,其特征在于,包括:
确定所述播放器请求的第一多媒体文件,以及所述播放器请求的第一多媒体文件的第一播放范围;
根据存储的所述第一多媒体文件的关键帧位置索引文件,以及所述第一播放范围,确定以所述第一多媒体文件的关键帧为起始帧的第二播放范围;
获取并发送所述第一多媒体文件的第二播放范围内的多媒体数据至所述播放器。
2.根据权利要求1所述的下载方法,其特征在于,所述第一多媒体文件的关键帧位置索引文件的获取过程包括:
判断所述第一多媒体文件的源服务器中是否存储有所述第一多媒体文件的关键帧位置索引文件;
若判断结果为是,向所述源服务器请求所述第一多媒体文件的关键帧位置索引文件;
若判断结果为不是,向所述源服务器请求所述第一多媒体文件的媒体描述信息,所述第一多媒体文件的媒体描述信息中包括所述第一多媒体文件的关键帧的位置信息;根据所述第一多媒体文件的媒体描述信息,确定所述第一多媒体文件的关键帧位置索引文件。
3.根据权利要求1所述的下载方法,其特征在于,所述根据所述第一多媒体文件的关键帧位置索引文件,以及所述第一播放范围,确定以所述第一多媒体文件的关键帧为起始帧的第二播放范围,具体包括:
根据所述第一播放范围的起始帧的位置信息,以及所述第一多媒体文件的关键帧位置索引文件,确定所述第一多媒体文件中与所述第一播放范围的起始帧最接近的第一关键帧的位置信息;
根据所述第一播放范围的结束帧的位置信息,以及所述第一多媒体文件的关键帧位置索引文件,确定所述第一多媒体文件中与所述第一播放范围的结束帧最接近的第二关键帧的位置信息;
根据所述第一关键帧的位置信息和所述第二关键帧的位置信息,确定所述第二播放范围。
4.根据权利要求1所述的下载方法,其特征在于,在所述获取并发送所述第一多媒体文件的第二播放范围内的多媒体数据至所述播放器之后,所述下载方法还包括:
若接收到跳转请求,在所述第一多媒体文件的缓存目录下创建跳转信息文件;
将所述跳转请求对应的第二多媒体文件的标识信息记录在所述跳转信息文件中;
在所述第一多媒体文件的根缓存目录下创建所述第二多媒体文件的缓存目录,所述第二多媒体文件的缓存目录用于记录所述第二多媒体文件的缓存信息。
5.根据权利要求1所述的下载方法,其特征在于,所述第一多媒体文件的第二播放范围的多媒体数据以分段缓存的形式存储在所述第一多媒体文件的缓存目录中,每个分段文件的名称根据所述分段文件的起始帧的位置信息、所述分段文件的多媒体数据大小以及所述分段文件的缓存状态确定。
6.根据权利要求5所述的下载方法,其特征在于,在所述获取并发送所述第一多媒体文件的第二播放范围内的多媒体数据至所述播放器之前或之后,所述下载方法还包括:
若确定所有的多媒体文件的数据量大于第一阈值,根据各个多媒体文件的各个所述分段文件的最后修改时间,将最后修改时间距离当前时间最远的分段文件删除。
7.根据权利要求1至6中任一项所述的下载方法,其特征在于,所述获取并发送所述第一多媒体文件的第二播放范围内的多媒体数据至所述播放器,具体包括:
在获取所述第一多媒体文件的第二播放范围内的多媒体数据的过程中,若已获取的多媒体数据中,尚未发送至所述播放器的多媒体数据的数据量达到第二阈值,或,所述第二播放范围内的多媒体数据已获取完成,将尚未发送至所述播放器的多媒体数据发送至所述播放器。
8.根据权利要求1至6中任一项所述的下载方法,其特征在于,获取所述第一多媒体文件的第二播放范围内的多媒体数据的过程包括:
根据所述第一多媒体文件的标识信息和预设的转换规则,确定所述第一多媒体文件的缓存目录;
判断是否存在所述第一多媒体文件的缓存目录;
若判断结果指示存在所述第一多媒体文件的缓存目录,根据所述第一多媒体文件的缓存目录中的分段文件的名称,以及所述第一多媒体文件的第二播放范围的起始帧的位置信息,判断是否存在包含所述第二播放范围的起始帧的分段文件;若判断结果指示存在包含所述第二播放范围的起始帧的分段文件,则读取所述包含第二播放范围的起始帧的分段文件中的属于所述第二播放范围的多媒体数据,向所述第一多媒体文件的源服务器请求当前未缓存的所述第一多媒体文件的多媒体数据;若判断结果指示不存在包含所述第二播放范围的起始帧的分段文件,向所述源服务器请求所述第一多媒体文件的第二播放范围内的多媒体数据;获取所述源服务器响应的多媒体数据;
若判断结果指示不存在所述第一多媒体文件的缓存目录,则创建所述第一多媒体文件的缓存目录,向所述源服务器请求所述第一多媒体文件的第二播放范围内的多媒体数据;获取所述源服务器响应的多媒体数据。
9.一种下载器,其特征在于,包括:至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至8中任一项所述的下载方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的下载方法。
CN201910690185.6A 2019-07-29 2019-07-29 下载方法、下载器及计算机可读存储介质 Pending CN110493324A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910690185.6A CN110493324A (zh) 2019-07-29 2019-07-29 下载方法、下载器及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910690185.6A CN110493324A (zh) 2019-07-29 2019-07-29 下载方法、下载器及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN110493324A true CN110493324A (zh) 2019-11-22

Family

ID=68548547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910690185.6A Pending CN110493324A (zh) 2019-07-29 2019-07-29 下载方法、下载器及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110493324A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110933517A (zh) * 2019-11-30 2020-03-27 咪咕视讯科技有限公司 码率切换方法、客户端和计算机可读存储介质
CN112954445A (zh) * 2021-03-16 2021-06-11 深圳市迅雷网络技术有限公司 流媒体文件播放方法、装置、计算机设备和存储介质
CN113141522A (zh) * 2020-01-17 2021-07-20 北京达佳互联信息技术有限公司 资源传输方法、装置、计算机设备及存储介质
CN114125509A (zh) * 2021-11-30 2022-03-01 深圳Tcl新技术有限公司 一种视频播放方法、装置、电子设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040047614A1 (en) * 2002-08-22 2004-03-11 Dustin Green Accelerated access to frames from a compressed digital video stream without keyframes
CN101247193A (zh) * 2008-02-28 2008-08-20 华为技术有限公司 对等网络中发送数据的方法、***、节点和超级节点
CN102004760A (zh) * 2010-11-03 2011-04-06 深圳市同洲电子股份有限公司 多媒体文件的存储和播放方法、相关装置及***
CN103348690A (zh) * 2011-11-26 2013-10-09 华为技术有限公司 一种视频处理的方法及装置
CN104468718A (zh) * 2014-11-07 2015-03-25 华为技术有限公司 一种信息的互联方法、装置及***
CN105763960A (zh) * 2016-03-01 2016-07-13 青岛海信传媒网络技术有限公司 一种网络视频播放的方法和装置
CN109729386A (zh) * 2019-01-03 2019-05-07 深圳市网心科技有限公司 一种视频文件启播方法、***及电子设备和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040047614A1 (en) * 2002-08-22 2004-03-11 Dustin Green Accelerated access to frames from a compressed digital video stream without keyframes
CN101247193A (zh) * 2008-02-28 2008-08-20 华为技术有限公司 对等网络中发送数据的方法、***、节点和超级节点
CN102004760A (zh) * 2010-11-03 2011-04-06 深圳市同洲电子股份有限公司 多媒体文件的存储和播放方法、相关装置及***
CN103348690A (zh) * 2011-11-26 2013-10-09 华为技术有限公司 一种视频处理的方法及装置
CN104468718A (zh) * 2014-11-07 2015-03-25 华为技术有限公司 一种信息的互联方法、装置及***
CN105763960A (zh) * 2016-03-01 2016-07-13 青岛海信传媒网络技术有限公司 一种网络视频播放的方法和装置
CN109729386A (zh) * 2019-01-03 2019-05-07 深圳市网心科技有限公司 一种视频文件启播方法、***及电子设备和存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110933517A (zh) * 2019-11-30 2020-03-27 咪咕视讯科技有限公司 码率切换方法、客户端和计算机可读存储介质
CN113141522A (zh) * 2020-01-17 2021-07-20 北京达佳互联信息技术有限公司 资源传输方法、装置、计算机设备及存储介质
CN113141522B (zh) * 2020-01-17 2022-09-20 北京达佳互联信息技术有限公司 资源传输方法、装置、计算机设备及存储介质
CN112954445A (zh) * 2021-03-16 2021-06-11 深圳市迅雷网络技术有限公司 流媒体文件播放方法、装置、计算机设备和存储介质
CN114125509A (zh) * 2021-11-30 2022-03-01 深圳Tcl新技术有限公司 一种视频播放方法、装置、电子设备和存储介质
CN114125509B (zh) * 2021-11-30 2024-01-19 深圳Tcl新技术有限公司 一种视频播放方法、装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
CN110493324A (zh) 下载方法、下载器及计算机可读存储介质
US10687095B2 (en) Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US10051013B2 (en) Method and apparatus for streaming multimedia content of server by using cache
US8812735B2 (en) Content reproduction system, content reproduction apparatus, program, content reproduction method, and providing content server
CN104396263B (zh) 用于流送媒体内容的实时复用变换的方法和***
US8019885B2 (en) Discontinuous download of media files
CN103650526B (zh) 用于实时或近实时流传输的播放列表
US20120246335A1 (en) Method, terminal, and server for implementing fast playout
CN109842613A (zh) 用于提供和接收媒体数据的方法和装置以及存储介质
US20160134900A1 (en) Streaming media processing method, apparatus, and system
US8401370B2 (en) Application tracks in audio/video containers
JP7008829B2 (ja) ウェブページで解像度を切り替えてメディアファイルを再生する方法、装置及び記憶媒体
CN111512635B (zh) 用于选择性跳过媒体内容的方法和***
JP6969013B2 (ja) メディアファイルの同期再生方法、装置及び記憶媒体
CN1972193A (zh) 兼容渐进下载方法和***
CN102740159A (zh) 媒体文件存储格式和自适应传送***
US20210400317A1 (en) Method for processing video-dragging data, and proxy server
CN106537924A (zh) 用于串流服务的客户端以及服务器的操作方法
CN102131110B (zh) 一种iptv内容发布***和方法
CN110784750A (zh) 视频播放方法、装置及计算机设备
JP2021508995A (ja) メディアファイルのネットワーク再生方法、装置及び記憶媒体
US20230021164A1 (en) Advertisement preparation systems
CN106165435B (zh) 自适应流媒体中的客户端行为控制的方法、装置和服务器
US9237363B2 (en) Dynamic injection of metadata into flash video
KR100908144B1 (ko) 멀티미디어 편집/재생 시스템 및 그 동작방법

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191122