CN109640113A - 一种拖拉视频数据的处理方法及代理服务器 - Google Patents
一种拖拉视频数据的处理方法及代理服务器 Download PDFInfo
- Publication number
- CN109640113A CN109640113A CN201811623054.8A CN201811623054A CN109640113A CN 109640113 A CN109640113 A CN 109640113A CN 201811623054 A CN201811623054 A CN 201811623054A CN 109640113 A CN109640113 A CN 109640113A
- Authority
- CN
- China
- Prior art keywords
- video
- dilatory
- data
- request
- metadata
- 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
Links
- 230000000916 dilatatory effect Effects 0.000 title claims abstract description 203
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 230000004044 response Effects 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000004590 computer program Methods 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000013481 data capture Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- AWSBQWZZLBPUQH-UHFFFAOYSA-N mdat Chemical compound C1=C2CC(N)CCC2=CC2=C1OCO2 AWSBQWZZLBPUQH-UHFFFAOYSA-N 0.000 description 4
- 230000006854 communication Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
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/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- 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/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
- H04N21/2225—Local VOD servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1045—Proxies, e.g. for session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- 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/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- 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/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/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- 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/60—Network 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/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Library & Information Science (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种拖拉视频数据的处理方法及代理服务器,其中,所述方法包括:接收客户端发起的指向目标视频的视频拖拉请求;响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求;解析反馈的元数据和媒体数据头部信息,得到所述目标视频的元数据实例,并确定视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并将反馈的拖拉视频数据发送至所述客户端。本申请提供的技术方案,能够使得代理服务器也能够正常处理视频拖拉请求。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种拖拉视频数据的处理方法及代理服务器。
背景技术
随着网络通信带宽的不断增加,当前的视频播放网站通常都支持视频在线播放。用户在线观看视频时,可以对视频的播放进度进行拖拉。用户在对视频进行一次拖拉后,视频客户端便会产生一次视频拖拉请求,该请求可以被视频客户端发送至存储视频的资源服务器。这样,资源服务器可以根据视频拖拉请求向视频客户端反馈对应的视频内容。
目前的这种视频拖拉的实现方式,在资源服务器中通常都需要存在已经缓存或者已经存储的视频文件,这样,资源服务器才能够根据视频拖拉请求向视频客户端反馈对应的内容。
然而在现有的一些网络架构中,视频客户端和资源服务器之间往往是通过代理服务器进行数据转发,而在代理服务器中,通常不会缓存视频文件,从而使得当前的代理服务器无法有效地处理视频客户端发起的视频拖拉请求。
发明内容
本申请的目的在于提供一种拖拉视频数据的处理方法及代理服务器,能够使得代理服务器也能够正常处理视频拖拉请求。
为实现上述目的,本申请一方面提供一种拖拉视频数据的处理方法,所述方法包括:接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数;根据所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
为实现上述目的,本申请另一方面还提供一种代理服务器,所述代理服务器包括:视频拖拉请求接收单元,用于接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数;数据获取单元,用于响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;位置确定单元,用于解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;拖拉视频数据发送单元,用于构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
为实现上述目的,本申请另一方面还提供一种代理服务器,所述代理服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的拖拉视频数据的处理方法。
为实现上述目的,本申请另一方面还提供一种拖拉视频数据的处理方法,所述方法包括:接收客户端发起的指向目标视频的视频拖拉请求,并从预设哈希表中查询所述视频拖拉请求对应的元数据实例;根据所述元数据实例,确定所述视频拖拉请求在所述目标视频的媒体数据中对应的起始位置和终止位置;构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
为实现上述目的,本申请另一方面还提供一种代理服务器,所述代理服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的拖拉视频数据的处理方法。
由上可见,本申请提供的技术方案,代理服务器在接收到客户端发起的指向目标视频的视频拖拉请求后,可以根据该请求构建视频区域请求,该视频区域请求可以从源站服务器中获取目标视频的部分数据,这部分数据可以包括目标视频的元数据和媒体数据头部信息。代理服务器通过解析元数据和媒体数据头部信息,可以得到目标视频的元数据实例。该元数据实例中可以包括目标视频的每个视频帧的信息,例如可以包括视频帧在目标视频中对应的播放时间节点以及该视频帧在目标视频的数据中的偏移量。然后,根据上述视频拖拉请求中的视频拖拉参数,可以计算出该视频拖拉参数在目标视频的媒体数据中对应的起始位置和终止位置。然后,通过构建包含所述起始位置和所述终止位置的数据获取请求,从而可以从源站服务器处获取对应的拖拉视频数据,并可以将所述拖拉视频数据发送至所述客户端。这样,通过本申请提供的技术方案,能够使得代理服务器也能正常处理客户端的视频拖拉请求,并能够成功向客户端反馈对应的拖拉视频数据。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中的***架构示意图;
图2是本发明实施方式中拖拉视频数据的处理方法流程图;
图3是本发明实施方式中客户端、代理服务器以及源站服务器之间的交互示意图;
图4是本发明实施方式中代理服务器的功能模块示意图;
图5是本发明另一个实施方式中拖拉视频数据的处理方法流程图;
图6是本发明实施方式中代理服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本申请提供一种拖拉视频数据的处理方法,所述方法可以应用于如图1所示的***架构中。在该***架构中,可以包括客户端、代理服务器和源站服务器。所述客户端可以是用户使用的终端设备。所述终端设备例如可以是智能手机、平板电脑、笔记本电脑、个人计算机、智能电视、智能可穿戴设备(智能手表、虚拟现实眼镜等)等电子设备。所述客户端还可以是运行于上述电子设备中的具备视频播放功能的软件。例如,所述客户端可以是优酷、爱奇艺、哔哩哔哩、AcFun等视频客户端。所述代理服务器可以通过转发客户端和源站服务器之间的请求或者数据,从而保持客户端和源站服务器之间的数据互通。当然,在实际应用中,所述源站服务器也可以是缓存了视频文件的缓存服务器,为了描述方便,在本申请中均通过源站服务器进行描述。因此,本申请中的源站服务器,实际上是指存储或者缓存了视频文件的服务器,并非表示与源站服务器之间的通信过程就一定是回源过程。
请参阅图2和图3,本实施方式中提供的拖拉视频数据的处理方法,其执行主体可以是上述的代理服务器。如图2和图3所示,所述方法可以包括以下步骤。
S1:接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数。
在本实施方式中,用户在客户端中观看在线视频时,可以通过拖拉进度条的方式来调节视频的播放进度。在拖拉动作完成后,进度条所处的位置就可以是视频开始播放的位置。在实际应用中,完整的视频文件可以划分为多个视频片段存储于源站服务器中,客户端可以从源站服务器处依次获取各个视频片段的数据并进行播放。因此,用户在完成拖拉动作后,根据进度条所处的位置可以确定拖拉起始时间点,然后可以识别出根据该拖拉起始时间点所处的视频片段,并将识别出的视频片段的结尾时间节点作为拖拉终止时间点。这样,当用户完成一次拖拉操作后,客户端便可以生成用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数,然后,客户端便可以向代理服务器发送一个HTTP请求,该HTTP请求中可以携带所述目标视频的加载地址和上述的视频拖拉参数,该HTTP请求便可以是步骤S1中的指向目标视频的视频拖拉请求。这样,代理服务器便可以接收到客户端发来的所述视频拖拉请求。
S3:响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息。
在本实施方式中,代理服务器接收到所述视频拖拉请求后,可以通过对目标视频的元数据进行分析的方式,获取到该视频拖拉请求对应的拖拉视频数据。具体地,视频文件的数据中通常可以包括多个组成部分。以mp4格式的视频文件为例,mp4视频文件中通常可以包括ftyp box、moov box、mdat box等多个组成部分。其中,ftyp box可以注明视频文件的格式,并描述视频文件的版本、兼容协议等;moov box中可以包含视频文件的元数据,该元数据可以描述视频中每一个视频帧的信息;mdat box则可以包含视频文件的媒体数据,该媒体数据被客户端解析后可以播放对应的视频内容。在实际应用中,mdat box中可以包含头部信息和本体信息,其中,本体信息中可以存放实际的媒体数据,而头部信息则可以用于描述本体信息中媒体数据的数据大小以及媒体数据在整个视频文件中的数据偏移量。
在本实施方式中,代理服务器首先可以尝试从源站服务器中获取视频文件的元数据。因此,代理服务器可以从所述视频拖拉请求中提取出所述目标视频的加载地址,该加载地址例如可以是目标视频的URL(Uniform Resource Locator,统一资源定位符)。然后,代理服务器可以生成第一数据区间。所述第一数据区间可以由起始数据偏移量和终止数据偏移量来限定。该第一数据区间的目的是能涵盖视频文件中元数据的起始位置。在实际应用中,可以根据视频文件格式的不同,选用对应的第一数据区间。例如,对于mp4文件而言,1024的数据长度通常能够覆盖moov box的起始位置,那么所述第一数据区间的数据偏移量和终止数据偏移量可以分别是0和1023,从而可以构成[0,1023]这样的具备1024数据长度的数据区间。这样,代理服务器可以构建包含所述加载地址和所述第一数据区间的第一视频区域请求,并向存储所述目标视频的源站服务器发送所述第一视频区域(range)请求。
在本实施方式中,源站服务器在接收到所述第一视频区域请求后,通过其中的加载地址,可以确定代理服务器目前需要获取的是哪个视频的数据,然后根据第一数据区间,可以确定代理服务器需要获取的是该视频中哪一部分的数据。代理服务器在接收到源站服务器反馈的所述目标视频中位于所述第一数据区间内的数据后,由于位于所述第一数据区间内的数据中至少包括所述目标视频的元数据的起始位置处的数据,因此代理服务器可以在位于所述第一数据区间内的数据中识别所述目标视频的元数据的起始位置。所述元数据的起始位置也可以通过数据偏移量来表示。例如,所述元数据的起始位置在目标视频的视频数据中的数据偏移量为1000。在识别出元数据的起始位置后,为了顺利解析所述目标视频的元数据实例,代理服务器需要获取目标视频的全部元数据以及媒体数据的头部信息。通常而言,元数据的数据长度和媒体数据的头部信息的数据长度均可以是标准的长度,这两个标准的长度可以随着视频文件格式的不同而不同。若视频文件的格式确定了,那么这两个标准的长度通常也可以确定。并且,在目标视频的视频数据中,元数据之后紧接着就是媒体数据的头部信息和本体信息。因此,代理服务器通过解析位于所述第一数据区间内的数据后,可以确定出元数据的起始位置,然后可以基于所述元数据的起始位置、所述元数据的标准长度以及媒体数据头部信息的标准长度,确定出为了获取完整的元数据和媒体数据的头部信息具体需要多大的数据区间,从而可以生成覆盖所述元数据和所述媒体数据头部信息的第二数据区间。举例来说,对于mp4文件而言,第一数据区间是[0,1023],通过第一数据区间获取到的数据分析后,确定出元数据的起始位置为1000,而元数据的标准长度为50,媒体数据头部信息的标准长度为100,那么生成的第二数据区间便可以是[1000,1149]。然后,代理服务器可以构建包含所述第二数据区间和所述加载地址的第二视频区域请求,并且向存储所述目标视频的源站服务器发送所述第二视频区域请求,以获取所述目标视频的所述元数据和所述媒体数据头部信息。
这样,在本实施方式中,通过发送两个不同的视频区域请求,从而可以获取所述目标视频的元数据和媒体数据头部信息。
当然,在实际应用中,如果网络条件允许,代理服务器也可以直接发送一个数据区间较大的视频区域请求,从而一次性地获取到全部元数据和媒体数据头部信息,甚至还可以获取到一部分媒体数据本体信息。然后再从获取到的数据中提取出元数据和媒体数据头部信息。因此,本申请的技术方案并不限定于通过两次视频区域请求来获取元数据和媒体数据头部信息的方式,本领域技术人员在理解本申请技术方案的精髓的情况下,可以根据实际情况通过更多次数或者更少次数的视频区域请求,来获取元数据和媒体数据头部信息。本领域技术人员应当理解,上述这种发送更多次数或者更少次数的视频区域请求的方式,也应当属于本申请的保护范围内。
S5:解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置。
在本实施方式中,代理服务器获取到元数据和媒体数据头部信息后,便可以分析出目标视频的媒体数据中每一个视频帧的具体信息、媒体数据的数据大小以及媒体数据中各个视频帧的数据偏移量等信息。通过解析所述元数据和所述媒体数据头部信息,代理服务器便可以得到所述目标视频的元数据实例。所述元数据实例可以与解析的结果相一致,从而可以描述目标视频中每一个视频帧的具体信息、媒体数据的数据大小以及各个视频帧的数据偏移量等信息。
在本实施方式中,在得到所述元数据实例后,代理服务器可以将目标视频的标识与所述元数据实例通过键值对(key-value)的方式进行存储,以方便后续的查询。在实际应用中,可以通过哈希表的方式来存储生成的元数据实例。具体地,代理服务器可以识别所述目标视频的标识,所述标识例如可以是目标视频的加载地址,或者是目标视频的视频名称,然后可以计算所述标识的哈希值。然后代理服务器可以在预设哈希表中确定所述哈希值指向的位置,并可以将所述目标视频的元数据实例写入确定的所述位置处。后续,通过将目标视频的标识换算为对应的哈希值,便可以快速地从哈希表中查询出对应的元数据实例。
在本实施方式中,在得到所述元数据实例后,便可以根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置。这里的起始位置和终止位置可以通过数据偏移量来表示。所述视频拖拉参数中包含的是拖拉起始时间点和拖拉终止时间点,因此需要将时间点转换为对应的数据偏移量。具体地,由于元数据实例中可以包含每一个视频帧的详细信息,该详细信息可以包含了视频帧在视频中对应的时间点。因此,通过查询该元数据实例,可以在所述元数据实例中分别查询所述拖拉起始时间点和所述拖拉终止时间点对应的第一视频帧信息和第二视频帧信息。此外,视频帧信息中还可以包含视频帧在视频文件中对应的数据偏移量,因此,可以分别从所述第一视频帧信息和第二视频帧信息中读取第一数据偏移量和第二数据偏移量,并可以将所述第一数据偏移量作为所述起始位置,以及将所述第二数据偏移量作为所述终止位置。
S7:构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
在本实施方式中,在确定出所述起始位置和终止位置后,代理服务器便可以构建包含所述起始位置和所述终止位置的数据获取请求。其中,所述数据获取请求其实也可以是一个视频区域请求,在该视频区域请求中,可以包含由上述的第一数据偏移量和第二数据偏移量构成的数据区间。这样,源站服务器接收到该数据获取请求后,便可以将由第一数据偏移量和第二数据偏移量构成的数据区间中的拖拉视频数据反馈给代理服务器。然后,代理服务器便可以将所述拖拉视频数据提供给客户端。
请参阅图3,在一个实施方式中,代理服务器在确定出所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置之后,可以针对所述视频拖拉请求,向客户端反馈响应报文。具体地,所述响应报文可以包含响应头部信息和响应本体信息。其中,所述响应头部信息中可以包含该响应报文的一些描述信息,例如,可以包含该响应报文所采用的通信协议,还可以包含由所述起始位置和所述终止位置限定的拖拉视频的数据大小。需要说明的是,代理服务器在接收到源站服务器反馈的拖拉视频数据后,需要将该拖拉视频数据作为独立的拖拉视频文件发送至所述客户端。也就是说,向客户端反馈的拖拉视频数据中,也需要包含正常视频的各个组成部分。例如,对于mp4文件而言,代理服务器根据所述起始位置和终止位置,从源站服务器中获取到的是一部分的媒体数据。而为了客户端能够正常解析和播放这部分媒体数据,代理服务器在向客户端反馈时,需要基于这部分媒体数据,构建一个独立的mp4文件,构建的该文件中,也需要包含上述的ftyp box、moovbox、mdat box等多个组成部分。在实际应用中,由于拖拉视频数据是从目标视频的视频数据中节选的,因此目标视频的各个组成部分也适用于拖拉视频数据对应的视频文件中。因此,可以沿用目标视频中的各个组成部分,只不过需要根据拖拉视频数据的实际数据大小对应修改其中的部分参数。这样,便可以形成用于表征所述拖拉视频数据的一个独立的视频文件。在本实施方式中,代理服务器向客户端反馈的响应报文中,响应本体信息便可以包含上述的独立的视频文件对应的拖拉视频元数据,所述拖拉视频元数据可以用于描述由所述起始位置和所述终止位置限定的拖拉视频的播放属性。这样,客户端在向代理服务器发送视频拖拉请求后,可以接收到代理服务器反馈的响应报文,以及一个独立的用户表征拖拉视频数据的视频文件。这样,客户端便可以通过解析该独立的视频文件,从而播放拖拉视频的内容。
在一个实施方式中,如果用户在观看目标视频的过程中,再次拖拉播放进度条,那么客户端可以再次生成一个新的视频拖拉请求。代理服务器在接收到所述客户端再次发起的指向所述目标视频的新的视频拖拉请求后,可以从所述新的视频拖拉请求中提取所述目标视频的标识,并计算所述目标视频的标识的哈希值,然后可以在所述预设哈希表中查询计算出的所述哈希值对应的位置,并将所述位置处存储的元数据实例作为所述新的视频拖拉请求对应的所述元数据实例。这样,代理服务器便可以通过查询哈希表的方式,直接得到所述新的视频拖拉请求对应的所述元数据实例。后续,便可以按照上述的过程,根据所述元数据实例,确定所述新的视频拖拉请求在所述目标视频的媒体数据中对应的新的起始位置和新的终止位置,然后可以构建包含所述新的起始位置和所述新的终止位置的新的数据获取请求,并将所述新的数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的新的拖拉视频数据后,将所述新的拖拉视频数据发送至所述客户端。当然,反馈的新的拖拉视频数据也需要是独立的视频文件,并且代理服务器可以针对所述新的视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的播放属性,并且代理服务器可以向所述客户端反馈所述响应报文。
这样,代理服务器通过构建元数据实例的方式,可以正常地处理客户端发来的视频拖拉请求,并且后续如果客户端再次发来针对同一视频的视频拖拉请求,那么可以通过查询哈希表的方式,直接从本地调用已缓存的元数据实例,并根据该已缓存的元数据实例确定出需要获取的视频片段。由此可见,在本申请中,针对同一个视频而言,只需创建一次元数据实例,后续针对该视频的拖拉请求可以省去创建元数据实例的过程,而是直接使用本地缓存的元数据实例,从而加快数据的响应速度。
请参阅图4,本申请还提供一种代理服务器,所述代理服务器包括:
视频拖拉请求接收单元,用于接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数;
数据获取单元,用于响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;
位置确定单元,用于解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;
拖拉视频数据发送单元,用于构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
本申请还提供一种拖拉视频数据的处理方法,所述方法可以是在生成了目标视频的元数据实例,并将所述元数据实例写入预设哈希表之后实施。具体地,请参阅图5,所述方法包括以下步骤。
S11:接收客户端发起的指向目标视频的视频拖拉请求,并从预设哈希表中查询所述视频拖拉请求对应的元数据实例。
S13:根据所述元数据实例,确定所述视频拖拉请求在所述目标视频的媒体数据中对应的起始位置和终止位置。
S15:构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
在一个实施方式中,从预设哈希表中查询所述视频拖拉请求对应的元数据实例包括:
从所述视频拖拉请求中识别所述目标视频的标识,并计算所述标识的哈希值;
在所述预设哈希表中确定所述哈希值指向的位置,并将所述位置处写入的元数据实例作为所述视频拖拉请求对应的元数据实例。
在一个实施方式中,在确定所述视频拖拉请求在所述目标视频的媒体数据中对应的起始位置和新的终止位置之后,所述方法还包括:
针对所述视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述起始位置和所述终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述起始位置和所述终止位置限定的拖拉视频的播放属性;
向所述客户端反馈所述响应报文。
在一个实施方式中,所述视频拖拉请求对应的元数据实例按照以下方式生成:
构建指向所述目标视频的视频区域请求,并向存储所述目标视频的所述源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;
解析所述元数据和所述媒体数据头部信息,得到所述视频拖拉请求对应的元数据实例。
具体地,如果用户在观看目标视频的过程中,再次拖拉播放进度条,那么客户端可以再次生成一个新的视频拖拉请求。代理服务器在接收到所述客户端再次发起的指向所述目标视频的新的视频拖拉请求后,可以从所述新的视频拖拉请求中提取所述目标视频的标识,并计算所述目标视频的标识的哈希值,然后可以在所述预设哈希表中查询计算出的所述哈希值对应的位置,并将所述位置处存储的元数据实例作为所述新的视频拖拉请求对应的所述元数据实例。这样,代理服务器便可以通过查询哈希表的方式,直接得到所述新的视频拖拉请求对应的所述元数据实例。后续,便可以按照上述的过程,根据所述元数据实例,确定所述新的视频拖拉请求在所述目标视频的媒体数据中对应的新的起始位置和新的终止位置,然后可以构建包含所述新的起始位置和所述新的终止位置的新的数据获取请求,并将所述新的数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的新的拖拉视频数据后,将所述新的拖拉视频数据发送至所述客户端。当然,反馈的新的拖拉视频数据也需要是独立的视频文件,并且代理服务器可以针对所述新的视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的播放属性,并且代理服务器可以向所述客户端反馈所述响应报文。
请参阅图6,本申请还提供一种代理服务器,所述代理服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现如上述的拖拉视频数据的处理方法。具体地,如图6所示,在硬件层面,该代理服务器可以包括处理器、内部总线和存储器。所述存储器可以包括内存以及非易失性存储器。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行。本领域普通技术人员可以理解,图6所示的结构仅为示意,其并不对上述识别装置的结构造成限定。例如,所述代理服务器还可包括比图6中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如GPU(GraphicsProcessing Unit,图像处理器),或者具有与图6所示不同的配置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等。
本实施方式中,所述的处理器可以包括中央处理器(CPU)或图形处理器(GPU),当然也可以包括其他的具有逻辑处理能力的单片机、逻辑门电路、集成电路等,或其适当组合。本实施方式所述的存储器可以是用于保存信息的记忆设备。在数字***中,能保存二进制数据的设备可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也可以为存储器,如RAM、FIFO等;在***中,具有实物形式的存储设备也可以叫存储器等。实现的时候,该存储器也可以采用云存储器的方式实现,具体实现方式,本说明书不错限定。
需要说明的是,本说明书中的代理服务器,具体的实现方式可以参照方法实施方式的描述,在此不作一一赘述。
由上可见,本申请提供的技术方案,代理服务器在接收到客户端发起的指向目标视频的视频拖拉请求后,可以根据该请求构建视频区域请求,该视频区域请求可以从源站服务器中获取目标视频的部分数据,这部分数据可以包括目标视频的元数据和媒体数据头部信息。代理服务器通过解析元数据和媒体数据头部信息,可以得到目标视频的元数据实例。该元数据实例中可以包括目标视频的每个视频帧的信息,例如可以包括视频帧在目标视频中对应的播放时间节点以及该视频帧在目标视频的数据中的偏移量。然后,根据上述视频拖拉请求中的视频拖拉参数,可以计算出该视频拖拉参数在目标视频的媒体数据中对应的起始位置和终止位置。然后,通过构建包含所述起始位置和所述终止位置的数据获取请求,从而可以从源站服务器处获取对应的拖拉视频数据,并可以将所述拖拉视频数据发送至所述客户端。这样,通过本申请提供的技术方案,能够使得代理服务器也能正常处理客户端的视频拖拉请求,并能够成功向客户端反馈对应的拖拉视频数据。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种拖拉视频数据的处理方法,其特征在于,所述方法包括:
接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数;
根据所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;
解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;
构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
2.根据权利要求1所述的方法,其特征在于,响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求包括:
从所述视频拖拉请求中提取出所述目标视频的加载地址,并生成第一数据区间,并构建包含所述加载地址和所述第一数据区间的第一视频区域请求;
相应地,向存储所述目标视频的源站服务器发送所述视频区域请求包括:
向存储所述目标视频的源站服务器发送所述第一视频区域请求,以获取所述目标视频中位于所述第一数据区间内的数据;其中,位于所述第一数据区间内的数据中至少包括所述目标视频的元数据的起始位置处的数据。
3.根据权利要求2所述的方法,其特征在于,构建指向所述目标视频的视频区域请求还包括:
在位于所述第一数据区间内的数据中识别所述目标视频的元数据的起始位置,并基于所述元数据的起始位置、所述元数据的标准长度以及媒体数据头部信息的标准长度,生成覆盖所述元数据和所述媒体数据头部信息的第二数据区间,并构建包含所述第二数据区间和所述加载地址的第二视频区域请求;
相应地,向存储所述目标视频的源站服务器发送所述视频区域请求还包括:
向存储所述目标视频的源站服务器发送所述第二视频区域请求,以获取所述目标视频的所述元数据和所述媒体数据头部信息。
4.根据权利要求1所述的方法,其特征在于,根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置包括:
在所述元数据实例中分别查询所述拖拉起始时间点和所述拖拉终止时间点对应的第一视频帧信息和第二视频帧信息;
分别从所述第一视频帧信息和第二视频帧信息中读取第一数据偏移量和第二数据偏移量,并将所述第一数据偏移量作为所述起始位置,以及将所述第二数据偏移量作为所述终止位置。
5.根据权利要求1或4所述的方法,其特征在于,在确定出所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置之后,所述方法还包括:
针对所述视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述起始位置和所述终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述起始位置和所述终止位置限定的拖拉视频的播放属性;
向所述客户端反馈所述响应报文。
6.根据权利要求5所述的方法,其特征在于,将所述拖拉视频数据发送至所述客户端包括:
将所述拖拉视频数据作为独立的拖拉视频文件发送至所述客户端。
7.根据权利要求1所述的方法,其特征在于,在得到所述目标视频的元数据实例之后,所述方法还包括:
识别所述目标视频的标识,并计算所述标识的哈希值;
在预设哈希表中确定所述哈希值指向的位置,并将所述目标视频的元数据实例写入确定的所述位置处。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述客户端再次发起的指向所述目标视频的新的视频拖拉请求,并从所述预设哈希表中查询所述新的视频拖拉请求对应的所述元数据实例;
根据所述元数据实例,确定所述新的视频拖拉请求在所述目标视频的媒体数据中对应的新的起始位置和新的终止位置;
构建包含所述新的起始位置和所述新的终止位置的新的数据获取请求,并将所述新的数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的新的拖拉视频数据后,将所述新的拖拉视频数据发送至所述客户端。
9.根据权利要求8所述的方法,其特征在于,从所述预设哈希表中查询所述新的视频拖拉请求对应的所述元数据实例包括:
从所述新的视频拖拉请求中提取所述目标视频的标识,并计算所述目标视频的标识的哈希值;
在所述预设哈希表中查询计算出的所述哈希值对应的位置,并将所述位置处存储的元数据实例作为所述新的视频拖拉请求对应的所述元数据实例。
10.根据权利要求8所述的方法,其特征在于,在确定所述新的视频拖拉请求在所述目标视频的媒体数据中对应的新的起始位置和新的终止位置之后,所述方法还包括:
针对所述新的视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述新的起始位置和所述新的终止位置限定的拖拉视频的播放属性;
向所述客户端反馈所述响应报文。
11.一种代理服务器,其特征在于,所述代理服务器包括:
视频拖拉请求接收单元,用于接收客户端发起的指向目标视频的视频拖拉请求,所述视频拖拉请求中包括用于限定拖拉起始时间点和拖拉终止时间点的视频拖拉参数;
数据获取单元,用于响应于所述视频拖拉请求,构建指向所述目标视频的视频区域请求,并向存储所述目标视频的源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;
位置确定单元,用于解析所述元数据和所述媒体数据头部信息,得到所述目标视频的元数据实例,并根据所述元数据实例,确定所述视频拖拉参数在所述目标视频的媒体数据中对应的起始位置和终止位置;
拖拉视频数据发送单元,用于构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至所述源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
12.一种代理服务器,其特征在于,所述代理服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至10中任一所述的方法。
13.一种拖拉视频数据的处理方法,其特征在于,所述方法包括:
接收客户端发起的指向目标视频的视频拖拉请求,并从预设哈希表中查询所述视频拖拉请求对应的元数据实例;
根据所述元数据实例,确定所述视频拖拉请求在所述目标视频的媒体数据中对应的起始位置和终止位置;
构建包含所述起始位置和所述终止位置的数据获取请求,并将所述数据获取请求发送至源站服务器,并在接收到所述源站服务器反馈的拖拉视频数据后,将所述拖拉视频数据发送至所述客户端。
14.根据权利要求13所述的方法,其特征在于,从预设哈希表中查询所述视频拖拉请求对应的元数据实例包括:
从所述视频拖拉请求中识别所述目标视频的标识,并计算所述标识的哈希值;
在所述预设哈希表中确定所述哈希值指向的位置,并将所述位置处写入的元数据实例作为所述视频拖拉请求对应的元数据实例。
15.根据权利要求13所述的方法,其特征在于,在确定所述视频拖拉请求在所述目标视频的媒体数据中对应的起始位置和新的终止位置之后,所述方法还包括:
针对所述视频拖拉请求构建响应报文,所述响应报文中包括响应头部信息和拖拉视频元数据;其中,所述响应头部信息至少描述由所述起始位置和所述终止位置限定的拖拉视频的数据大小,所述拖拉视频元数据用于描述由所述起始位置和所述终止位置限定的拖拉视频的播放属性;
向所述客户端反馈所述响应报文。
16.根据权利要求13所述的方法,其特征在于,所述视频拖拉请求对应的元数据实例按照以下方式生成:
构建指向所述目标视频的视频区域请求,并向存储所述目标视频的所述源站服务器发送所述视频区域请求,以获取所述目标视频的元数据和媒体数据头部信息;
解析所述元数据和所述媒体数据头部信息,得到所述视频拖拉请求对应的元数据实例。
17.一种代理服务器,其特征在于,所述代理服务器包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求13至16中任一所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811623054.8A CN109640113B (zh) | 2018-12-28 | 2018-12-28 | 一种拖拉视频数据的处理方法及代理服务器 |
PCT/CN2019/072175 WO2020133608A1 (zh) | 2018-12-28 | 2019-01-17 | 一种拖拉视频数据的处理方法及代理服务器 |
US17/292,792 US20210400317A1 (en) | 2018-12-28 | 2019-01-17 | Method for processing video-dragging data, and proxy server |
EP19904603.8A EP3902266A4 (en) | 2018-12-28 | 2019-01-17 | PROCESSING METHODS FOR PULLING VIDEO DATA AND PROXY SERVER |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811623054.8A CN109640113B (zh) | 2018-12-28 | 2018-12-28 | 一种拖拉视频数据的处理方法及代理服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109640113A true CN109640113A (zh) | 2019-04-16 |
CN109640113B CN109640113B (zh) | 2021-08-27 |
Family
ID=66078792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811623054.8A Active CN109640113B (zh) | 2018-12-28 | 2018-12-28 | 一种拖拉视频数据的处理方法及代理服务器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210400317A1 (zh) |
EP (1) | EP3902266A4 (zh) |
CN (1) | CN109640113B (zh) |
WO (1) | WO2020133608A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110472492A (zh) * | 2019-07-05 | 2019-11-19 | 平安国际智慧城市科技股份有限公司 | 目标生物检测方法、装置、计算机设备和存储介质 |
CN112770132A (zh) * | 2021-01-05 | 2021-05-07 | 北京东方网信科技股份有限公司 | 一种代理缓存中降低mp4视频出口流量的方法及*** |
CN113411675A (zh) * | 2021-05-20 | 2021-09-17 | 歌尔股份有限公司 | 视频混合播放方法、装置、设备及可读存储介质 |
CN113453062A (zh) * | 2020-03-25 | 2021-09-28 | 北京金山云网络技术有限公司 | 视频元数据的获取、处理方法及装置、***、电子设备 |
CN113473247A (zh) * | 2020-03-30 | 2021-10-01 | 北京金山云网络技术有限公司 | 一种视频播放请求处理方法、装置、***和电子设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112104897B (zh) * | 2020-11-04 | 2021-03-12 | 北京达佳互联信息技术有限公司 | 视频获取方法、终端及存储介质 |
US11503011B2 (en) * | 2021-01-08 | 2022-11-15 | Intuit Inc. | Making local data available in a cloud computing environment |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060253602A1 (en) * | 2001-05-10 | 2006-11-09 | Masaki Horiuchi | Video proxy server |
CN101217638A (zh) * | 2007-12-28 | 2008-07-09 | 深圳市迅雷网络技术有限公司 | 视频文件分段下载的方法、***及装置 |
CN102783147A (zh) * | 2009-10-15 | 2012-11-14 | 拜特移动网络公司 | 预算编码 |
US20140164483A1 (en) * | 2012-12-11 | 2014-06-12 | Morega Systems Inc. | Client device with video player and client-side proxy and methods for use therewith |
CN106572358A (zh) * | 2016-11-11 | 2017-04-19 | 青岛海信宽带多媒体技术有限公司 | 一种直播时移方法及客户端 |
CN107809678A (zh) * | 2016-09-09 | 2018-03-16 | 阿里巴巴集团控股有限公司 | 多媒体文件的处理方法、装置和设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101287107B (zh) * | 2008-05-29 | 2010-10-13 | 腾讯科技(深圳)有限公司 | 媒体文件的点播方法、***和设备 |
CN101415069B (zh) * | 2008-10-22 | 2010-07-14 | 清华大学 | 一种服务器及其在线播放视频的发送方法 |
CN102438004B (zh) * | 2011-09-05 | 2017-02-08 | 深圳市创维软件有限公司 | 获取媒体文件的元数据信息的方法、***及多媒体播放器 |
CN103348690B (zh) * | 2011-11-26 | 2016-08-17 | 华为技术有限公司 | 一种视频处理的方法及装置 |
US9794375B2 (en) * | 2013-03-14 | 2017-10-17 | Openwave Mobility, Inc. | Method, apparatus, and non-transitory computer medium for obtaining a required frame size for a compressed data frame |
CN105323597B (zh) * | 2014-08-04 | 2019-03-08 | 中国电信股份有限公司 | Mp4文件播放方法、处理方法和装置以及播放*** |
WO2017027484A1 (en) * | 2015-08-09 | 2017-02-16 | Ramasamy Celambarasan | System and method for microshare based content funding and distribution |
-
2018
- 2018-12-28 CN CN201811623054.8A patent/CN109640113B/zh active Active
-
2019
- 2019-01-17 WO PCT/CN2019/072175 patent/WO2020133608A1/zh unknown
- 2019-01-17 US US17/292,792 patent/US20210400317A1/en not_active Abandoned
- 2019-01-17 EP EP19904603.8A patent/EP3902266A4/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060253602A1 (en) * | 2001-05-10 | 2006-11-09 | Masaki Horiuchi | Video proxy server |
CN101217638A (zh) * | 2007-12-28 | 2008-07-09 | 深圳市迅雷网络技术有限公司 | 视频文件分段下载的方法、***及装置 |
CN102783147A (zh) * | 2009-10-15 | 2012-11-14 | 拜特移动网络公司 | 预算编码 |
US20140164483A1 (en) * | 2012-12-11 | 2014-06-12 | Morega Systems Inc. | Client device with video player and client-side proxy and methods for use therewith |
CN107809678A (zh) * | 2016-09-09 | 2018-03-16 | 阿里巴巴集团控股有限公司 | 多媒体文件的处理方法、装置和设备 |
CN106572358A (zh) * | 2016-11-11 | 2017-04-19 | 青岛海信宽带多媒体技术有限公司 | 一种直播时移方法及客户端 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110472492A (zh) * | 2019-07-05 | 2019-11-19 | 平安国际智慧城市科技股份有限公司 | 目标生物检测方法、装置、计算机设备和存储介质 |
CN113453062A (zh) * | 2020-03-25 | 2021-09-28 | 北京金山云网络技术有限公司 | 视频元数据的获取、处理方法及装置、***、电子设备 |
CN113453062B (zh) * | 2020-03-25 | 2023-05-05 | 北京金山云网络技术有限公司 | 视频元数据的获取、处理方法及装置、***、电子设备 |
CN113473247A (zh) * | 2020-03-30 | 2021-10-01 | 北京金山云网络技术有限公司 | 一种视频播放请求处理方法、装置、***和电子设备 |
CN112770132A (zh) * | 2021-01-05 | 2021-05-07 | 北京东方网信科技股份有限公司 | 一种代理缓存中降低mp4视频出口流量的方法及*** |
CN112770132B (zh) * | 2021-01-05 | 2023-01-24 | 北京东方网信科技股份有限公司 | 一种代理缓存中降低mp4视频出口流量的方法及*** |
CN113411675A (zh) * | 2021-05-20 | 2021-09-17 | 歌尔股份有限公司 | 视频混合播放方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20210400317A1 (en) | 2021-12-23 |
EP3902266A4 (en) | 2022-02-23 |
WO2020133608A1 (zh) | 2020-07-02 |
CN109640113B (zh) | 2021-08-27 |
EP3902266A1 (en) | 2021-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109640113A (zh) | 一种拖拉视频数据的处理方法及代理服务器 | |
EP2383941B1 (en) | Client terminal, method and system for downloading streaming media | |
JP6316781B2 (ja) | バイト範囲リクエストを使用したビデオデータのネットワークストリーミング | |
US20160227258A1 (en) | Method for playing back live video and device | |
KR100993955B1 (ko) | 다중매체 프리젠테이션 | |
CN105024872B (zh) | 网络性能测试的方法及装置 | |
CN109561351A (zh) | 网络直播回放方法、装置及存储介质 | |
US9479607B2 (en) | Content caching and delivering system with traffic of repetitively requested content reduced | |
WO2019128800A1 (zh) | 一种内容服务的实现方法、装置及内容分发网络节点 | |
WO2015176470A1 (zh) | 一种http协议的缓存状态更新方法和设备、处理机 | |
CN110870282A (zh) | 使用网络内容的文件轨处理媒体数据 | |
CN104219286A (zh) | 流媒体处理方法、装置、客户端、cdn节点服务器及终端 | |
EP2903260A1 (en) | Multi-speed playing method, device and system | |
CN104471947A (zh) | 内容发送装置、内容再现装置、内容发布***、内容发送装置的控制方法、内容再现装置的控制方法、数据结构、控制程序以及记录介质 | |
CN110290396B (zh) | 一种视频处理的方法、装置、***、设备和存储介质 | |
CN110113298A (zh) | 数据传输方法、装置、信令服务器和计算机可读介质 | |
CN107809681B (zh) | 切片视频传输的方法及装置 | |
CN106303754A (zh) | 一种音频数据播放方法及装置 | |
US10498787B2 (en) | Communication apparatus, communication method, and program | |
CN109587517B (zh) | 一种多媒体文件的播放方法及装置、服务器及存储介质 | |
JP2015104075A (ja) | メディア再生制御装置、メディア再生制御方法、及びプログラム | |
CN106899843A (zh) | 一种视频业务质量评估方法及装置 | |
CN110740337B (zh) | 直播播放方法、装置、电子设备及存储介质 | |
CN108667863B (zh) | 一种基于本地代理的web业务适配***及方法 | |
KR20200135324A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |