一种视频点播方法及其系统的制作方法

文档序号:7758072阅读:89来源:国知局
专利名称:一种视频点播方法及其系统的制作方法
技术领域
本发明涉及流媒体通信技术领域,尤其涉及一种视频点播方法及其系统。
背景技术
目前的视频点播系统都是针对普通个人用户,用户在互联网上点播视频文件时,直接下载到本地观看。但是在网吧里,如果每个网吧用户都通过互联网下载视频文件到本地播放,对于相同的热门文件,可能就会下载多次,每点播一次就会下载一次,这样就会造成网吧带宽的浪费。而且网吧用户因为都是直接从互联网下载视频文件,网吧管理员就无法很好的管理和控制网吧用户的下载行为。 对网吧管理员来说,会希望视频点播系统对于相同的文件能够只要下载一次,后续其他网吧用户再次点播相同文件时不需要重新从互联网下载,以便节省网络带宽。现有的视频点播系统容易造成网络带宽的浪费,而且不方便管理员对网吧用户的管理。

发明内容
本发明要解决的技术问题在于针对现有技术视频点播系统中用户直接从互联网下载视频文件,造成带宽的浪费的缺陷,提供一种可节约带宽、且便于管理员进行管理的视频点播方法及其系统。本发明解决其技术问题所采用的技术方案是提供一种视频点播方法,包括以下步骤向组播组发送搜索服务器的组播消息,所述组播组包括至少一个服务器;接收服务器根据所述组播消息而发送的服务器信息;根据接收的所述服务器信息,向所述组播组发送请求点播视频文件的查找消息;若在预定的时间内未接收到服务器查找到相应视频文件的响应,则根据所述服务器信息随机选择一个服务器,并向该服务器发送请求下载视频文件的请求信息;接收服务器发送的相应视频文件的数据并播放。本发明所述的视频点播方法中,接收服务器发送的相应视频文件的数据并播放的步骤具体为接收服务器的响应,该响应是指在服务器根据请求点播视频文件的查找消息在本地服务器上查找到相应视频文件,或者根据发送请求下载视频文件的请求信息下载到相应视频文件后,服务器所发出的表示可发送相应视频文件的响应;与服务器建立TCP连接,以请求发送视频文件数据;获取服务器通过TCP连接发送的相应视频文件数据并播放。本发明解决其技术问题所采用的另一技术方案是提供一种视频点播方法,包括以下步骤获取客户端发送的请求点播视频文件的查找消息;根据所述查找消息在本地服务器查找相应的视频文件,若不存在,则接收客户端发送的请求下载视频文件的请求信息,并通过互联网下载相应的视频文件并保存到本地服务器;将所述本地服务器上的相应视频文件发送给所述客户端播放。本发明所述的视频点播方法中,在获取客户端发送的请求点播视频文件的查找消息的步骤之前还包括步骤获取客户端发送的搜索服务器的组播消息,并根据所述组播消息向所述客户端发送服务器信息;该视频点播方法还包括对服务器的下载任务进行监控。本发明所述的视频点播方法中,将所述本地服务器上的相应视频文件发送给所述 客户端播放的步骤具体为发送响应信息给所述客户端,使所述客户端与服务器之间建立TCP连接;读取相应视频文件数据,并通过TCP连接发送给所述客户端。本发明解决其技术问题所采用的第三技术方案是提供一种视频点播客户端,包括客户端组播模块,用于向组播组发送搜索服务器的组播消息,并接收服务器根据所述组播消息而发送的服务器信息,所述客户端组播模块再根据接收的所述服务器信息向所述组播组发送请求点播视频文件的查找消息;所述组播组包括至少一个服务器;下载请求信息发送模块,用于在预定的时间内所述客户端组播模块未收到服务器响应时,根据所述客户端组播模块收到的所述服务器信息,随机选择一个服务器,向其发送请求下载视频文件的请求信息;客户端下载模块,用于接收服务器发送的相应视频文件的数据;播放模块,用于根据所述客户端下载模块接收的数据进行播放。本发明所述的视频点播客户端中,所述客户端下载模块还用于接收服务器的响应,并根据响应与服务器建立TCP连接,以请求发送视频文件数据,并通过所述TCP连接获取服务器发送的相应视频文件数据;所述服务器的响应是指在服务器根据点播视频文件的查找消息在本地服务器上查找到相应视频文件,或者根据下载视频文件的请求信息下载到相应视频文件后,服务器所发出的表示可发送相应视频文件的响应。本发明解决其技术问题所采用的第四技术方案是提供一种视频点播服务器,该服务器包括服务器组播模块,用于获取客户端发送的请求点播视频文件的查找消息;查找模块,用于根据所述查找消息在本地服务器查找相应的视频文件;监听模块,用于在所述查找模块未查找到相应的视频文件时,接收客户端发送的请求下载视频文件的请求信息;服务器下载模块,用于根据所述监听模块接收的请求信息,通过互联网下载相应的视频文件;存储模块,用于存储所述服务器下载模块所下载的视频文件,并通过所述监听模块将存储的视频文件发送给客户端。本发明所述的视频点播服务器中,所述服务器组播模块,还用于获取所述客户端发送的搜索服务器的组播消息,并根据所述组播消息向所述客户端发送服务器信息;
所述服务器还包括管理模块,用于对所述服务器下载模块、所述监听模块以及存储模块进行监控,设置所述服务器下载模块的访问权限,对下载任务进行监控,通过所述监听模块监控所述客户端的请求信息,同时对所述存储模块中的占用率进行监控。本发明解决其技术问题所采用的第五技术方案是提供一种视频点播系统,其特征在于,包括至少一个上文所述的视频点播客户端和视频点播服务器,所述视频点播客户端与所述视频点播服务器通信连接。本发明产生的有益效果是服务器根据客户端的请求下载相应的视频文件并保存在本地服务器,当有其他客户端也请求点播相同的视频文件时,则直接将保存在本地的视频文件发送给该客户端,从而可以提高用户点播视频文件的观看的速度,同时节省了网络带宽。


下面将结合附图及实施例对本发明作进一步说明,附图中图I是本发明实施例视频点播方法的流程图;图2是本发明实施例视频点播客户端的结构示意图;图3是本发明实施例视频点播服务器的结构示意图;图4是本发明实施例视频点播系统的结构示意图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。如图I所示,本发明实施例适用于客户端的视频点播方法主要包括客户端搜索服务器时客户端与服务器的信号交互以及在客户端点播视频时客户端与服务器间的信号交互过程;其中,客户端搜索服务器时,客户端与服务器的信号交互主要包括以下步骤S101、客户端启动后,客户端向组播组发送搜索服务器的组播消息,组播组包括至少一个服务器;一般如网吧中,组播组包括多个服务器和多个客户端,客户端向组播组内的所有用户发送一个标识为搜索服务器的组播消息,其他客户端收到该消息直接忽略,不做响应;所有的服务器接收到该消息后,都会向发送该组播消息的客户端返回一个响应消息,该响应消息即为该服务器信息,包括有服务器的标识与监听地址。S102、客户端接收服务器根据组播消息而发送的服务器信息,客户端同时保存该服务器信息,该服务器信息包括服务器标识和监听地址,客户端根据该服务器信息可以访问该服务器。在客户端点播视频时,客户端与服务器间的信号交互过程,主要包括以下步骤S103、根据接收的服务器信息,向组播组发送请求点播视频文件的查找消息;其他客户端收到该消息直接忽略,不做响应;服务器收到该消息,判断服务器上是否已经有该文件,若有,则通过服务器内的组播模块向该客户端发送一个包含有服务器标识和监听地址的响应消息,若没有则不做响应。S104、判断在预定的时间内有无服务器的相应,预定的时间可以预先进行设定。
S105、若在预定的时间内客户端未接收到服务器查找到相应视频文件的响应,则根据服务器信息随机选择一个服务器,与该服务器建立连接,并向该服务器发送请求下载视频文件的请求信息;服务器接收到该请求信息后,通过互联网下载客户端所请求的视频文件。在服务器找到或者下载到客户端所请求的视频文件后,客户端将会接收到服务器发送得响应信息,客户端根据响应信息可以请求其发送相应视频文件,客户端便可以接收到该服务器接收服务器发送的相应视频文件的数据并播放。
进一步地,客户端接收服务器发送的相应视频文件的数据并播放的步骤具体为S106、客户端接收服务器的响应,该响应是指在服务器根据请求点播视频文件的请求信息在本地服务器上查找到相应视频文件,或者根据发送请求下载视频文件的请求信息下载到相应视频文件(同时保存该视频文件到本地服务器)后,服务器所发出的表示可发送相应视频文件的响应;该响应包括该服务器的标识和监听地址。S107、客户端在接收到响应后,与该服务器建立TCP连接,并向该服务器请求发送视频文件数据;服务器在接收到该请求后,会向客户端发送相应的视频文件数据。S108、客户端获取服务器通过TCP连接发送的相应视频文件数据并播放。若服务器上已经存储了相应的视频文件,则客户端可以很快与服务器建立连接接收到相应的视频文件并播放,大大加快了速度,且节约了网络带宽。本发明优选实施例中,客户端只向服务器请求文件而不主动向外网建立下载任务。以实现网络宽带的有效利用,同时便于管理员对客户端的访问行为进行监控。如图2所示,本发明实施例视频点播客户端主要包括客户端组播模块11、下载请求信息发送模块12、客户端下载模块13和播放模块14。客户端组播模块11,用于向组播组发送搜索服务器的组播消息,并接收服务器根据组播消息而发送的服务器信息,客户端组播模块11再根据接收的服务器信息向组播组发送请求点播视频文件的查找消息;组播组包括至少一个服务器;下载请求信息发送模块12,用于在预定的时间内客户端组播模块11未收到服务器响应时,根据客户端组播模块11收到的服务器信息,随机选择一个服务器,向其发送请求下载视频文件的请求信息;客户端下载模块13,用于接收服务器发送的相应视频文件的数据;播放模块14,用于根据客户端下载模块接收的数据进行播放。进一步地,本发明实施例视频点播客户端中,客户端下载模块11还用于接收服务器的响应,并根据响应与服务器建立TCP连接,以请求发送视频文件数据,并通过TCP连接获取服务器发送的相应视频文件数据;服务器的响应是指在服务器根据点播视频文件的查找消息在本地服务器上查找到相应视频文件,或者根据下载视频文件的请求信息下载到相应视频文件后,服务器所发出的表示可发送相应视频文件的响应。如图I所示,本发明实施例适用于服务器端的视频点播方法包括以下步骤S203、服务器获取客户端发送的请求点播视频文件的查找消息;S204、服务器根据查找消息在本地服务器查找相应的视频文件;若本地服务器不存在相应的视频文件,则不发出响应。S205、客户端在预定的时间内未收到服务器发送的响应信息,则会在所搜索到的服务器中任意选择一个服务器,并向该服务器发送请求下载视频文件的请求信息,服务器接收该下载请求。S206、服务器接收到客户端发送的请求下载视频文件的请求信息后,可通过互联网创建任务开始下载相应的视频文件并保存到本地服务器;该视频文件保存到本地服务器后,当有其他客户端也请求相同的视频文件时,则无需再进行下载,从而节约了网络带宽,且提高客户端播放视频文件的速度。最后将本地服务器上的相应视频文件发送给客户端播放,在本发明较佳实施例中,该步骤具体包括
S207、在服务器在本地找到客户端请求的相应视频文件或者从网上下载到相应视频文件后,会向相应的客户端发送响应信息,表示该服务器可以向其发送相应的视频文件,该响应信息包括该服务器的标识和监听地址。S208、客户端接收到响应信息后,会根据该响应信息向该服务器发送请求建立连接(如TCP连接),并请求发送相应的视频文件数据,服务器接收到请求信息后,与客户端建立TCP连接。S209、服务器根据客户端的请求信息读取相应的视频文件数据并将其发送给客户端。进一步地,在步骤S203之前还包括步骤S201、客户端在点播视频文件之前需要搜索服务器,客户端会通过组播组发送标识为搜索服务器的组播消息,组播组内的服务器都会获取到该组播消息;S202、服务器接收到客户端发送的搜索服务器的组播消息后,会向该客户端发送服务器信息,该服务器信息包括服务器标识和监听地址,客户端根据接收到的服务器信息可以访问该服务器,并可向其发送视频点播的请求信息。进一步地,本发明较佳实施例适用于服务器的视频点播方法还包括对服务器的下载任务进行监控的步骤,通过监控获知客户端所访问的地址信息,并根据需要限制客户端和服务器的访问权限。如图3所示,本发明实施例视频点播服务器主要包括服务器组播模块21、查找模块22、监听模块23、服务器下载模块24和存储模块25。其中,服务器组播模块21,用于获取客户端发送的请求点播视频文件的查找消息;查找模块22,用于根据查找消息在本地服务器查找相应的视频文件;监听模块23,用于在查找模块22未查找到相应的视频文件时,接收客户端发送的请求下载视频文件的请求信息;客户端在预定时间内如果没有收到服务器发送的响应信息,则会从所搜索到的服务器中任意选择一个服务器,并向其发送请求下载视频文件的请求信息。服务器下载模块24,用于根据监听模块接收的请求信息,通过互联网下载相应的视频文件;存储模块25,用于存储下载模块所下载的视频文件,并通过监听模块23将存储的视频文件发送给客户端。服务器存储了相应的视频文件后,若以后又有其他客户端请求该视频文件,则可以直接发送给客户端播放,大大提高了响应速度,同时节约了网络带宽资源。
在查找模块22查找到相应的视频文件或者服务器下载模块24下载完成后,监听模块23给客户端发送响应,表明可以向客户端提供相应的视频,客户端根据该响应信息与监听模块23之间建立TCP连接,监听模块23根据客户端的请求读取存储模块25中的相应视频文件数据并通过TCP连接发送给客户端。进一步地,本发明较佳实施例视频点播服务器中,服务器组播模块24,还用于获取客户端发送的搜索服务器的组播消息,并根据组播消息向客户端发送服务器信息;客户端根据该服务器信息便可以 访问该服务器。进一步地,本发明较佳实施例视频点播服务器中,服务器还包括管理模块26,用于对服务器下载模块24、监听模块23以及存储模块25进行监控,设置服务器下载模块24的访问权限,对下载任务进行监控,通过监听模块23监控客户端的请求信息,同时对存储模块25中的占用率进行监控,如果占用率超过预定值,可以选择删除部分下载或点播频率较低的文件以腾出存储空间。如图4所示,本发明实施例视频点播系统,包括至少一个上文所说的视频点播客户端10和视频点播服务器20,客户端10与服务器20通信连接。多个服务器和多个客户端10可以组成一个组播组。客户端10与服务器20的具体结构和各自的功能在上文已经有详尽的描述,在此不再赘述。本发明中,服务器20根据客户端10的请求下载相应的视频文件并保存在本地服务器(即服务器20),当有其他客户端也请求点播相同的视频文件时,则直接将保存在本地的视频文件发送给该客户端,从而可以提高用户点播视频文件的观看的速度,同时节省了网络带宽。应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
权利要求
1.一种视频点播方法,其特征在于,包括以下步骤 向组播组发送搜索服务器的组播消息,所述组播组包括至少一个服务器; 接收服务器根据所述组播消息而发送的服务器信息; 根据接收的所述服务器信息,向所述组播组发送请求点播视频文件的查找消息;若在预定的时间内未接收到服务器查找到相应视频文件的响应,则根据所述服务器信息随机选择一个服务器,并向该服务器发送请求下载视频文件的请求信息; 接收服务器发送的相应视频文件的数据并播放。
2.根据权利要求I所述的视频点播方法,其特征在于,接收服务器发送的相应视频文件的数据并播放的步骤具体为 接收服务器的响应,该响应是指在服务器根据请求点播视频文件的查找消息在本地服务器上查找到相应视频文件,或者根据发送请求下载视频文件的请求信息下载到相应视频文件后,服务器所发出的表示可发送相应视频文件的响应; 与服务器建立TCP连接,以请求发送视频文件数据; 获取服务器通过TCP连接发送的相应视频文件数据并播放。
3.一种视频点播方法,其特征在于,包括以下步骤 获取客户端发送的请求点播视频文件的查找消息; 根据所述查找消息在本地服务器查找相应的视频文件,若不存在,则接收客户端发送的请求下载视频文件的请求信息,并通过互联网下载相应的视频文件并保存到本地服务器; 将所述本地服务器上的相应视频文件发送给所述客户端播放。
4.根据权利要求3所述的视频点播方法,其特征在于, 在获取客户端发送的请求点播视频文件的查找消息的步骤之前还包括步骤获取客户端发送的搜索服务器的组播消息,并根据所述组播消息向所述客户端发送服务器信息;该视频点播方法还包括对服务器的下载任务进行监控。
5.根据权利要求3所述的视频点播方法,其特征在于,将所述本地服务器上的相应视频文件发送给所述客户端播放的步骤具体为 发送响应信息给所述客户端,使所述客户端与服务器之间建立TCP连接; 读取相应视频文件数据,并通过TCP连接发送给所述客户端。
6.一种视频点播客户端,其特征在于,包括 客户端组播模块,用于向组播组发送搜索服务器的组播消息,并接收服务器根据所述组播消息而发送的服务器信息,所述客户端组播模块再根据接收的所述服务器信息向所述组播组发送请求点播视频文件的查找消息;所述组播组包括至少一个服务器; 下载请求信息发送模块,用于在预定的时间内所述客户端组播模块未收到服务器响应时,根据所述客户端组播模块收到的所述服务器信息,随机选择一个服务器,向其发送请求下载视频文件的请求信息; 客户端下载模块,用于接收服务器发送的相应视频文件的数据; 播放模块,用于根据所述客户端下载模块接收的数据进行播放。
7.根据权利要求6所述的视频点播客户端,其特征在于,所述客户端下载模块还用于接收服务器的响应,并根据响应与服务器建立TCP连接,以请求发送视频文件数据,并通过所述TCP连接获取服务器发送的相应视频文件数据;所述服务器的响应是指在服务器根据点播视频文件的查找消息在本地服务器上查找到相应视频文件,或者根据下载视频文件的请求信息下载到相应视频文件后,服务器所发出的表示可发送相应视频文件的响应。
8.一种视频点播服务器,其特征在于,该服务器包括 服务器组播模块,用于获取客户端发送的请求点播视频文件的查找消息; 查找模块,用于根据所述查找消息在本地服务器查找相应的视频文件; 监听模块,用于在所述查找模块未查找到相应的视频文件时,接收客户端发送的请求下载视频文件的请求信息; 服务器下载模块,用于根据所述监听模块接收的请求信息,通过互联网下载相应的视频文件; 存储模块,用于存储所述服务器下载模块所下载的视频文件,并通过所述监听模块将存储的视频文件发送给客户端。
9.根据权利要求8所述的视频点播服务器,其特征在于,所述服务器组播模块,还用于获取所述客户端发送的搜索服务器的组播消息,并根据所述组播消息向所述客户端发送服务器信息; 所述服务器还包括管理模块,用于对所述服务器下载模块、所述监听模块以及存储模块进行监控,设置所述服务器下载模块的访问权限,对下载任务进行监控,通过所述监听模块监控所述客户端的请求信息,同时对所述存储模块中的占用率进行监控。
10.一种视频点播系统,其特征在于,包括至少一个权利要求6或7所述的视频点播客户端和权利要求8或9所述的视频点播服务器,所述视频点播客户端与所述视频点播服务器通信连接。
全文摘要
本发明公开了一种视频点播方法及其系统,服务器根据客户端的请求下载相应的视频文件并保存在本地服务器,当有其他客户端也请求点播相同的视频文件时,则直接将保存在本地的视频文件发送给该客户端,从而可以提高用户点播视频文件的观看的速度,同时节省了网络带宽。
文档编号H04N21/643GK102957972SQ201110241289
公开日2013年3月6日 申请日期2011年8月22日 优先权日2011年8月22日
发明者张克东, 王羲桀, 江少明 申请人:深圳市快播科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1