一种多媒体文件共享系统及其共享多媒体文件的方法

文档序号:7615873阅读:165来源:国知局
专利名称:一种多媒体文件共享系统及其共享多媒体文件的方法
技术领域
本发明涉及共享技术领域,尤其涉及的是一种多媒体文件共享系统及其共享多媒 体文件的方法。
背景技术
多媒体的影音娱乐播放,是消费类电子产品的一个最主要功能,长时间以来,消费 类电子产品的影音播放功能一直局限在传统的播放功能上,即使在互联网发达的今天,实 现的也主要是在线视频播放之类的应用,结合了互联网的媒体播放器/ 一体机这类电子产 品一直处于技术换代相对落后的阶段。互联网的本质是开放和共享,而现有技术的视频分享,其做法是运营商设置一个 巨大的服务器空间,用户A将自己的视频上传后,通知用户B,用户B再从同样的地方下载该 视频,这种做法迟迟未能得到流行,主要的原因在于多媒体文件通常非常巨大,需占用很 大网络资源,一上传一下载非常占用时间,同时服务器的配置也需很高,且需很大的空间; 到了高清的时代更是如此,而目前的网络状况尚不足以支撑高清视频的传输,如果要完整 地把一个视频上传或者下载,需要花费很多时间,给用户造成诸多不便。目前还有国内还流行一种BitTorrent (比特流,简称BT)的P2P下载方法,用户在 下载的同时还担当上传者的角色,每个用户在下载文件时还将下载完的文件共享出来。在 这种下载方式下,人越多速度越快。不过在整个P2P下载过程的开始阶段,由于下载用户 少,可共享的资源不足,因此下载的速度依然比较慢。例如,第一个下载的用户只能从服务 器或者上传者处下载目标文件,对于头几个用户即使相互共享,但是由于可利用的下载源 少,因此下载并不快。因此,现有技术还有待于改进和发展。

发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种多媒体文件 共享系统及其共享多媒体文件的方法,提供了一种新型的面向虚拟网络的多媒体共享方 法,用户可以在相当短的时间内完成多媒体文件的上传和下载,从而轻松地与用户的社交 圈子的人进行媒体共享,为用户提供了方便;同时降低了服务器的配置及维护成本,提高了 网络资源的利用率。本发明解决技术问题所采用的技术方案如下
一种多媒体文件共享系统共享多媒体文件的方法,其中,包括步骤
A、通过使用终端接收用户输入的操作指令建立好友列表;
B、在使用终端上建立用于存储多媒体文件数据的专用存储区;并对需上传的多媒体文 件进行分块成为多个多媒体文件块,以及创建针对该多媒体文件分块后的索引表,并将该 多媒体文件的索引表上传至服务器;
C、服务器接收该多媒体文件的索引表,并控制使用终端将多媒体文件块预先发布到其好友列表上的多个不同的使用终端上,并且每完成一多媒体文件块的传输,服务器实时监 测更新该多媒体文件块对应的索引表上的索引;当监测到多媒体文件块的发布范围达到设 定值时,控制使用终端终止文件块的发布;
D、使用终端接收目标用户输入的下载某多媒体文件的指令,根据该需下载的多媒体文 件的索引表下载该多媒体文件。所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤A具体包括 Al、使用终端通过用户操作界面接收用户输入的用户登录信息,并向服务器发送该用
户登录信息;
A2、当所述用户登录信息得到服务器验证通过后,使用终端通过其提供的添加好友的 界面菜单从所述服务器获取好友信息,并将获取的好友信息加载到本地好友列表中。所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所述步骤B中的 对需上传的多媒体文件进行分块成为多个多媒体文件块,以及创建针对该多媒体文件分块 后的索引表,将该多媒体文件的索引表上传至服务器具体包括
Bi、使用终端对需上传的本地存储的多媒体文件进行分块,将该多媒体文件从形式上 分成若干多媒体文件块,并计算出每个多媒体文件块对应的哈希值;
B2、根据计算出的每个多媒体文件块对应的哈希值,创建相应的多媒体文件的索引表, 索引表的索引信息内容包括该多媒体文件的每个多媒体文件块的哈希值,及该多媒体文件 所处的使用终端的IP地址,以及该多媒体文件块在该使用终端上的存储位置; B3、使用终端将创建的多媒体文件的索引表上传至服务器。所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤C具体包括步 骤
Cl、服务器接收存储多媒体文件的索引表,并从存储该多媒体文件的使用终端的好友 列表中查询用户的好友信息,以及定位各好友的使用终端,并向存储该多媒体文件的使用 终端发送多媒体文件块发布指令;
C2、存储该多媒体文件的使用终端接收服务器的多媒体文件块发布指令,并根据服务 器的指令分多次,每次主动与一部分在线的好友的使用终端建立网络连接;
C3、使用终端根据所述多媒体文件的索引表每次选出若干个多媒体文件块,并将选出 的多媒体文件块的数据发送给已建立好网络连接的好友的使用终端。所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤C3还包括若 对方的好友使用终端返回其专用存储区的空间不足的信息,则终止向该好友使用终端传送 文件块。所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤C3还包括每 完成一多媒体文件块的传输,服务器实时监测更新该多媒体文件块对应的索引表上的索 引。所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤C3之后还包括 步骤
C4、服务器通过更新的索引表,监测到同样的多媒体文件块被发布到新的使用终端上, 在等待一预定时间后,向所述新的使用终端发送多媒体文件块发布指令,并返回步骤C2 ; C5、当服务器监测到多媒体文件块的发布范围达到设定值时,终止文件块的发布。
所述多媒体文件共享系统共享多媒体文件的方法,其中,所述步骤D具体包括 D1、当使用终端接收到目标用户输入的下载某个多媒体文件的指令时,从服务器上下
载该多媒体文件对应的索引表;
D2、使用终端根据索引表的索引文件的信息,逐个获取该多媒体文件的文件块; D3、当某个文件块存在于多个使用终端上时,同时与该多个使用终端进行连接,发送数 据请求,从多个源头同时下载该多媒体文件数据。一种多媒体文件共享系统,包括服务器和若干使用终端,其中,所述服务器包括用 户管理模块、索引管理模块和传播管理模块;
所述用户管理模块,用于负责好友列表的维护,将使用终端添加的新的好友后信息进 行存储,以及用于提供查询接口给使用终端查询好友列表信息;
所述索引管理模块,用于对多媒体文件的索引表进行管理,每完成一多媒体文件块的 传输,实时更新该多媒体文件块对应的索引表上的索引信息;所述索引信息包括多媒体 文件块的哈希值、使用终端的IP和多媒体文件块在使用终端上的存储位置;
所述传播管理模块,用于当使用终端需上传多媒体文件时,接收用户上传的多媒体文 件的索引表,并控制使用终端分多次将多媒体文件块预先发布到好友的使用终端上;以及 用于当监测到多媒体文件块的发布范围达到设定值时,终止文件块的发布;
所述使用终端包括好友信息管理模块、分块模块、文件块上传模块、文件块下载模块和 专用区域管理模块;
所述好友信息管理模块,用于接收用户的操作进行用户注册以及好友查询、添加、删除 的管理;
所述分块模块,用于对需上传的多媒体文件进行分块,将该多媒体文件从形式上分成 若干个多媒体文件块,并计算出每个多媒体文件块对应的哈希值,以及创建针对该多媒体 文件分块后的索引表,并将该索引表上传至服务器;
所述文件块上传模块,用于接收服务器的多媒体文件块发布指令,将对应的多媒体文 件块发送给由服务器端选定的好友的使用终端;
所述文件块下载模块,用于接收下载指令下载多媒体文件的文件块,并将下载的文件 块存入专用存储区中;
所述专用区域管理模块,用于建立存储多媒体文件数据的专用存储区以及对该专用存 储区进行管理。所述的多媒体文件共享系统,其中,所述传播管理模块进一步包括 接收单元,用于接收存储多媒体文件的索引表;
定位单元,用于从使用终端的好友列表中查询用户的好友信息,定位各好友的使用终
端;
指令发送单元,用于向各好友的使用终端发送多媒体文件块发布指令; 控制单元,用于控制存储该多媒体文件的使用终端,根据服务器的多媒体文件块发布 指令,主动与在线的好友的使用终端建立网络连接;并根据多媒体文件的索引表每次选出 若干多媒体文件块,并将选出的多媒体文件块的数据发送给已建立好网络连接的好友的使 用终端。本发明所提供的多媒体文件共享系统及其共享多媒体文件的方法,由于采用了服务器控制使用终端以类似于病毒传播的方式将多媒体的文件块预先发布到多个不同的使 用终端上,并且服务器实时监测该多媒体文件对应的索引表,控制多媒体文件块发布的程 度。当监测到文件块的分布范围达到设定值时,控制使用终端终止文件块的发布,此时各文 件块已经预先布置到一定范围内,后续用户可以在短时间内完成多媒体文件的下载。使得 用户在操作使用终端时,不再仅仅是传统的播放操作,而且还能通过使用终端与朋友,家人 进行视频的分享操作。通过本发明的一种新型的面向虚拟网络的多媒体共享方法,用户可 以在相当短的时间内完成多媒体文件的上传和下载,从而轻松地与用户的社交圈子的人进 行媒体共享,使使用终端增加了互联网社交共享的新功能。另外,降低了服务器的配置及维护成本,运营商需要维护的服务器资源不会很多, 因为服务器主要是维护用户的好友列表,索引文件;通过直接使用用户设备的使用终端中 那块专门划出来的专用存储区,虚拟组成一个巨大的云存储设备,而且用户量越大,整体的 服务质量将会越高,提高了网络资源的利用率,为用户提供了方便。


图1是本发明实施列的多媒体文件共享系统连接原理图。图2是本发明实施例的使用终端内部原理框图。图3是本发明实施例的多媒体文件共享系统共享多媒体文件的方法流程图。图4是本发明实施例多媒体文件共享系统的服务器的传播管理模块内部框图。
具体实施例方式本发明所提供的一种多媒体文件共享系统及其共享多媒体文件的方法,为使本发 明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细 说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例所提供的一种多媒体文件共享系统,如图1所示,包括服务器和若 干使用终端(如图1所示的使用终端A、使用终端B、使用终端C···),其中,所述服务器包括用 户管理模块、索引管理模块和传播管理模块,另外还设置用于存储用户信息的好友列表、及 用于存储多媒体文件的索引文件。所述使用终端可以是个人计算机、掌上电脑、手机等智能 设备,也可以是以影音娱乐为主要目的的消费类电子设备,例如播放器、游戏机以及一体机 等,在每一使用终端上建立有用于存储多媒体文件的专用存储区。所述用户管理模块,一方面用于负责好友列表的维护,以及将使用终端添加的新 的好友信息进行存储,另一方面用于提供查询接口给使用终端查询好友列表信息;譬如、当 用户通过UI界面添加了新的好友后,该用户管理模块将好友信息存储起来,当其他软件模 块需要查询好友列表信息时,也是由该模块提供查询的API接口,用户的好友信息是直接 维护在服务器端而非客户端。所述索引管理模块,一方面用于对多媒体文件的索引表进行管理,每完成一多媒 体文件块的传输,实时监测更新该多媒体文件块对应的索引表上的索引信息;索引表的索 引信息的更新包括对多媒体文件块的哈希值、使用终端的IP和多媒体文件块在使用终端 上的具体存储位置的更新。其中,索引管理模块是核心模块,在本发明中,每个多媒体文件对应一张单独的索引表存储在服务器的索引文件中,索引管理模块就是对索引文件中的索引表进行操作管理 的模块。每当使用终端完成了一个完整的多媒体文件块下载后,使用终端就会发送一条索 引更新消息给索引管理模块,索引更新消息将包含以下几个关键字段内容多媒体文件块 的哈希值(哈希算法将任意长度的二进制值映射为固定长度的较小二进制值,这个小的二 进制值称为哈希值),使用终端的IP,多媒体文件块在使用终端上的具体存储位置。索引管理模块在收到消息后,更新该多媒体视频文件对应的索引文件,通过这种 方式,当多媒体文件块开始通过网络传播开来后,每在一个使用终端上下载成功,就会在索 引文件中增加一项对应的记录,以这种方式,索引文件实时维护互联网上全局的文件块分 布,这也是传播管理模块做决策判断的数据基础。所述传播管理模块一方面用于当使用终端需上传多媒体文件时,接收用户上传的 多媒体文件的索引表,并控制使用终端以类似于病毒传播的方式分多次将多媒体文件块预 先发布到其好友列表上的多个不同的使用终端上;另一方面用于当监测到多媒体文件块的 发布范围达到设定值时,控制使用终端终止文件块的发布。本发明实施例服务器的传播管理模块是整个方案中的决策模块,主要承担两件工 作调度多媒体文件块的传播,以及在合适的时间点控制多媒体文件块的过度传播。譬如、传播管理模块首先通过用户管理模块,从好友列表中查询到用户的好友信 息,定位这些好友的使用终端,随后发指令给需要上传多媒体文件的使用终端进行文件的 发布;用户使用终端收到指令后,与在线的活跃好友的使用终端首先建立起网络连接,随后 随机从之前建立好的多媒体文件索引表中选出若干多媒体文件块,将这些选出的多媒体文 件块的数据发送给同样是被随机挑选出来的好友的使用终端,所有的这些操作都是在后台 进行,由于文件块本身的数据量并不大,所以整个的数据传输不会对用户的其他操作产生 影响。当多媒体文件块传播完毕,索引被更新后,服务器中的传播管理模块通过查询索 引文件中索引表的索引信息,会意识到此时同样的多媒体文件块被发布到了不同的设备 上,传播管理模块可以在隔了一段时间后(这样做的目的是减轻设备负担,避免过于频繁的 数据传输操作),向新的好友的使用终端发送多媒体文件块发布指令,该新的好友的使用终 端搜索自己的好友列表,再次重复前述的操作流程。传播管理模块的另外一项重要功能是控制传播,当传播管理模块监测到在某个多 媒体文件的索引表中拥有该多媒体文件的文件块的使用终端达到一预定数量的时候(例 如500或者1000),停止该多媒体文件的传播,即不再向使用终端发送发布该多媒体文件 相关文件块的指令。通常来说,当同时在线且拥有多媒体文件的文件块的使用终端达到 500-1000个时就足以提供良好的上传和下载服务。具体地,传播管理模块设置一个用于终止多媒体文件传播的传播参数,当拥有某 多媒体文件的文件块的使用终端达到传播参数设定的数量时终止该多媒体文件的传播。由 于用户数量的规模对多媒体文件的传播存在较大的影响,一个只有1万左右用户的使用终 端网络与一个拥有100万左右用户的使用终端网络之间的差异是很大的,因此,该传播参 数可以根据网络规模动态地调整,网络规模较大时,该传播参数可以相应设定得大一些,以 便使传播扩散得更快。
如图2所示,所述使用终端包括好友信息管理模块、分块模块、专用区域管理模 块、文件块上传模块和文件块下载模块。其中、所述好友信息管理模块用于接收用户的操作进行用户注册以及好友查询、 添加、删除的管理;譬如通过好友信息管理模块进行用户注册以及好友查询、添加、删除等。分块模块用于对需上传的多媒体文件按固定大小的分块方式进行分块,将该多媒 体文件从形式上分成若干大小相同的多媒体文件块,并计算出每个多媒体文件块对应的哈 希值,以及创建针对该多媒体文件分块后的索引表,并将该索引表上传至服务器;譬如对于 上传文件的场景,分块模块对被上传的文件按固定大小的分块方式进行一次切割(并不需 要实际上的切割分块),并对每个文件块计算出对应的哈希值,然后构建出一张初始的索引 表,并且将该索引表上传给服务器的索引管理模块。在另一实施例中,分块模块还可以采用 按比例的分块方式、或者按照其他相关算法的分块方式对需上传的多媒体文件进行分块。专用区域管理模块用于建立存储多媒体文件数据的专用存储区以及对该专用存 储区进行管理,如图1和图2所示。譬如、通过专用区域管理模块建立专门的存储区域即专 用存储区,并对该专用存储区进行管理,例如检测专用区域剩余空间的大小、删除文件块以 及合并文件块等。文件块上传模块用于接收服务器的多媒体文件块发布指令,将对应的多媒体文件 块发送给多个由服务器端选定的好友的使用终端;通过文件块上传模块将若干多媒体文件 块发送给多个由服务器端选定的好友的使用终端上。文件块下载模块用于接收下载指令下载多媒体文件的文件块,并将下载的文件块 存入专用存储区中;
譬如、对于自动下载文件块的场景,接收来自传播管理模块的下载指令后,通过文件块 下载模块下载相应的多媒体文件块,并且将其存入专门划出的专用存储区中;
再比如、对于通过使用终端下载整个多媒体文件的场景,接收用户下载多媒体视频文 件的指令后,然后通过多媒体文件块下载模块以P2P的方式下载视频文件的所有文件块, 并组合成一个多媒体视频文件。基于上述实施例的多媒体文件共享系统,本发明实施例还提供了一种多媒体文件 共享系统共享多媒体文件的方法,如图3所示,所述方法主要包括以下步骤
步骤S100、通过使用终端接收用户输入的操作指令建立好友列表。其中,该步骤SlOO在实施时具体包括:Al、使用终端通过用户操作界面接收用户 输入的用户登录信息,并向服务器发送该用户登录信息;A2、当所述用户登录信息得到服务 器验证通过后,使用终端通过其提供的添加好友的界面菜单从所述服务器获取好友信息, 并将获取的好友信息加载到本地好友列表中。譬如、首先用户在第一次使用本发明的使用终端时,通过一个简单的用户操作界 面(UI)输入自己的名称进行注册,该界面程序会将用户的注册信息上传到网络的运营商服 务器中进行验证。当验证通过后可以进行正常登录,用户登录后可以通过一个专门的查询界面,从 该服务器上查询其好友的信息,并且加入到本地的好友列表中,好友列表直接通过名称标 识。好友对用户显示的是名称,与该名称相关联的是用户的IP地址,只是该IP地址对用户 而言是不可见的,对于软件而言是唯一标识用户的ID。
10
步骤S200、在使用终端上建立用于存储多媒体文件数据的专用存储区;并对需上 传的多媒体文件进行分块成为多个多媒体文件块,以及创建针对该多媒体文件分块后的索 引表,并将该多媒体文件的索引表上传至服务器。譬如,在本发明实施例中,用户的使用终端可以不断添加新的好友信息进入这个 好友列表中,每次开机或者关机时,使用终端会实时向服务器更新自身的最新上下线状态, 同时查询好友列表中各位好友的最新状态。当前使用终端基本都已经内置了硬盘等存储设备,需要把硬盘划出一块专门的专 用存储区,用来存储多媒体等数据所用,理论上该专用存储区越大越好。当同时在线的使用终端数量足够大时,这些被专门划分出来的使用终端专用存储 区,就通过网络组织成了一个巨大的虚拟硬盘空间,如图1如示的虚拟存储空间。其中,该步骤S200中的对需上传的多媒体文件进行分块成为多个多媒体文件块, 以及创建针对该多媒体文件分块后的索引表,将该多媒体文件的索引表上传至服务器在具 体实施时包括以下步骤
Bi、使用终端对需上传的本地存储的多媒体文件按固定大小的分块方式进行分块,将 该多媒体文件从形式上分成若干大小相同的多媒体文件块,并计算出每个多媒体文件块对 应的哈希值;
B2、根据计算出的每个多媒体文件块对应的哈希值,创建相应的多媒体文件的索引表, 索引表的索引信息内容包括该多媒体文件的每个多媒体文件块的哈希值,及该多媒体文件 所处的使用终端的IP地址,以及该多媒体文件块在该使用终端上的存储位置; B3、使用终端将创建的多媒体文件的索引表上传至服务器。例如当用户需要进行多媒体文件(如视频文件)的上传时,本发明实施例其实已经 不再是将整个视频文件上传,而是首先利用分块模块对本地视频文件按固定大小的分块方 式进行一次切割(并不需要实际上的切割分块),将其形式上分成若干大小相同的多媒体文 件块,并对每个多媒体文件块计算出其对应的哈希值,然后构建出一张针对该视频文件的 索引表,索引表的索引信息内容是该多媒体文件的每个块的哈希值,该块所处的使用终端 的IP地址,以及该块在该使用终端设备上的存储位置。在初始情况下,该索引表中的内容,尤其是IP地址和存储位置,全部都是位于本 地使用终端上的信息,当该索引表被上传到服务器上后,上传过程就宣告结束,操作可以直 接返回给用户控制,以这种操作方式,整个上传过程可以在非常短的时间内结束,因为上传 给服务器的只是该视频文件的索引表,而不是视频文件本身。这样可以有效地降低服务器 的配置及维护成本。步骤S300、服务器接收该多媒体文件的索引表,并控制该使用终端以类似于病毒 传播的方式将多媒体文件块预先发布到其好友列表上的多个不同的使用终端上,并且每完 成一多媒体文件块的传输,服务器实时监测更新该多媒体文件块对应的索引表上的索引; 当监测到多媒体文件块的发布范围达到设定值时,控制使用终端终止文件块的发布;
该步骤S300在具体实施时包括
Cl、服务器接收并存储多媒体文件的索引表,服务器收到索引表后,会从存储该多媒体 文件的使用终端的好友列表中查询用户的好友信息,并定位这些好友的使用终端,随后向 存储该多媒体文件的使用终端发送多媒体文件块发布指令,通知该使用终端可以进行多媒体文件的发布,进入步骤C2。C2、存储该多媒体文件的使用终端接收服务器的多媒体文件块发布指令后,根据 服务器的指令分多次,每次主动与一部分在线的好友的使用终端建立网络连接;
C3、使用终端根据所述多媒体文件的索引表每次选出若干多媒体文件块,并将选出的 多媒体文件块的数据发送给已建立好网络连接的好友的使用终端。本实施例中服务器收到索引后,会根据用户使用终端中的好友列表,定位这些好 友的使用终端,随后发指令给存储该多媒体文件的使用终端以进行文件的发布。用户使用终端收到服务器的指令后,主动与在线的活跃的好友使用终端首先建立 起网络连接,每次从之前建立好的文件索引表中选出若干多媒体文件块,将这些多媒体文 件块的数据发送给同样是被服务器挑选出来的好友使用终端。具体地,服务器控制上传文 件的使用终端分m次每次选出1/m的多媒体文件块,通过文件块上传模块发送给l/η的好 友的使用终端,该使用终端为在线状态。这里的m和η例如都可以为10,这表示每次挑出 10%的文件块发送给10%的好友,挑选时排除掉已经被挑选过的文件块和好友,该用户使用 终端通过上述方式将全部多媒体文件块逐渐发送给不同好友的使用终端。根据系统设定的 相关共享协议,所有的这些操作都是在后台进行,由于分块后的多媒体文件块本身的数据 量并不大,所以整个的数据传输不会对用户的其他操作产生影响。当好友不足时,文件块的 传播中止,直到有新的好友加入,此时传播会重新启动直至终止。以这种方式,用户的使用终端在连线状态下,同时与好友列表中的数个使用终端 建立网络连接,并且传输特定的多媒体文件块数据,好友的使用终端的收到的多媒体文件 块数据后就存储在预先在硬盘上被划出的那个专用存储区上。每完成一多媒体文件块的传输,服务器实时监测更新该多媒体文件块对应的索引 表上的索引。即当一个完整的多媒体文件块完成传输后,立刻更新服务器上索引文件上相 应的索引表,对于该多媒体文件块,此时同样的哈希值将对应多个不同的IP值和多个不同 的存储位置。当索引被更新后,服务器通过索引管理模块对索引表的监测意识到此时同样的多 媒体文件块被发布到了多个不同的使用终端设备上,服务器可以在隔了一段时间后,同时 向新的好友的使用终端发送多媒体文件块发布指令,该新的好友的使用终端会搜索自己的 好友列表,将其收到的多媒体文件块再次发送给自己的l/η的好友的使用终端上。以本发明的通过服务器控制使用终端以类似于病毒传播的方式将多媒体文件块 预先发布到其好友列表上的多个不同的使用终端上的方式,多媒体文件块可以在后台迅速 地以好友,好友的好友,好友的好友的好友这种方式,传播开来,同样的一个多媒体文件块 可以自动地被发布到多个使用终端设备中,根据好友列表进行类似于病毒式的传播,并且 每次传播,都将更新一次服务器上该文件对应的索引表。此时,若对方回报其专用存储区的 空间不足,则终止往这个好友的使用终端上传送文件块。同时,本发明实施中服务器实时维护及分析索引表,当已经有足够多用户的使用 终端分布了某个多媒体文件的足够的文件块时,服务器就可以终止上述传播。具体地,服务 器实时监测及分析索引表,当某个视频文件的文件块存放在500个使用终端的时候,由于 此数量已足以提供良好的下载服务,服务器不再发送发布该视频文件的指令给相应的使用 终端,从而终止传播。
步骤S400、使用终端接收目标用户输入的下载某多媒体文件的指令,根据该需下 载的多媒体文件的索引表采用P2P方式下载播放该多媒体文件。其中,该目标用户是指期望播放或者直接下载某个多媒体文件的用户,其通过使 用终端上相应的软件程序界面执行用户的操作,此处的多媒体文件是指在服务器中已经存 有索引表的多媒体文件,用户可以通过上述软件程序界面获知哪些多媒体文件(具体是指 该多媒体文件的索引表)已经被其他使用终端上传到服务器中供用户下载。该步骤S400在 具体实施例包括
D1、当目标用户需要播放或者下载某个多媒体文件时,从服务器上下载该多媒体文件 对应的索引表;
D2、使用终端根据索引表的索引文件的信息,逐个获取该多媒体文件的文件块; D3、当某个文件块存在于多个使用终端上时,同时与该多个使用终端进行连接,发送数 据请求,从多个源头同时下载该多媒体文件数据。譬如、当目标用户要播放或者直接下载某个视频文件时,直接从服务器上下载该 视频文件对应的索引,用户使用终端根据索引文件的信息,通过文件块下载模块逐个对各 文件块进行下载获取,此时,若此视频文件已经过预先传播,则同一个文件块不但存在于原 上传者的使用终端上,而且存在于其他被传播过的使用终端上。当某个文件块存在于多个 使用终端上时,目标用户的使用终端同时与这多个使用终端进行连接,发送数据请求,以这 种方式,传统的一次只能从一个源头下载数据的模式,变为一次可以从多个源头同时下载 数据,整个下载的速率将可以提高数倍,无论是下载还是播放,整个速度都可以大大加强。基于上述实施例,本发明所述的多媒体文件共享系统,如图4所示,其传播管理模 块具体包括
接收单元,用于接收存储多媒体文件的索引表;具体如上所述。定位单元,用于从使用终端的好友列表中查询用户的好友信息,定位各好友的使 用终端的位置等;具体如上所述。指令发送单元,用于向各好友的使用终端发送多媒体文件块发布指令;具体如上 所述。控制单元,用于控制存储该多媒体文件的使用终端,根据服务器的多媒体文件块 发布指令,主动与在线的好友的使用终端建立网络连接;并根据所述多媒体文件的索引表 随机选出若干多媒体文件块,并将随机选出的多媒体文件块的数据发送给已建立好网络连 接的好友的使用终端,具体如上所述。综上所述,本发明所提供的多媒体文件共享系统及其共享多媒体文件的方法,由 于采用了服务器控制使用终端以类似于病毒传播的方式将多媒体的文件块预先发布到多 个不同的使用终端上,并且服务器实时监测各多媒体文件对应的索引表,控制多媒体文件 块发布的程度。当监测到文件块的分布范围达到设定值时,控制使用终端终止文件块的发 布,此时各文件块已经预先布置到一定范围内,后续用户可以在短时间内完成多媒体文件 的下载,由于开始阶段就存在多个下载源,因此用户可以进行快速的下载。使得用户在操 作使用终端时,不再仅仅是传统的播放操作,而且还能通过使用终端与朋友,家人进行视频 的分享操作。通过本发明的一种新型的面向虚拟网络的多媒体共享方法,用户可以在相当 短的时间内完成多媒体文件的上传和下载,从而轻松地与用户的社交圈子的人进行媒体共享,使使用终端增加了互联网社交共享的新功能。另外,降低了服务器的配置及维护成本,运营商需要维护的服务器资源不会很多, 因为服务器主要是维护用户的好友列表,索引文件;通过直接使用用户设备的使用终端中 那块专门划出来的专用存储区,虚拟组成一个巨大的云存储设备,而且用户量越大,整体的 服务质量将会越高,提高了网络资源的利用率,为用户提供了方便。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可 以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保 护范围。
权利要求
1.一种多媒体文件共享系统共享多媒体文件的方法,其特征在于,包括步骤A、通过使用终端接收用户输入的操作指令建立好友列表;B、在使用终端上建立用于存储多媒体文件数据的专用存储区,并对需上传的多媒体文 件进行分块成为多个多媒体文件块,以及创建针对该多媒体文件分块后的索引表,并将该 多媒体文件的索引表上传至服务器;C、服务器接收该多媒体文件的索引表,并控制使用终端将多媒体文件块预先发布到其 好友列表上的多个不同的使用终端上,并且每完成一多媒体文件块的传输,服务器实时监 测更新该多媒体文件块对应的索引表上的索引;当监测到多媒体文件块的发布范围达到设 定值时,控制使用终端终止文件块的发布;D、使用终端接收目标用户输入的下载某多媒体文件的指令,根据该需下载的多媒体文 件的索引表下载该多媒体文件。
2.根据权利要求1所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤A具体包括Al、使用终端通过用户操作界面接收用户输入的用户登录信息,并向服务器发送该用 户登录信息;A2、当所述用户登录信息得到服务器验证通过后,使用终端通过其提供的添加好友的 界面菜单从所述服务器获取好友信息,并将获取的好友信息加载到本地好友列表中。
3.根据权利要求1所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤B中的对需上传的多媒体文件进行分块成为多个多媒体文件块,以及创建针对该多 媒体文件分块后的索引表,将该多媒体文件的索引表上传至服务器具体包括Bi、使用终端对需上传的本地存储的多媒体文件进行分块,将该多媒体文件从形式上 分成若干多媒体文件块,并计算出每个多媒体文件块对应的哈希值;B2、根据计算出的每个多媒体文件块对应的哈希值,创建相应的多媒体文件的索引表, 索引表的索引信息内容包括该多媒体文件的每个多媒体文件块的哈希值,及该多媒体文件 所处的使用终端的IP地址,以及该多媒体文件块在该使用终端上的存储位置;B3、使用终端将创建的多媒体文件的索引表上传至服务器。
4.根据权利要求1所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤C具体包括步骤Cl、服务器接收存储多媒体文件的索引表,并从存储该多媒体文件的使用终端的好友 列表中查询用户的好友信息,以及定位各好友的使用终端,并向存储该多媒体文件的使用 终端发送多媒体文件块发布指令;C2、存储该多媒体文件的使用终端接收服务器的多媒体文件块发布指令,并根据服务 器的指令分多次,每次主动与一部分在线的好友的使用终端建立网络连接;C3、使用终端根据所述多媒体文件的索引表每次选出若干个多媒体文件块,并将选出 的多媒体文件块的数据发送给已建立好网络连接的好友的使用终端。
5.根据权利要求4所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤C3还包括若对方的好友使用终端返回其专用存储区的空间不足的信息,则终止向 该好友使用终端传送文件块。
6.根据权利要求4所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所述步骤C3还包括每完成一多媒体文件块的传输,服务器实时监测更新该多媒体文件块对 应的索引表上的索引。
7.根据权利要求6所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤C3之后还包括步骤C4、服务器通过更新的索引表,监测到同样的多媒体文件块被发布到新的使用终端上, 在等待一预定时间后,向所述新的使用终端发送多媒体文件块发布指令,并返回步骤C2 ; C5、当服务器监测到多媒体文件块的发布范围达到设定值时,终止文件块的发布。
8.根据权利要求1所述多媒体文件共享系统共享多媒体文件的方法,其特征在于,所 述步骤D具体包括D1、当使用终端接收到目标用户输入的下载某个多媒体文件的指令时,从服务器上下 载该多媒体文件对应的索引表;D2、使用终端根据索引表的索引文件的信息,逐个获取该多媒体文件的文件块; D3、当某个文件块存在于多个使用终端上时,同时与该多个使用终端进行连接,发送数 据请求,从多个源头同时下载该多媒体文件数据。
9.一种多媒体文件共享系统,包括服务器和若干使用终端,其特征在于,所述服务器包 括用户管理模块、索引管理模块和传播管理模块;所述用户管理模块,用于负责好友列表的维护,将使用终端添加的新的好友后信息进 行存储,以及用于提供查询接口给使用终端查询好友列表信息;所述索引管理模块,用于对多媒体文件的索引表进行管理,每完成一多媒体文件块的 传输,实时更新该多媒体文件块对应的索引表上的索引信息;所述索引信息包括多媒体 文件块的哈希值、使用终端的IP和多媒体文件块在使用终端上的存储位置;所述传播管理模块,用于当使用终端需上传多媒体文件时,接收用户上传的多媒体文 件的索引表,并控制使用终端分多次将多媒体文件块预先发布到其好友的使用终端上;以 及用于当监测到多媒体文件块的发布范围达到设定值时,终止文件块的发布;所述使用终端包括好友信息管理模块、分块模块、文件块上传模块、文件块下载模块和 专用区域管理模块;所述好友信息管理模块,用于接收用户的操作进行用户注册以及好友查询、添加、删除 的管理;所述分块模块,用于对需上传的多媒体文件进行分块,将该多媒体文件从形式上分成 若干多媒体文件块,并计算出每个多媒体文件块对应的哈希值,以及创建针对该多媒体文 件分块后的索引表,并将该索引表上传至服务器;所述文件块上传模块,用于接收服务器的多媒体文件块发布指令,将对应的多媒体文 件块发送给由服务器端选定的好友的使用终端;所述文件块下载模块,用于接收下载指令下载多媒体文件的文件块,并将下载的文件 块存入专用存储区中;所述专用区域管理模块,用于建立存储多媒体文件数据的专用存储区以及对该专用存 储区进行管理。
10.根据权利要求9所述的多媒体文件共享系统,其特征在于,所述传播管理模块进一步包括接收单元,用于接收存储多媒体文件的索引表;定位单元,用于从使用终端的好友列表中查询用户的好友信息,定位各好友的使用终端;指令发送单元,用于向各使用终端发送多媒体文件块发布指令; 控制单元,用于控制存储该多媒体文件的使用终端,根据服务器的多媒体文件块发布 指令,主动与在线的好友的使用终端建立网络连接;并根据多媒体文件的索引表每次选出 若干个多媒体文件块,并将选出的多媒体文件块的数据发送给已建立好网络连接的好友的 使用终端。
全文摘要
本发明涉及共享技术领域,公开了一种多媒体文件共享系统及其共享多媒体文件的方法使用终端建立专用存储区;将多媒体文件的索引表上传至服务器;服务器接收索引表并指令使用终端将文件块发送给关联的使用终端;使用终端下载多媒体文件。其中,服务器控制使用终端以类似于病毒传播的方式将多媒体的文件块预先发布到多个不同的使用终端上,并且服务器实时监测该多媒体文件对应的索引表,控制多媒体文件块发布的程度。用户可以在相当短的时间内完成多媒体文件的上传和下载,从而轻松地与用户的社交圈子的人进行媒体共享,为用户提供了方便;同时降低了服务器的配置及维护成本,提高了网络资源的利用率。
文档编号H04L29/06GK102137163SQ201110069339
公开日2011年7月27日 申请日期2011年3月22日 优先权日2011年3月22日
发明者孙翀 申请人:Tcl集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1