CN104301743A - 传输视频的方法、网关设备和视频传输系统 - Google Patents

传输视频的方法、网关设备和视频传输系统 Download PDF

Info

Publication number
CN104301743A
CN104301743A CN201410461427.1A CN201410461427A CN104301743A CN 104301743 A CN104301743 A CN 104301743A CN 201410461427 A CN201410461427 A CN 201410461427A CN 104301743 A CN104301743 A CN 104301743A
Authority
CN
China
Prior art keywords
url
video
sampling
quey
param
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
CN201410461427.1A
Other languages
English (en)
Other versions
CN104301743B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410461427.1A priority Critical patent/CN104301743B/zh
Publication of CN104301743A publication Critical patent/CN104301743A/zh
Priority to EP15839268.8A priority patent/EP3185563A4/en
Priority to PCT/CN2015/080034 priority patent/WO2016037497A1/zh
Priority to US15/456,137 priority patent/US10085046B2/en
Application granted granted Critical
Publication of CN104301743B publication Critical patent/CN104301743B/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/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/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving 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
    • 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
    • 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/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种传输视频的方法,在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担,该方法包括:网关设备接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;根据该分段部分提取模型,确定该目标URL的分段部分;根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。

Description

传输视频的方法、网关设备和视频传输系统
技术领域
本发明涉及通信领域,并且更具体地,涉及一种传输视频的方法、网关设备和视频传输系统。
背景技术
目前,随着互联网的飞速发展,基于开放互联网的视频服务也得以快速普及,通常,互联网视频发布商利用电信运营商提供的网络,向终端用户提供视频播放服务,其中,电信运营商仅负责传输视频,不涉足视频内容的控制、分发、版权等。
现有技术中,视频传输是基于超文本传输协议(HTTP,Hypertext transferprotocol)进行的,具体地说,用户在希望观看互联网视频发布商(例如,视频网站)提供的视频时,通过用户设备向电信运营商(例如,网关设备)发送HTTP消息,该HTTP消息中携带与所希望观看的视频相对应的统一资源定位符URL(Uniform Resoure Locator),电信运营商可以将该HTTP消息转发给互联网视频发布商(例如,视频网站的视频服务器),以从互联网视频发布商获得该视频,并下发至用户设备。
为了改善用户体验,缩短用户观看视频的等待时间,电信运营商通常会设置缓存设备,以缓存从互联网视频发布商获取的视频,并建立所获取的各视频与各URL之间的映射关系表项,从而,当接收到携带着与所缓存的视频相同的URL的HTTP消息时,可以从缓存设备获取该视频,并下发给用户设备。
但是,上述映射关系表项是基于完整的URL生成的,或者说,缓存设备是基于完整的URL完成对各视频的索引,而互联网视频发布商的无标准规范的特殊行为使得以完整的URL作为缓存索引的方式非常低效。
例如,视频的URL通常是互联网视频发布商动态生成的,例如,在用户观看视频的时候会有拖动行为,每次拖动会触发用户设备向电信运营商发送新的HTTP消息,以获取与拖动行为相对应的视频片段,而这些HTTP消息可能会携带互联网视频发布商分配的彼此相异的URL,而这些URL实际上均对应同一视频,只是所对应的具体片段相异,从而,可能出现同一视频被重复缓存多次,以及请求同一视频的多个URL,只有部分能在缓存中命中的情况,严重降低了缓存设备的缓存效率,增加了缓存设备的处理负担。
发明内容
本发明实施例提供一种传输视频的方法、网关设备及视频传输系统,在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
第一方面,提供了一种传输视频的方法,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;该方法包括:所述网关设备接收所述第二用户设备发送的目标URL,并从所述缓存设备中确定与所述目标URL相对应的第二视频;其中,所述第二视频来自于所述目标视频服务器;所述网关设备根据分段部分提取模型,确定所述目标URL的分段部分;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;所述网关设备根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段,并向所述第二用户设备发送所述目标视频片段。
结合第一方面,在第一方面的第一种实现方式中,该方法还包括:所述网关设备接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合;根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息;根据所述分段信息,确定所述分段部分提取模型。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
结合第一方面及其上述实现方式,在第一方面的第三种实现方式中,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
结合第一方面及其上述实现方式,在第一方面的第四种实现方式中,所述网关设备接收来自第一用户设备的第一采样URL和所述第二采样URL,包括:所述网关设备在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
结合第一方面及其上述实现方式,在第一方面的第五种实现方式中,该从缓存设备中确定与该目标URL相对应的第二视频,包括:确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;根据标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频。
结合第一方面及其上述实现方式,在第一方面的第六种实现方式中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
结合第一方面及其上述实现方式,在第一方面的第七种实现方式中,各缓存URL的Host部分相同。
结合第一方面及其上述实现方式,在第一方面的第八种实现方式中,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及所述遍历所述目标URL的非Host部分包括:当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
结合第一方面及其上述实现方式,在第一方面的第九种实现方式中,所述方法还包括:接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;向所述视频服务器转发所述验证URL;接收所述视频服务器根据所述验证URL发送的验证视频;确定所述验证视频与所述缓存视频相同。
结合第一方面及其上述实现方式,在第一方面的第十种实现方式中,该缓存视频属于该第三视频。
第二方面,提供了一种网关设备,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述网关设备包括:接收单元,用于接收所述第二用户设备发送的目标URL;确定单元,用于从所述缓存设备中确定与所述目标URL相对应的第二视频,根据分段部分提取模型,确定所述目标URL的分段部分,并根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;发送单元,用于向所述第二用户设备发送所述目标视频片段。
结合第二方面,在第二方面的第一种实现方式中,所述接收单元还用于接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;所述确定单元还用于,根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合,根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据所述分段信息,确定所述分段部分提取模型。
结合第二方面及其上述实现方式,在第二方面的第二种实现方式中,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
结合第二方面及其上述实现方式,在第二方面的第三种实现方式中,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
结合第二方面及其上述实现方式,在第二方面的第四种实现方式中,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,所述接收单元具体用于在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
结合第二方面及其上述实现方式,在第二方面的第五种实现方式中,所述确定单元还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据所述标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存URL均与所述缓存视频相对应。
结合第二方面及其上述实现方式,在第二方面的第六种实现方式中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
结合第二方面及其上述实现方式,在第二方面的第七种实现方式中,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
结合第二方面及其上述实现方式,在第二方面的第八种实现方式中,该非Host部分包括路径Path部分和搜索参数Quey Param部分,该确定单元还用于获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
第三方面,提供了一种视频传输系统,包括:上述的网关设备;用户设备,用于向所述网关设备发送统一资源定位符URL,并从所述网关设备获取与所述URL相对应的视频;视频服务器,用于接收网关设备转发的所述URL,确定与所述URL相对应的视频,并向所述网关设备发送所述视频。
根据本发明实施例的传输视频的方法、网关设备和视频传输系统,通过获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的视频传输系统的架构图;
图2是本发明实施例的传输视频的方法的示意性流程图;
图3是表示URL中各部分的划分方式的一例的示意图;
图4是表示URL中的Path部分的深度及Path值的一例的示意图;
图5是根据本发明实施例的网关设备的示意性框图;
图6是根据本发明实施例的网关设备的示意性结构图;
图7是根据本发明实施例的视频传输系统的示意性架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的技术方案中,用户设备可以通过电信运营商提供的通信网络访问提供视频业务的视频服务器,并且,该通信网络可以是例如:全球移动通讯系统(GSM,Global System of Mobile communication),码分多址(CDMA,Code Division Multiple Access)系统,宽带码分多址(WCDMA,WidebandCode Division Multiple Access Wireless),通用分组无线业务(GPRS,GeneralPacket Radio Service),长期演进(LTE,Long Term Evolution)等。
用户设备(UE,User Equipment),也可称之为移动终端(MobileTerminal)、移动用户设备等,可以经上述通信网络(例如,RAN,Radio AccessNetwork)与一个或多个核心网(例如,上述视频服务器所在的网络)进行通信,用户设备可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。
并且,在本发明实施例中,用户设备与视频服务器之间可以采用HTTP通信方式,或者说,在用户设备与视频服务器之间传输的信息符合HTTP通信规则。
例如,用户在通过用户设备访问视频网站,以观看视频时,视频网站会针对用户希望观看的视频(例如,通过用户的点击行为获知用户希望的视频),为该用户设备分配与该视频相对应的URL,用户设备向该视频网站的视频服务器发送携带有该URL的请求消息,从而,视频服务器可以根据该URL查找到该视频,并下发给用户设备。
另外,在本发明实施例中,用户设备与视频服务器之间的通信经由电信运营商提供的通信网络进行,例如,用户设备发送给视频服务器的消息(例如,请求播放视频片段的消息)需要首先被封装成符合上述通信网络传输规则的格式,并经由例如该通信网络的网关设备将该消息转换为视频服务器能够识别的格式。类似的,视频服务器在从网关设备接收到该消息后,可以查找与该消息相对应的视频,并将该视频传输至上述网关设备,网关设备可以将该视频封装成服务符合上述通信网络传输规则的格式,并下发至用户设备。
为了改善用户体验,缩短用户观看视频的等待时间,电信运营商通常会设置缓存设备,以缓存从视频服务器获取的视频,如图1所示。需要说明的是,该缓存设备通常部署在FBB(Fix Broadband,固网宽带)或MBB(MobileBroadband,移动宽带)的接入网关处,且缓存设备与网关设备通信连接或集成于一体。需要说明的是,缓存设备部署在网关设备只是本发明的一种典型应用场景,不应理解为对本发明应用场景的限制。
本发明实施例提供的传输视频的方法可典型地应用于图1所示的视频传输系统中,根据图1,该视频传输系统包括网关设备,该网络设备一侧与一个或多个视频服务器通信连接,另一侧与一个或多个用户设备通信设备连接,同时,该网关设备还部署有缓存设备,缓存设备具体可以集成在该网关设备内部,或者作为独立的实体,与该网关设备通信连接。为了便于理解,以具有视频缓存功能的网关设备作为本发明实施例的传输视频的方法的执行主体,进行说明。当然,可以理解的是,其他涉及视频传输和缓存的场景,本发明方法均能适用。
图2示出了根据本发明实施例的传输视频的方法100的示意性流程图。如图2所示,该方法包括:
S120,接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;其中,第二用户设备为视频传输系统包括的至少一个用户设备中的一个;第二视频来自于目标视频服务器,该目标服务器是与该网关设备通信连接的多个视频服务器中的一个,第二视频是在第二用户设备发送该目标URL之前,网关设备从目标视频服务器获取并缓存到缓存设备中的;例如,可以理解的是,在某个时间周期内,目标视频服务器响应于网关设备转发的来自于某个用户设备的请求,向网关设备发送的第二视频,并由网关设备将第二视频转发给该用户设备,同时,该第二视频进一步被存储于所述缓存设备中,以便于下个时间周期内,某个用户设备再次请求第二视频时,从缓存设备直接转发第二视频。
S130,根据该分段部分提取模型,确定该目标URL的分段部分;
S140,根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。
具体地说,例如,当用户在观看视频时,如果发生拖动行为,对于每次拖动行为,用户设备均会产生一个HTTP消息发送给视频服务器,用以请求视频片段,并且,各HTTP消息是在请求观看源视频时产生的URL中,增加分段部分,也可以称为范围(Range)部分,来指示视频片段在原始视频中的范围,例如,视频片段的起始时间和结束时间,或者,视频片段的起始字节和结束字节。应理解,以上列举的在URL中出现分段部分的原因仅为示例性说明,本发明并不限定于此,例如,通常情况下由于原始视频过大,视频网站会将原始视频自动地分成多段下发至用户设备,因此,在URL中也会出现用于标识该视频片段在原始视频中的位置的分段部分。
因此,本发明实施例中,可以通过采样视频进行训练,获得分段部分提取模型,用于指示统一资源定位符URL的分段部分;从而,能够实现从与视频片段相对应的URL中提取上述分段部分,并基于该分段部分,从该视频片段的源视频中截取视频片段。因此,无需单独对视频片段进行缓存。
下面,首先对该分段部分提取模型的训练过程进行详细说明。
在本发明实施例中,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值。
优选地,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
并且,可选地,在接收第二用户设备发送的目标URL之前,该方法还包括:接收该第一采样URL和该第二采样URL;
根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL确定该第二采样信息集合;
根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的该分段信息;
根据该分段信息,确定该分段部分提取模型。
具体地说,在时段T1(即,第一时段的一例),网关设备获取URL#A(即,第一采样URL的一例),其中,该URL#A与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#A与视频A(即,第一视频的一例)相对应,例如,可以是网关设备从来自该用户设备A的用于请求播放视频A HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备A的用于请求播放视频A的片段的HTTP消息中提取的。
需要说明的是,以上列举的URL#A的获取过程仅为示例性说明,本发明并未限定于此,例如,该URL#A也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#A与用户设备A相对应,且该URL#A与视频A相对应即可,例如,现有技术中,该URL#A可以作为完整的视频A的索引,或者该URL#A可以作为视频A的某一片段的索引。
用户设备在请求获取视频片段时发送的URL中,与片段相对应的上述Range部分通常存在于URL的路径(Path)部分或搜索参数(Quey Param)部分中,即,该Range部分可能是Path部分中的某一深度的Path值,也可能是Quey Param部分中的某一参数的值。
因此,在本发明实施例中,网关设备在获取该URL#A之后,可以提取该URL#A的Path部分和/或Quey Param部分。
图3示出了URL的字符串中各部分的构成的一例,如图3所示,URL的域名(Host)部分与Path部分之间由“/”符号隔开,因此,网络设备可以将Host部分之后的第一个“/”符号(或者说,URL中的最后一个“/”符号)后的字符识别为Path部分的起始字符。
并且,如图3所示,URL的Path部分与Quey Param部分之间由“?”符号隔开,因此,网络设备可以将Path部分(或者说,URL中的最后一个“/”符号)之后的第一个“?”符号后的字符识别为Path部分的起始字符。从而,能够实现Quey Param部分的提取。
另外,网络设备可以将该path部分之后的第一个“?”符号后的字符识别为Path部分的结束字符,从而,结合上述Path部分的起始字符,能够实现Path部分的提取。
应理解,以上列举的Path部分的提取方法以及Quey Param部分的提取方法仅为示例性说明,本发明并不限定于此,可以根据URL的变化而进行相应变更,例如,存在某些URL只存在Path部分而不存在Quey Param部分的情况,此情况下,只须其确定Path部分的起始字符即可。并且,以上列举的Host部分与Path部分的分隔符号(即,“/”符号)以及Path部分与QueyParam部分之间的分隔符号(即,“?”符号)仅为示例性说明,本发明并不限定于此,现有技术中,URL所采用的能够实现分隔标识作用的符号均落入本发明的保护范围内。
网关设备在完成了对URL#A的Path部分提取之后,可以确定URL#A的Path部分的深度和Path值。
具体地说,Path部分的深度(或者说,级别)可以根据Path部分中包括的“/”符号的数量确定,例如,图4示出了URL中的Path部分的一例的示意图。以图4所示的URL为例,该URL包括六个“/”符号,因此,可以确定其深度为6,其中,
第1级深度的Path值为“sec(44ab57eec5d981faa33)”;
第2级深度的Path值为“frag(0)”;
第3级深度的Path值为“video”;
第4级深度的Path值为“484”;
第5级深度的Path值为“516”;
第6级深度的Path值为“56615484_mp4_h264_aac_1.flv”。
同样,网关设备在完成了对URL#A的Quey Param部分提取之后,可以确定URL#A的Quey Param部分中全部Quey Param的名称和参数值。
通常情况下,URL中Quey Param的格式为“NAME=VALUE”,NAME为参数名,Value为参数值。但是,本发明并不限定于此,可以是只有NAME,可以是NAME为空,也可以是VALUE为空,即,URL中Quey Param的格式可为:
“NAME=VALUE”,或
“NAME”,或
“NAME=”或
“=VALUE”。
具体地说,以图3所示的URL为例,该URL包括9个“&”符号,因此,可以确定其包括9个Quey Param,其中,
第1个Quey Param所对应的字符串为“4”,其参数名为“4”,参数值为空;
第2个Quey Param所对应的字符串为“ipbits=0”,其参数名为“ipbits”,参数值为“0”;
第3个Quey Param所对应的字符串为
“signature=.BC606865625583C2BE5AA6472A7536D827ED7E58”,
其参数名为“signature”,参数值为
“.BC606865625583C2BE5AA6472A7536D827ED7E58”;
第4个Quey Param所对应的字符串为“sver=3”,其参数名为“sver”,参数值为“3”;
第5个Quey Param所对应的字符串为“expire=1252105200”,其参数名为“expire”,参数值为“1252105200”;
第6个Quey Param所对应的字符串为“key=yt1”,其参数名为“key”,参数值为“yt1”;
第7个Quey Param所对应的字符串为factor=1.25”,其参数名为“factor”,参数值为“1.25”;
第8个Quey Param所对应的字符串为burst=40”,其参数名为“burst”,参数值为“40”;
第9个Quey Param所对应的字符串为“id=c19764dece17ab”,其参数名为“id”,参数值为“c19764dece17ab”。
从而,如上所述,可以确定URL#A的Path部分的深度Path值以及QueyParam部分中各Quey Param的名称和参数值,并记录上述信息以生成第一采样信息集合。
在时段T2(即,第二时段的一例),网关设备获取URL#B(即,第二采样URL的一例),其中,该URL#B与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#B与视频A(即,第一视频的一例)相对应,例如,可以是网关设备从来自该用户设备A的用于请求播放视频A的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备A的用于请求播放视频A的片段的HTTP消息中提取的。
需要说明的是,视频网站为同一用户所请求的来自同一视频的不同片段所分配的URL中,通常只有Rang部分(例如,指示视频开始时间的字符串)是相异的,因此,为了准确地确定该Rang部分,需要确保URL#A和URL#B分别对应同一视频(即,上述视频A)的不同片段,例如,URL#A对应完整的视频A而URL#B对应视频A的一个片段,或者,URL#A对应视频A的一个片段而URL#B对应完整的视频,再或者,URL#A对应视频A的一个片段而URL#B对应视频A的另一个片段。
在本发明实施例中,可以采用在线采样的方式,在为用户转发视频的同时,训练获得Rang部分提取模型,因此,通过使URL#A和URL#B对应同一视频(即,上述视频A)能够提高该Rang部分提取模型的准确性。
在本发明实施例中,可以根据URL#A和URL#B的获取时间来判断URL#A和URL#B是否对应同一视频。
即,可选地,该接收该第一采样URL和该第二采样URL,包括:
在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的。
具体地说,如果网关设备首先接收到URL#A,则可以确定与URL#A相对应的视频A(这里,URL#A可以对应完整的视频A,也可以对应视频A的一个片段),其中,该视频A可以是网关设备从视频服务器获取的,也可以是网关设备利用URL#A中的标识部分而从缓存的视频中获取的(随后,以确定目标URL所对应的第二视频为例,对该过程进行详细说明)。其后,可以确定该视频A的总时长(即,第一视频的时长)。从而可以确定一个判定范围(即,预设范围),该判定范围的起始时刻为URL#A的接收时刻,该判定范围的时长为该视频A的总时长。
如果URL#B的接收时间位于该判定范围内,且该URL#B同样来自用户设备A,则可以认为URL#A和URL#B对应同一视频。接收时间在该判定范围以外的URL则不能作为该URL#B。
根据本发明实施例的传输视频的方法,第一采样URL和第二采样URL的获取时间间隔处于预设范围内,并且该预设范围是根据第一采样URL和第二采样URL均对应的第一视频的时长确定的,能够确保第一采样URL和第二采样URL分别对应第一视频的不同片段,从而能够提高Rang部分提取模型的有效性。
应理解,以上列举的确定URL#A和URL#B对应同一视频的方法仅为示例性说明,本发明并不限定于此,例如,可以根据后述确定标识部分提取模型提取URL#A和URL#B的标识部分,并确定URL#A和URL#B的标识部分相同后,确定URL#A和URL#B对应同一视频,随后,以确定URL#C的标识部分以及所对应的视频C的过程为例,进行详细说明。
网关设备在获取该URL#B之后,可以提取该URL#B的Path部分和/或Quey Param部分,并可以确定URL#B的Path部分的深度和Path值,以及URL#B的Quey Param部分中全部Quey Param的名称和参数值,并记录上述信息以生成第二采样信息集合。该过程与上述针对URL#A的处理过程相似,这里,为了避免赘述,省略其详细说明。
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
具体地说,在本发明实施例中,该URL#A可以是用户在请求观看完整的视频时(例如,用户点击播放图标时)视频网站为该用户设备下发的URL。而上述URL#B可以是用户在发生拖动动作时视频网站为该用户设备下发的URL,从而,能够确保该URL#B与该URL#A中存在差异的字符串与拖动动作相关,进而能够提高本发明实施的Rang部分提取模型的准确性。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于两个视频片段,用于表示该片段在源视频中的位置的Path部分的级别或者Quey Param的名称通常相同,因此通过选用Host部分相同的URL作为上述URL#A和URL#B,能够确保,该生成该URL#A和URL#B的视频网站相同,从而能够提高该Rang部分提取模型的准确性。
其后,可以对上述第一采样信息集合和第二采样信息集合进行对比处理,以确定Rang部分提取模型。
由于如上所述存在URL只存在Path部分而不存在Quey Param部分的情况,因此,可能存在第一采样信息集合和第二采样信息集合中仅包含Path部分的深度和Path值的情况(即,情况1),也可能存在第一采样信息集合和第二采样信息集合中包含Path部分的深度和Path值以及Quey Param部分中全部Quey Param的名称和参数值的情况(即,情况2)。
下面,分别对上述两种情况的处理进行说明。
情况1
网关设备可以遍历URL#A和URL#B的Path部分中各级深度的Path值,当URL#A和URL#B的Path部分的深度相同,或者说,Path部分包括的级数相同时,逐级进行比较,例如,可以首先比较URL#A和URL#B的Path部分中的第一级Path值,即,第一个“/”符号与第二个“/”符号之间的字符串,然后比较URL#A和URL#B的Path部分中的第二级Path值,即,第二个“/”符号与第三个“/”符号之间的字符串,依次类推。
从而,能够URL#A和URL#B中path值彼此相异的级别,以及,该相异的Path值,即,对应上述第一条件。
例如,设URL#A的Path部分为:/sec(44ab57eec5d981faa33)/frag(0)/video/484/516/56615484_mp4_h264_aac_1.flv;
并且,URL#B的Path部分为:/sec(44ab57eec5d981faa33)/frag(1)/video/484/516/56615484_mp4_h264_aac_1.flv,
则网关设备可以确定URL#A和URL#B中path值彼此相异的级别第2级,且URL#A和URL#B中彼此相异path值为frag(0)和frag(1)。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中Path部分中的第二级(即,frag)来标识视频的片段,例如,可以确定“frag”的值用于指示该视频片段相对于完整的视频的起始时间或结束时间。
进而,可以将Rang部分提取模型确定为用于提取URL的Path部分中第2级的path值。
情况2
例如,在本发明实施例中,可能存在第一采样信息集合和第二采样信息集合中Quey Param的数量相同的情况,即,URL#A与URL#B所对应的视频为同一视频的不同视频片段,因此,URL#A与URL#B的Quey Param部分中的Quey Param的数量,或者Quey Param的参数名的数量通常相同。
此情况下,通过对比参数名相同但参数值相异的Quey Param,能够确定用来标识视频的片段的参数名,即,对应上述第二条件。
例如,设URL#A的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=179904090&tflvbegin=18055261;
并且,URL#B的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=213602090&tflvbegin=28941773,
则网关设备可以确定URL#A和URL#B中参数名为“sz”和“tflvbegin”的Quey Param的参数值彼此相异。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中QueyParam部分中的“sz”和“tflvbegin”参数来标识视频的片段,例如,可以确定“sz”和“tflvbegin”的参数值用于指示该视频片段相对于完整的视频的长度和起始时间。进而,网关设备可以将分段部分提取模型确定为用于提取URL的QueyParam部分中的“sz”参数和“tflvbegin”参数。
再例如,在本发明实施例中,也可能存在第一采样信息集合和第二采样信息集合中Quey Param的数量相异的情况。例如,URL#A对应完整的视频A而URL#B对应视频A的一个片段,该URL#A可以是用户在请求观看完整的视频时(例如,用户点击播放图标时)视频网站为该用户设备下发的URL。而上述URL#B可以是用户在发生拖动动作时视频网站为该用户设备下发的URL,因此,URL#A与URL#B的Quey Param部分中的Quey Param的数量,或者Quey Param的参数名的数量可能相异,即,对应上述第三条件。
例如,设URL#A的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470;
并且,URL#B的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=179904090&tflvbegin=18055261,
则网关设备可以确定URL#B中参数名为“sz”和“tflvbegin”的QueyParam的不存在于URL#A。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中QueyParam部分中的“sz”和“tflvbegin”参数来标识视频的片段,例如,可以确定“sz”和“tflvbegin”的参数值用于指示该视频片段相对于完整的视频的长度和起始时间。
进而,网关设备可以将Rang部分提取模型确定为用于提取URL的QueyParam部分中的“sz”参数和“tflvbegin”参数。
需要说明的是,在以上实施例中,列举了使用两个URL来训练获得Rang部分提取模型的过程,但本发明并不限定于此,可以采用更多的个URL来训练获得Rang部分提取模型,例如,在如上所述通过对比URL#A和URL#B从而确定相异部分(包括相异的Path级别及Path值,和/或,相异的QueyParam的名称及参数值,为了便于区分记做,相异部分A)后,还可以获取URL#Y,该URL#Y与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#Y与视频A相对应,其中,该URL#Y的获取过程可以与URL#A和URL#B的获取过程类似,这里为了避免赘述,省略其详细说明。其后,可以对比URL#Y和URL#A或对比URL#Y和URL#B,找出相异部分(包括相异的Path级别及Path值,和/或,相异的Quey Param的名称及参数值,为了便于区分记做,相异部分B),并将该相异部分A与相异部分B进行对比,从中去除相同的部分(包括相同的Path级别及Path值,和相同的QueyParam的名称及参数值)作为Rang部分提取模型的训练依据,能够进一步提高本发明的Rang部分提取模型的准确性。
另外,如上所述,Rang部分中各字符串的可以包括多个参数,例如,“sz”和“tflvbegin”,并且多个参数可以分别指示该视频片段相对于完整的视频的长度和起始时间,因此,需要确定每个参数的具体作用,例如,是由“sz”来指示长度(或,起始时间),还是由“tflvbegin”来指示长度(或,起始时间)。
作为示例而非限定,可以通过验证来确定每个参数的具体作用,具体地说,例如。网关设备可以获取与视频W的视频片段相对应的URL#W,并且,能够利用上述Rang部分提取模型获得该URL#W的Rang部分,例如,该URL#W网关设备可以假设该URL#W中由“sz”来指示长度,而由“tflvbegin”来指示起始时间,从而,能够从缓存的视频W中获取一个视频片段W1。并且,可以将包括该URL#W发送给视频服务器,从而,能够从视频服务器获得准确的视频片段W2,如果视频片段W1与视频片段W2相同,则可以确定假设成立,即由“sz”来指示长度,而由“tflvbegin”来指示起始时间,如果不相同,则可以确定由“sz”来指示起始时间,而由“tflvbegin”来指示程度。
再例如,网关设备可以获取与视频M的多个视频片段(这里,为了便于理解,以两个为例,即视频片段M1和视频片段M2)相对应的URL#M1和URL#M2,并且,能够利用上述Rang部分提取模型获得该URL#M1和URL#M2的Rang部分,例如,该URL#W网关设备可以假设该URL#M1和URL#M2中由“sz”来指示长度,而由“tflvbegin”来指示起始时间,从而,能够根据该URL#M1和URL#M2的Rang部分,推算出该视频M的长度(称为,推算长度),并且,网关设备可以从URL#M1或URL#M2的视频摘要获知该视频M的长度(称为,实际长度),如果推算长度与实际长度相同,则可以确定假设成立。
在如上该获取Rang部分提取模型之后,在S140,当接收到用户设备C(即,第二用户设备的一例)发送的URL#C(即,目标URL的一例)时,网关设备可以获取与该URL#C相对应的视频C(即,第二视频的一例)。
需要说明的是,在本发明实施例中,该用户设备C可以包括上述用户设备A,从而该URL#C可以与上述URL#A或URL#B相同,也可以与上述URL#A或URL#B相异,即,第二用户设备与第一用户设备可以相同也可以相异,本发明并未特别限定,并且视频C可以与上述视频A相同,也可以与上述视频A相异,本发明并未特别限定。
并且,以上说明中以网关设备作为确定分段部分提取模型的过程的执行主体进行说明,但本发明并不限定于此,也可以是由其他设备执行上述确定分段部分提取模型的过程而获得分段部分提取模型后发送给网关设备。
下面对上述确定URL#C相对应的视频C的方法进行详细说明。
可选地,该从缓存设备中确定与该目标URL相对应的第二视频,包括:
确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;
根据标识部分提取模型,确定缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;
遍历该目标URL的非Host部分,如果确定该目标URL的非Host部分中包含该至少一个缓存URL的标识部分的字符串,则确定该缓存视频为该第二视频。
具体地说,当用户请求观看视频时,用户设备会产生一个HTTP消息,发送给视频服务器,以从视频服务器获得该视频,该HTTP消息中携带有视频网站在用户请求观看视频(例如,点击播放图标)时为该用户设备分配的与该视频相对应的URL,并且,在不同用户访问同一个视频,同一个用户不同时间访问同一个视频,都可能获取到不同的URL。如果以完整URL为索引缓存内容,会导致相同视频重复缓存,并且针对所缓存的视频的命中率较低。
对于同一视频,在多个URL(例如,不同用户访问该同一个视频时使用的多个URL,或同一个用户在多个时间访问该同一个视频使用的多个URL)中,存在相同的内容,例如,URL中的连续的一部分字符串即,标识部分。
因此,如果以该标识部分替代完整的URL对缓存的视频进行索引,便能够避免同一视频被重复缓存的情况,并且,能够大幅度地提高针对所缓存的视频的命中率。
在本发明实施例中,可以利用采样URL(即,第三采样URL),通过训练来获得用于从URL中提取标识部分的标识部分提取模型。
即,可选地,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分
具体地说,在本发明实施例中,作为该第三采样URL,可以采用来自不同用户设备的对应于同一视频(为了便于区分,记做视频D)的URL。并且,在本发明实施例中,该第三采样URL的数量为两个或两个以上,为了便于理解和说明,以下,以该第三采样URL为URL#D和URL#E为例,进行说明。
其中,该URL#D与用户设备D相对应,并且,该URL#D与视频D相对应,例如,可以是网关设备从来自该用户设备D的用于请求播放视频D的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备D的用于请求播放视频D的片段的HTTP消息中提取的。
该URL#E与用户设备E相对应,并且,该URL#E与视频D相对应,例如,可以是网关设备从来自该用户设备E的用于请求播放视频D的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备E的用于请求播放视频D的片段的HTTP消息中提取的
需要说明的是,以上列举的URL#D和URL#E的获取过程仅为示例性说明,本发明并未限定于此,例如,该URL#D也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#D与用户设备D相对应,且该URL#D与视频D相对应(例如,现有技术中,该URL#D可以作为完整的视频D的索引,或者该URL#D可以作为视频D的某一片段的索引)即可。
同样,该URL#E也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#E与用户设备E相对应,且该URL#E与视频D相对应(例如,现有技术中,该URL#E可以作为完整的视频D的索引,或者该URL#E可以作为视频D的某一片段的索引)即可。
另外,在本发明实施例中,需要确保URL#D与URL#E对应同一视频(即,视频D)。作为实现方法,可以确定URL#D所对应的视频的视频摘要D,以及URL#E所对应的视频的视频摘要E,当确定视频摘要D与视频摘要E相同时,可以确定URL#D与URL#E对应同一视频。
用户设备在请求获取视频或视频片段时发送的URL中,与视频相对应的上述标识部分通常存在于URL的路径(Path)部分或搜索参数(QueyParam)部分中,即,该标识部分可能是Path部分中的某一深度的Path值,也可能是Quey Param部分中的某一参数的值。
因此,在本发明实施例中,网关设备在获取该URL#D和URL#E之后,可以提取该URL#D的Path部分和/或Quey Param部分,以及该URL#E的Path部分和/或Quey Param部分。
图3示出了URL的字符串中各部分的构成的一例,如图3所示,URL的域名(Host)部分与Path部分之间由“/”符号隔开,因此,网络设备可以将Host部分之后的第一个“/”符号(或者说,URL中的最后一个“/”符号)后的字符识别为Path部分的起始字符。
并且,如图3所示,URL的Path部分与Quey Param部分之间由“?”符号隔开,因此,网络设备可以将Path部分(或者说,URL中的最后一个“/”符号)之后的第一个“?”符号后的字符识别为Path部分的起始字符。从而,能够实现Quey Param部分的提取。
另外,网络设备可以将该path部分之后的第一个“?”符号后的字符识别为Path部分的结束字符,从而,结合上述Path部分的起始字符,能够实现Path部分的提取。
应理解,以上列举的Path部分的提取方法以及Quey Param部分的提取方法仅为示例性说明,本发明并不限定于此,可以根据URL的变化而进行相应变更,例如,存在某些URL只存在Path部分而不存在Quey Param部分的情况,此情况下,只须其确定Path部分的起始字符即可。并且,以上列举的Host部分与Path部分的分隔符号(即,“/”符号)以及Path部分与QueyParam部分之间的分隔符号(即,“?”符号)仅为示例性说明,本发明并不限定于此,现有技术中,URL所采用的能够实现分隔标识作用的符号均落入本发明的保护范围内。
网关设备在完成了对URL#D和URL#E的Path部分提取之后,可以确定URL#D的Path部分的深度和Path值。
具体地说,Path部分的深度(或者说,级别)可以根据Path部分中包括的“/”符号的数量确定,例如,图4示出了URL中的Path部分的一例的示意图。以图4所示的URL为例,该URL包括六个“/”符号,因此,可以确定其深度为6,其中,
第1级深度的Path值为“sec(44ab57eec5d981faa33)”;
第2级深度的Path值为“frag(0)”;
第3级深度的Path值为“video”;
第4级深度的Path值为“484”;
第5级深度的Path值为“516”;
第6级深度的Path值为“56615484_mp4_h264_aac_1.flv”。
同样,网关设备在完成了对URL#D的Quey Param部分提取之后,可以确定URL#A的Quey Param部分中全部Quey Param的名称和参数值。
通常情况下,URL中Quey Param的格式为“NAME=VALUE”,NAME为参数名,Value为参数值。但是,本发明并不限定于此,可以是只有NAME,可以是NAME为空,也可以是VALUE为空,即,URL中Quey Param的格式可为:
“NAME=VALUE”,或
“NAME”,或
“NAME=”或
“=VALUE”。
具体地说,以图3所示的URL为例,该URL包括9个“&”符号,因此,可以确定其包括9个Quey Param,其中,
第1个Quey Param所对应的字符串为“4”,其参数名为“4”,参数值为空;
第2个Quey Param所对应的字符串为“ipbits=0”,其参数名为“ipbits”,参数值为“0”;
第3个Quey Param所对应的字符串为
“signature=.BC606865625583C2BE5AA6472A7536D827ED7E58”,
其参数名为“signature”,参数值为
“.BC606865625583C2BE5AA6472A7536D827ED7E58”;
第4个Quey Param所对应的字符串为“sver=3”,其参数名为“sver”,参数值为“3”;
第5个Quey Param所对应的字符串为“expire=1252105200”,其参数名为“expire”,参数值为“1252105200”;
第6个Quey Param所对应的字符串为“key=yt1”,其参数名为“key”,参数值为“yt1”;
第7个Quey Param所对应的字符串为factor=1.25”,其参数名为“factor”,参数值为“1.25”;
第8个Quey Param所对应的字符串为burst=40”,其参数名为“burst”,参数值为“0”;
第9个Quey Param所对应的字符串为“id=c19764dece17ab”,其参数名为“id”,参数值为“c19764dece17ab”。
从而,如上所述,可以确定URL#D和URL#E的Path部分的深度Path值以及Quey Param部分中各Quey Param的名称和参数值。
由于如上所述存在URL只存在Path部分而不存在Quey Param部分的情况,因此,可能存在URL#D和URL#E仅包含Path部分的深度和Path值的情况(即,情况3),也可能存在URL#D和URL#E中包含Path部分的深度和Path值以及Quey Param部分中全部Quey Param的名称和参数值的情况(即,情况4)。
下面,分别对上述两种情况的处理进行说明。
情况3
网关设备可以遍历URL#D和URL#E的Path部分中各级深度的Path值,当URL#D和URL#E的Path部分的深度相同,或者说,Path部分包括的级数相同时,逐级进行比较,例如,可以首先比较URL#D和URL#E的Path部分中的第一级Path值,即,第一个“/”符号与第二个“/”符号之间的字符串,然后比较URL#D和URL#E的Path部分中的第二级Path值,即,第二个“/”符号与第三个“/”符号之间的字符串,依次类推。
从而,能够URL#D和URL#E中path值相同的级别,以及,该相同的Path值。
例如,设URL#D的Path部分为:/sec(44ab57eec5d981faa33)/frag(0)/video/484/516/56615484_mp4_h264_aac_1.flv;
并且,URL#E的Path部分为:/sec(98ac09efd2e662cef97)/frag(0)/video/580/720/56615484_mp4_h264_aac_1.flv,
则网关设备可以确定URL#D和URL#E中path值相同的级别第2级、第3级和第5级。
从而,网关设备可以确定发布该视频D的视频网站是通过URL中Path部分中的第2级、第3级和第5级来标识视频的片段,例如,可以确定Path部分中第2级、第3级和第5级的值用于指示该视频D。
进而,可以将标识部分提取模型确定为用于提取URL的Path部分中Path部分中第2级、第3级和第5级的Path值。
可选地,该方法还包括:
获取第四采样URL以及第四视频,其中,该第四采样URL与该第四视频相对应,该第四视频与该第三视频相异;
根据标识部分提取模型,确定该第四采样URL的标识部分;
确定该第四采样URL的标识部分与该第三采样URL的标识部分之间的重叠部分,该重叠部分包括Path值相同的Path级别和/或参数值相同的QueyParam;
从该第三采样URL的标识部分中去除该重叠部分,以更新该第三采样URL的标识部分;
根据更新后的第三采样URL的标识部分,更新该标识部分提取模型。
具体地说,为了进一步提高如上所述确定的标识部分提取模型的准确性,还可以获取与视频N(第四视频的一例)所对应的URL#N(第四采样URL的一例),其中,发布该视频N和视频D的视频网站相同,并且,该视频N与视频D相异(例如,视频摘要相异)。
例如,设URL#N的Path部分为:/sec(74cf57abe5f336fbe78)/frag(0)/video/665/896/91362310_wma_p135_aac_8.flv;
则网关设备可以确定URL#N、URL#D和URL#E中path值相同的级别第2级和第3级,进而可以判定Path部分中第2级和第3级不能用于区分视频。
从而,网关设备可以确定发布该视频D和视频N的视频网站是通过URL中Path部分中的第5级来标识视频的片段,例如,可以确定URL#D的Path部分中第5级的值用于指示该视频D。
进而,可以将标识部分提取模型确定为用于提取URL的Path部分中Path部分中第5级的Path值。
情况4
网关设备可以遍历URL#D和URL#E的Quey Param部分中各QueyParam的参数值,从而,能够确定URL#D和URL#E中参数值相同的QueyParam,以及,该相同的Path值。
例如,设URL#D的Quey Param部分为:
4&ipbits=0&signature=.BC606865625583C2BE5AA6472A7536D827ED7E58&sver=3&expire=1252105200&key=yt1&factor=1.25&burst=40&id=c19764dece17ab
并且,URL#E的Quey Param部分为:
5&ipbits=1&signature=9879DD9541B65704625CAB118092DFD151856C&sver=4&expire=1252105201&key=yt1&factor=2.25&burst=50&id=c19764dece17ab
则网关设备可以确定URL#D和URL#E中参数名为“key”“和id”的Quey Param的参数值相同。
从而,网关设备可以确定发布该视频D的视频网站是通过URL中QueyParam部分中的“key”“和id”参数来标识视频,例如,可以确定“key”“和id”的参数值用于指示该视频D。
进而,网关设备可以将标识部分提取模型确定为用于提取URL的QueyParam部分中的“key”“和id”参数。
情况4中基于Path部分来训练获得标识部分提取模型的方法和过程与情况3类似,这里,为了避免赘述,省略其说明。
另外,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的级别或者Quey Param的名称通常相同,因此通过选用Host部分相同的URL作为上述URL#D和URL#E,能够确保,该生成该URL#D和URL#E的视频网站相同,从而能够提高该标识部分提取模型的准确性。
需要说明的是,在以上实施例中,列举了使用两个URL来训练获得标识部分提取模型的过程,但本发明并不限定于此,可以采用更多的个URL来训练获得标识部分提取模型,例如,在如上所述通过对比URL#D和URL#E从而确定相同部分(包括相同的Path级别及Path值,和/或,相同的QueyParam的名称及参数值,为了便于区分记做,相同部分A)后,还可以获取URL#Z,该URL#Z与用户设备Z相对应,并且,该URL#Z与视频D相对应,该URL#Y的获取过程可以与URL#A和URL#B的获取过程类似,这里为了避免赘述,省略其详细说明。其后,可以对比URL#Z和URL#D或对比URL#Z和URL#E,找出相同部分(包括相同的Path级别及Path值,和/或,相同的Quey Param的名称及参数值,为了便于区分记做,相同部分B),并将该相同部分A与相同部分B进行对比,从中去除相异的部分(包括相已的Path级别及Path值,和相异的Quey Param的名称及参数值)作为标识部分提取模型的训练依据,能够进一步提高本发明的标识部分提取模型的准确性。
在本发明实施例中,网关设备可以对从各视频服务器获得的视频(即,缓存视频的一例)进行缓存,并且,可以根据如上所述获得的标识部分提取模型,从各视频所对应的URL(即,缓存URL的一例)中提取各视频的标识,作为对应视频的索引。
可选地,该方法还包括:
接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
向视频服务器转发该验证URL;
接收该视频服务器根据该验证URL发送的验证视频;
确定该验证视频与该缓存视频相同。
具体地说,在本发明实施例中,为了验证上述标识部分提取模型的准确性,可以进行在线验证,例如,在接收到一个用户设备X发送的URL#X后,可以根据上述标识部分提取模型提取该URL#X中的标识部分,并作为索引,从上述缓存视频中确定与该URL#X相对应的视频X1,并且,可以将该URL#X转发至视频服务器,并且从视频服务器获得与该视频相对应的视频X2,如果视频X1与视频X2相同,则可以认为上述标识部分提取模型是准确地。如果视频X1与视频X2不相同,则可以认为上述标识部分提取模型是不准确地,并可以重新选择采样URL,以训练获得新的标识部分提取模型。
返回确定URL#C相对应的视频C的过程,即,在网关设备接收到URL#C后,可以利用标识部分提取模型,获取视频C的标识,作为索引,从所缓存的视频中,查找到该视频C。
可选地,在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Host部分与各该缓存URL中的至少一个URL的Host部分相同。
并且,可选地,各该缓存URL的Host部分相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的级别或者Quey Param的名称通常相同,因此,在确定URL#C的Host部分与缓存URL的Host部分相同后,能够确定URL#C所对应的视频网站与该缓存URL的视频网站相同,从而能够可靠地通过该标识部分提取模型确定URL#C中用于标识视频C的字符,进一步提高所获取的视频的准确性。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Path部分的深度与各该缓存URL的Path部分的深度相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的Path部分的深度相同,因此,如果确定URL#C的Path部分的深度与缓存URL的Path部分的深度不相同,则可以确定与该URL#C相对应的视频未被缓存,从而,无需进行查找动作,能够提高本发明实施例的传输视频的方法的效率,改善用户体验。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,
该方法还包括:
获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
具体地说,网关设备可以确定用于训练获得上述标识部分提取模型的各URL的Quey Param的参数名,并生成包括上述各参数名的参数名集合,并且,如果URL#C包括的各Quey Param的参数名均不属于该参数名集合,则可以确定,无法根据上述标识部分提取模型从该URL#C中提取到用于指示该视频C的标识,从而无需进行后续动作,能够提高本发明实施例的传输视频的方法的效率,改善用户体验。
应理解,以上列举的确定与URL#C相对应的视频C的方法仅为示例性说明,本发明并不限定于此,例如,也可以以完整的URL#C,作为视频C的缓存索引,或者,也可以直接将该URL#C转发给视频服务器,以从视频服务器获得该视频C。
在确定与URL#C相对应的视频C后,可以根据如上所述获得的Rang部分提取模型,确定URL#C的Rang部分,进而可以确定与该Rang部分相对应的视频片段在视频C中的位置,例如,起始时间或结束时间,进而,可以从该视频C中截取与该URL#C的Rang部分相对应的视频片段(即,目标视频片段的一例)。
从而,网关设备可以将该视频片段发送给用户设备C。
根据本发明实施例的传输视频的方法,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了根据本发明实施例的传输视频的方法,下面,结合图详细说明根据本发明实施例的用于实施上述方法的网关设备;其中,如前所述,该网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;并且所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备,其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器。
图5示出了根据本发明实施例的网关设备200的示意性框图,如图5所示,该网关设备200包括:
接收单元220,用于用于接收第二用户设备发送的目标URL;
确定单元210,用于从缓存设备中确定与该目标URL相对应的第二视频,根据分段部分提取模型,确定该目标URL的分段部分,并根据该目标URL的分段部分,从该第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
发送单元230,用于向该第二用户设备发送该目标视频片段。
可选地,该接收单元210还用于接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;
该确定单元210还用于根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL确定该第二采样信息集合,根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据该分段信息,确定该分段部分提取模型。
可选地,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样信息集合包括第一信息和第二信息中的至少一种信息,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息为K个,K个该第二信息与该第一采样URL的K个Quey Param一一对应,各该第二信息分别用于指示所对应的Quey Param的名称和参数值;该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样信息集合包括第三信息和第四信息中的至少一种信息,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息为M个,M个该第四信息与该第二采样URL的M个Quey Param一一对应,各该第四信息分别用于指示所对应的Quey Param的名称和参数值。
可选地,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
可选地,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,接收单元210具体用于在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的。
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
可选地,确定单元210还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据该标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含所述至少一个缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存URL均与所述缓存视频相对应。
可选地,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
可选地,在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当该目标URL的Host部分与缓存设备中已缓存的缓存视频的各个缓存URL的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分,以及
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当该目标URL的Path部分与各该缓存URL的至少一个URL的Path部分相同时,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;当该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合时,遍历所述目标URL的非Host部分。
可选地,该接收单元210还用于接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
该发送单元230还用于向视频服务器转发该验证URL;
该接收单元220还用于接收该视频服务器根据该验证URL发送的验证视频;
该确定单元230还用于确定该验证视频与该缓存视频相同。
可选地,该缓存视频属于该第三视频。
可选地,该接收单元210还用于确定该目标URL的Host部分的字符串与该第一采样URL的Host部分的字符串相同;或
用于确定该目标URL的Host部分的字符串与该第二采样URL的Host部分的字符串相同。
根据本发明实施例的网关设备200可对应于本发明实施例的方法中的网关设备,并且,该网关设备200中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的网关设备,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了本发明实施例的传输视频的方法,下面,结合图6,详细说明本发明实施例的网关设备,其中,该网关设备的一侧与一个或多个视频服务器具有通信连接,该网关设备的另一侧与一个或多个用户设备也具有通信连接;该网关设备与缓存设备具有通信连接,或者,该网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;该网关设备用于实现本发明实施例的传输视频的方法,相关实现细节可以参考前述方法实施例。
图6示出了本发明实施例的网关设备300,如图6所示,该设备300包括:
总线310;
与所述总线310相连的处理器320;
与所述总线310相连的存储器330;
与所述总线310相连的收发机340;
其中,该处理器320通过所述总线310,调用所述存储器330中存储的程序,以用于:
控制收发机340接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;其中,第二用户设备为视频传输系统包括的至少一个用户设备中的一个;第二视频来自于目标视频服务器,例如,是在第二用户设备发送该目标URL之前,网关设备300从视频服务器获取并缓存到缓存设备中的;
根据分段部分提取模型,确定该目标URL的分段部分;
根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。
可选地,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的QueyParam部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个QueyParam,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
可选地,该处理器320还用于控制收发机340接收该第一采样URL和该第二采样URL;
用于根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL确定该第二采样信息集合;
用于根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定该分段信息;
用于根据该分段信息,确定该分段部分提取模型。
可选地,该处理器320具体用于控制收发机340在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
可选地,该处理器320具体控制收发机340接收缓存视频以及至少一个缓存URL,其中,各该缓存URL均与该缓存视频相对应;
用于根据标识部分提取模型,确定该缓存URL的标识部分,其中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分;
用于遍历该目标URL的非Host部分,如果确定该目标URL的非Host部分中包含该至少一个缓存URL的标识部分的字符串,则确定该缓存视频为该第二视频。
可选地,该处理器320具体用于确定该目标URL的Host部分与各该缓存URL中的至少一个URL的Host部分相同。
可选地,各该缓存URL的Host部分相同。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
可选地,该处理器320具体用于确定该目标URL的Path部分的深度与各该缓存URL的Path部分的深度相同。
可选地,该非Host部分包括路径Path部分,以及
该处理器320具体用于确定该目标URL的Path部分与各该缓存URL的至少一个URL的Path部分相同。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,以及
该处理器320具体用于获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
用于确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
可选地,该处理器320具体用于控制接收机340接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
用于控制接收机340向视频服务器转发该验证URL;
用于控制接收机340接收该视频服务器根据该验证URL发送的验证视频;
用于确定该验证视频与该缓存视频相同。
可选地,该缓存视频属于该第三视频。
可选地,该处理器320具体用于确定该目标URL的Host部分的字符串与该第一采样URL的Host部分的字符串相同;或
确定该目标URL的Host部分的字符串与该第二采样URL的Host部分的字符串相同。
在本发明实施例中,处理单器还可以称为CPU。存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和信号。存储器的一部分还可以包括非易失行随机存取存储器(NVRAM)。具体的应用中,传输信号的设备可以嵌入或者本身可以就是例如个人电脑之类的标准以太网通信设备,传输信号的设备的各个模块通过总线系统耦合在一起,其中,总线系统除包括信号总线之外,还包括电源总线、控制总线和状态信号总线。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,解码单元或者处理单元读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,在本发明实施例中,该处理器可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的网关设备300可对应于本发明实施例的方法中的网关设备,并且,该网关设备300中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的网关设备,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了本发明实施例的传输视频的方法,下面,结合图7,详细说明本发明实施例的视频传输系统。
图7示出了本发明实施例的视频传输系统400,如图7所示,该系统600包括:
用户设备410,用于向该网关设备发送统一资源定位符URL,并从该网关设备获取与该URL相对应的视频;
网关设备420,用于确定分段部分提取模型,该分段部分提取模型用于指示统一资源定位符URL的分段部分;接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;根据该分段部分提取模型,确定该目标URL的分段部分;根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段;
视频服务器430,用于接收网关设备转发的该URL,确定与该URL相对应的视频,并向该网关设备发送该视频。
可选地,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的QueyParam部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个QueyParam,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
根据本发明实施例的视频传输系统400中的网关设备420可对应于本发明实施例的方法中的网关设备,并且,网关设备420中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的视频传输系统,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (23)

1.一种传输视频的方法,其特征在于,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述方法包括:
所述网关设备接收所述第二用户设备发送的目标URL,并从所述缓存设备中确定与所述目标URL相对应的第二视频;其中,所述第二视频来自于所述目标视频服务器;
所述网关设备根据分段部分提取模型,确定所述目标URL的分段部分;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
所述网关设备根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段,并向所述第二用户设备发送所述目标视频片段。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述网关设备接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合;
根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息;
根据所述分段信息,确定所述分段部分提取模型。
3.根据权利要求2所述的方法,其特征在于,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的QueyParam部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个QueyParam的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
4.根据权利要求2或3所述的方法,其特征在于,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;
所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的QueyParam的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;
所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
5.根据权利要求2-4任一项所述的方法,其特征在于,所述网关设备接收来自第一用户设备的第一采样URL和所述第二采样URL,包括:
所述网关设备在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
6.根据权要求1至6中任一项所述的方法,其特征在于,所述从缓存设备中确定与所述目标URL相对应的第二视频,包括:
确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;
根据标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;
遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频。
7.根据权利要求6所述的方法,其特征在于,所述标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各所述第三采样URL均与第三视频相对应,各所述第三采样URL的字符串相异,各所述第三采样URL的标识部分的字符串相同,各所述第三采样URL所对应的用户设备相异,所述标识部分包含于各所述第三采样URL的非Host部分,所述非Host部分是URL的字符串中除Host部分以外的部分。
8.根据权利要求6或7所述的方法,其特征在于,所述遍历所述目标URL的非Host部分包括:
当所述目标URL的Host部分与各所述缓存URL中的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
9.根据权利要求6或7中任一项所述的方法,其特征在于,所述非Host部分包括路径Path部分,各所述缓存URL的Path部分的深度相同,以及
所述遍历所述目标URL的非Host部分包括:
当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
10.根据权利要求6或7所述的方法,其特征在于,所述非Host部分包括路径Path部分,以及
所述遍历所述目标URL的非Host部分包括:
当所述目标URL的Path部分与各所述缓存URL的至少一个URL的Path部分相同的情况下,遍历所述目标URL的非Host部分。
11.根据权利要求6或7中任一项所述的方法,其特征在于,所述非Host部分包括Path部分和Quey Param部分,
所述方法还包括:
确定各所述缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
所述遍历所述目标URL的非Host部分包括:
当所述目标URL的Quey Param部分所包含的搜索参数的参数名属于所述参数名集合的情况下,遍历所述目标URL的非Host部分。
12.根据权利要求6至11中任一项所述的方法,其特征在于,所述方法还包括:
接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;
向所述视频服务器转发所述验证URL;
接收所述视频服务器根据所述验证URL发送的验证视频;
确定所述验证视频与所述缓存视频相同。
13.一种网关设备,其特征在于,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述网关设备包括:
接收单元,用于接收所述第二用户设备发送的目标URL;
确定单元,用于从所述缓存设备中确定与所述目标URL相对应的第二视频,根据分段部分提取模型,确定所述目标URL的分段部分,并根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
发送单元,用于向所述第二用户设备发送所述目标视频片段。
14.根据权利要求13所述的网关设备,其特征在于,所述接收单元还用于接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;
所述确定单元还用于,根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合,根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据所述分段信息,确定所述分段部分提取模型。
15.根据权利要求14所述的网关设备,其特征在于,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的QueyParam部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个QueyParam的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
16.根据权利要求14或15所述的网关设备,其特征在于,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;
所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的QueyParam的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;
所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
17.根据权利要求14-16任一项所述的网关设备,其特征在于,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,所述接收单元具体用于在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
18.根据权要求13至17中任一项所述的网关设备,其特征在于,
所述确定单元还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据所述标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存URL均与所述缓存视频相对应。
19.根据权利要求18所述的网关设备,其特征在于,所述标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各所述第三采样URL均与第三视频相对应,各所述第三采样URL的字符串相异,各所述第三采样URL的标识部分的字符串相同,各所述第三采样URL所对应的用户设备相异,所述标识部分包含于各所述第三采样URL的非Host部分,所述非Host部分是URL的字符串中除Host部分以外的部分。
20.根据权利要求18或19所述的网关设备,其特征在于,在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Host部分与各所述缓存URL中的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
21.根据权利要求18或19所述的网关设备,其特征在于,所述非Host部分包括路径Path部分,各所述缓存URL的Path部分的深度相同,以及
在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
22.根据权利要求18至21中任一项所述的网关设备,其特征在于,所述接收单元还用于接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;
所述发送单元还用于向所述视频服务器转发所述验证URL;
所述接收单元还用于接收所述视频服务器根据所述验证URL发送的验证视频;
所述确定单元还用于确定所述验证视频与所述缓存视频相同。
23.一种视频传输系统,其特征在于,所述系统包括:
根据权利要求13至22中任一项所述的网关设备;
用户设备,用于向所述网关设备发送统一资源定位符URL,并从所述网关设备获取与所述URL相对应的视频;
视频服务器,用于接收网关设备转发的所述URL,确定与所述URL相对应的视频,并向所述网关设备发送所述视频。
CN201410461427.1A 2014-09-11 2014-09-11 传输视频的方法、网关设备和视频传输系统 Active CN104301743B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201410461427.1A CN104301743B (zh) 2014-09-11 2014-09-11 传输视频的方法、网关设备和视频传输系统
EP15839268.8A EP3185563A4 (en) 2014-09-11 2015-05-28 Video transmission method, gateway device and video transmission system
PCT/CN2015/080034 WO2016037497A1 (zh) 2014-09-11 2015-05-28 传输视频的方法、网关设备和视频传输系统
US15/456,137 US10085046B2 (en) 2014-09-11 2017-03-10 Video transmission method, gateway device, and video transmission system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410461427.1A CN104301743B (zh) 2014-09-11 2014-09-11 传输视频的方法、网关设备和视频传输系统

Publications (2)

Publication Number Publication Date
CN104301743A true CN104301743A (zh) 2015-01-21
CN104301743B CN104301743B (zh) 2018-02-23

Family

ID=52321276

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410461427.1A Active CN104301743B (zh) 2014-09-11 2014-09-11 传输视频的方法、网关设备和视频传输系统

Country Status (4)

Country Link
US (1) US10085046B2 (zh)
EP (1) EP3185563A4 (zh)
CN (1) CN104301743B (zh)
WO (1) WO2016037497A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016037497A1 (zh) * 2014-09-11 2016-03-17 华为技术有限公司 传输视频的方法、网关设备和视频传输系统
CN106953892A (zh) * 2017-02-14 2017-07-14 北京时间股份有限公司 一种获取文件的方法、装置及系统
CN107431700A (zh) * 2015-03-02 2017-12-01 高通股份有限公司 对于部分段的指示
CN107911712A (zh) * 2017-11-30 2018-04-13 歌尔科技有限公司 数据缓冲方法和电子设备
TWI661718B (zh) * 2017-02-08 2019-06-01 新加坡商雲網科技新加坡有限公司 視頻緩衝規則的生成系統及方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111491018B (zh) * 2020-04-07 2022-06-10 中国建设银行股份有限公司 模型下载方法及系统
CN111881108B (zh) * 2020-07-27 2021-05-14 广州锦行网络科技有限公司 一种基于web ssh的文件传输方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090043906A1 (en) * 2007-08-06 2009-02-12 Hurst Mark B Apparatus, system, and method for multi-bitrate content streaming
CN102714602A (zh) * 2009-12-04 2012-10-03 清流迅有限公司 通过网络传输显示用多媒体内容的系统和方法
CN102868909A (zh) * 2011-10-17 2013-01-09 苏州迈科网络安全技术股份有限公司 Mp4在线视频缓存方法及装置
US20130103689A1 (en) * 2009-09-02 2013-04-25 Electronics And Telecommunications Research Institute Media mediator system and method for managing contents of various formats

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012016226A1 (en) * 2010-07-30 2012-02-02 Bytemobile, Inc. Systems and methods for video cache indexing
US8892680B2 (en) * 2011-01-25 2014-11-18 Openwave Mobility, Inc. System and method for caching content elements with dynamic URLs
US20120310941A1 (en) * 2011-06-02 2012-12-06 Kindsight, Inc. System and method for web-based content categorization
JP2013038766A (ja) * 2011-07-12 2013-02-21 Sharp Corp 送信装置、送信装置の制御方法、制御プログラム、及び記録媒体
WO2013148003A1 (en) 2012-03-26 2013-10-03 Unicorn Media, Inc. Dynamic audio track selection for media streaming
US9749375B2 (en) * 2013-01-16 2017-08-29 Futurewei Technologies, Inc. URL parameter insertion and addition in adaptive streaming
EP2957052B1 (en) * 2013-03-14 2022-07-20 Apple Inc. Media delivery service protocol to support large numbers of client with error failover processes
CN104301743B (zh) * 2014-09-11 2018-02-23 华为技术有限公司 传输视频的方法、网关设备和视频传输系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090043906A1 (en) * 2007-08-06 2009-02-12 Hurst Mark B Apparatus, system, and method for multi-bitrate content streaming
US20130103689A1 (en) * 2009-09-02 2013-04-25 Electronics And Telecommunications Research Institute Media mediator system and method for managing contents of various formats
CN102714602A (zh) * 2009-12-04 2012-10-03 清流迅有限公司 通过网络传输显示用多媒体内容的系统和方法
CN102868909A (zh) * 2011-10-17 2013-01-09 苏州迈科网络安全技术股份有限公司 Mp4在线视频缓存方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016037497A1 (zh) * 2014-09-11 2016-03-17 华为技术有限公司 传输视频的方法、网关设备和视频传输系统
US10085046B2 (en) 2014-09-11 2018-09-25 Huawei Technologies Co., Ltd. Video transmission method, gateway device, and video transmission system
CN107431700A (zh) * 2015-03-02 2017-12-01 高通股份有限公司 对于部分段的指示
TWI661718B (zh) * 2017-02-08 2019-06-01 新加坡商雲網科技新加坡有限公司 視頻緩衝規則的生成系統及方法
US10547876B2 (en) 2017-02-08 2020-01-28 Nanning Fugui Precision Industrial Co., Ltd. Video cache rule generation system and method
CN106953892A (zh) * 2017-02-14 2017-07-14 北京时间股份有限公司 一种获取文件的方法、装置及系统
CN107911712A (zh) * 2017-11-30 2018-04-13 歌尔科技有限公司 数据缓冲方法和电子设备
CN107911712B (zh) * 2017-11-30 2020-10-09 歌尔科技有限公司 数据缓冲方法和电子设备

Also Published As

Publication number Publication date
EP3185563A4 (en) 2017-08-16
WO2016037497A1 (zh) 2016-03-17
US20170188055A1 (en) 2017-06-29
EP3185563A1 (en) 2017-06-28
CN104301743B (zh) 2018-02-23
US10085046B2 (en) 2018-09-25

Similar Documents

Publication Publication Date Title
CN104301743A (zh) 传输视频的方法、网关设备和视频传输系统
CN104320377B (zh) 一种流媒体文件的防盗链方法及设备
CN104144419B (zh) 一种身份验证的方法、装置及系统
CN104468592B (zh) 登录方法和登录系统
US20150312296A1 (en) Method and device for pushing multimedia resource and display terminal
WO2018103405A1 (zh) 识别接入点和热点的方法及相关产品
CN103139137B (zh) 网络服务提供方法及装置
CN105490886A (zh) 一种测试网络速度的方法、装置及电子设备
KR20170121242A (ko) 신원 인증 방법, 장치 및 시스템
CN103401836A (zh) 一种用于判断网页是否被isp劫持的方法与设备
CN104519050A (zh) 登录方法和登录系统
CN110247986A (zh) 一种文件传输方法、装置及电子设备
CN108134816B (zh) 对远程设备上的数据的访问
KR101491639B1 (ko) 통신망의 종류를 구분하는 방법 및 이를 이용한 콘텐츠 제공 방법
EP3310048B1 (en) Video bit rate identification method and device
CN109982068B (zh) 合成视频质量评估方法、装置、设备及介质
CN104301875A (zh) 短消息处理方法和装置
WO2015081693A1 (zh) 一种网络共享用户识别方法及装置
CN104394475A (zh) 一种流媒体文件的播放方法及媒体播放器
CN104010035A (zh) 一种应用程序分发的方法及系统
CN113038192B (zh) 视频处理方法、装置、电子设备和存储介质
CN105516395A (zh) 网络地址分配方法和装置
CN112511459A (zh) 一种流量识别方法、装置、电子设备及存储介质
CN104301806A (zh) 视频识别方法、装置和系统
CN103327036A (zh) 互联网浏览设备的标识方法以及Cookie服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant