著录项信息
专利名称 | 在线媒体播放方法、服务器及系统 |
申请号 | CN201410025883.1 | 申请日期 | 2014-01-20 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2014-10-08 | 公开/公告号 | CN104093044A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N21/262 | IPC分类号 | H;0;4;N;2;1;/;2;6;2;;;H;0;4;N;2;1;/;4;3;5查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 傅鸿城;曾义;张庆;赵威 |
代理机构 | 深圳市深佳知识产权代理事务所(普通合伙) | 代理人 | 王仲凯 |
摘要
本发明涉及一种在线媒体播放方法、服务器及系统,该方法包括:服务器获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表;服务器将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端;客户端将获取的预推媒体文件的首片数据缓存在本地,供用户播放。由此可以实现快速加载媒体文件的首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线媒体文件的等待时间,提高了在线媒体播放效果。
在线媒体播放方法、服务器及系统\n技术领域\n[0001] 本发明涉及互联网技术领域,尤其涉及一种在线媒体播放方法、服务器及系统。\n背景技术\n[0002] 目前在播放在线媒体文件(比如试听歌曲)时,通常是通过HTTP协议或P2P到CDN或服务器上拉取媒体文件,在用户点击到从CDN或服务器上拉取首片歌曲文件的过程中,用户需要等待比较长时间才能听到歌曲,由此降低了在线媒体播放效果,影响了用户体验。\n发明内容\n[0003] 本发明实施例提供一种在线媒体播放方法、服务器及系统,旨在减少在线媒体播放时用户等待时间,提高在线媒体播放效果。\n[0004] 本发明实施例提出一种在线媒体播放方法,包括:\n[0005] 服务器获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0006] 所述服务器将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端;\n[0007] 所述客户端将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0008] 本发明实施例还提出一种在线媒体播放方法,包括:\n[0009] 服务器获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0010] 将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端,由所述客户端将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0011] 本发明实施例还提出一种在线媒体播放系统,包括:客户端和与所述客户端通信连接的服务器,其中:\n[0012] 所述服务器,用于获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端;\n[0013] 所述客户端,用于将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0014] 本发明实施例还提出一种在线媒体播放服务器,包括:\n[0015] 生成模块,用于获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0016] 推送模块,用于将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端,由所述客户端将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0017] 本发明实施例提出的一种在线媒体播放方法、服务器及系统,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n附图说明\n[0018] 图1是本发明实施例涉及的硬件环境架构图;\n[0019] 图2是本发明在线媒体播放方法第一实施例的流程示意图;\n[0020] 图3是本发明在线媒体播放方法第二实施例的流程示意图;\n[0021] 图4是本发明在线媒体播放方法第三实施例的流程示意图;\n[0022] 图5是本发明在线媒体播放方法第四实施例的流程示意图;\n[0023] 图6是本发明在线媒体播放方法第五实施例的流程示意图;\n[0024] 图7是本发明在线媒体播放方法第六实施例的流程示意图;\n[0025] 图8是本发明在线媒体播放服务器第一实施例的功能模块示意图;\n[0026] 图9是本发明在线媒体播放服务器第二实施例的功能模块示意图;\n[0027] 图10是本发明在线媒体播放服务器第三实施例的功能模块示意图。\n[0028] 为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。\n具体实施方式\n[0029] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0030] 如图1所示,图1是本发明实施例涉及的硬件环境架构图。本发明实施例涉及的硬件运行环境包括客户端10及服务器20,其中,客户端10与服务器20通过网络通信连接,客户端10上安装有应用程序,并提供用户操作界面,供用户选择要播放的音视频等媒体文件,客户端10根据用户的播放指令向服务器20发送播放请求拉取对应的媒体文体进行播放。\n[0031] 由于现有技术中,在用户点击选取播放媒体文件到从服务器20上拉取媒体文件的过程中,用户需要等待比较长时间才能听到歌曲或看到视频,由此降低了在线媒体播放效果。\n[0032] 本实施例在客户端10应用程序播放当前媒体文件(含音乐、视频等)前,由服务器\n20提前推测用户播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端10,并保存到客户端10本地,等用户真正选择播放预推媒体文件时,无需等待即可播放。\n[0033] 具体地,基于上述图1所示的硬件架构,如图2所示,提出本发明第一实施例的在线媒体播放方法。\n[0034] 如图2所示,本发明第一实施例提出一种在线媒体播放方法,包括:\n[0035] 步骤S101,服务器获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0036] 其中,用户的历史播放行为包括客户端上报的用户历史播放记录,比如用户的媒体文件播放列表(如歌单)和用户播放操作历史记录(比如用户试听了某首歌曲等)。\n[0037] 作为一种实施方式,服务器可以周期性(比如每天)获取用户的播放行为。\n[0038] 服务器在接收到客户端上报的用户历史播放记录后,分析所述用户历史播放记录,由此预测用户的播放行为路径,进而选择相应的媒体文件,生成预推媒体文件列表。\n[0039] 此外,服务器在生成预推媒体文件列表时,还可结合考虑预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,来预测用户的播放行为路径,选择相应的媒体文件,生成预推媒体文件列表。\n[0040] 以播放歌曲为例,服务器可以获取用户的歌单、大众试听热门歌曲、新歌首发、用户试听和操作历史记录等信息,据此预测用户的播放行为路径,选择相应的歌曲作为用户可能喜欢或试听的歌曲,生成预推媒体文件列表。\n[0041] 通过上述方案,在用户试听歌曲时,可以增加客户端本地对歌曲的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0042] 步骤S102,所述服务器将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端;\n[0043] 步骤S103,所述客户端将接收的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0044] 在生成预推媒体文件列表后,服务器将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端。\n[0045] 其中,首片数据是指在线播放媒体文件时,客户端需要拉取的供解码器播放的第一片流媒体数据。由于现有技术中,在用户点击选取播放媒体文件到从服务器上拉取媒体文件的过程中,在加载歌曲首片数据时,首片数据缓冲时间较长,增加了用户播放在线歌曲的等待时间,本实施例将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端,由客户端缓存,等用户真正选择播放预推媒体文件时,无需等待即可播放,从而可以快速加载歌曲首片数据并播放,减少了首片数据缓冲时间,减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0046] 作为一种较佳实施方式,服务器在将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端时,可以主动推送,也可以根据客户端的请求推送。\n[0047] 具体地,服务器在根据客户端的请求下发首片数据的实施方式中,可以采用以下方式:\n[0048] 客户端向服务器发送列表获取请求,服务器根据接收到客户端的列表获取请求后,根据该列表获取请求将所述预推媒体文件列表发送给客户端,由客户端在设定时刻(比如网络空闲时)从服务器拉取所述预推媒体文件列表中的预推媒体文件的首片数据,并缓存在本地,供用户播放。\n[0049] 客户端可以选择在网络空闲时,比如用户处于非听歌或非下载状态时,从服务器拉取首片数据缓存在本地。当用户处于听歌状态时,在当前播放歌曲缓冲完成以后,可以同时缓存用户的下一首歌和预拉取媒体文件列表中的歌曲首片数据。\n[0050] 此外,对于客户端而言,如果本地存储歌曲的磁盘空间不够,则可以删除用户不听或听歌最少的缓存歌曲文件,将拉取的首片歌曲数据存储。\n[0051] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0052] 如图3所示,本发明第二实施例提出一种在线媒体播放方法,在上述第一实施例的基础上,在上述步骤S103之后,还包括:\n[0053] 步骤S104,所述客户端接收到用户的播放指令后,根据所述播放指令从本地缓存中获取对应的预推媒体文件的首片数据并播放;\n[0054] 步骤S105,向所述服务器发送播放请求,所述播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率;\n[0055] 步骤S106,所述服务器根据所述播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据。\n[0056] 本实施例与上述图2所示的第一实施例的区别在于,本实施例还包括客户端播放缓存的预推媒体文件的方案。\n[0057] 具体地,首先,客户端接收用户的播放指令,该播放指令中携带有用户选择的媒体文件的ID。\n[0058] 客户端接收到用户的播放指令后,根据该播放指令携带的媒体文件的ID从本地缓存查找对应的预推媒体文件的首片数据,若查找到,则播放该对应的预推媒体文件的首片数据;若未查找到,则从服务器拉取该ID对应的媒体文件。本实施例以查找到对应的预推媒体文件的首片数据进行说明。\n[0059] 在播放该对应的预推媒体文件的首片数据的同时,客户端会向服务器发送一基于http(超文本传输协议)的播放请求,该播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率。\n[0060] 当前网络的播放码率由用户选择或者系统默认设置。\n[0061] 服务器接收到客户端发来的播放请求后,根据该播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据,由此,可以使得客户端能够播放完整的媒体文件。\n[0062] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0063] 如图4所示,本发明第三实施例提出一种在线媒体播放方法,在上述第二实施例的基础上,在上述步骤S106之后,还包括:\n[0064] 步骤S107,所述客户端向所述服务器上报用户播放预推媒体文件的相关信息;\n[0065] 步骤S108,所述服务器对所述用户播放预推媒体文件的相关信息进行入库处理;\n[0066] 步骤S109,所述服务器对入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表。\n[0067] 本实施例与上述图3所示的第二实施例的区别在于,本实施例还包括服务器实时更新预推媒体文件列表的方案。\n[0068] 具体地,以歌曲为例,服务器在更新预推媒体文件列表时,可以从以下几方面获取数据更新依据:\n[0069] 1、根据用户播放列表、预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,动态控制选择预推媒体文件入库,比如,服务端可以通过用户歌单、大众听歌热门歌曲、新歌和个人试听和操作历史记录获取用户可能喜欢的歌曲列表,并将列表入库;\n[0070] 2、通过预推的历史首片数据和用户试听命中率,动态选择入库不同类型的歌曲列表;\n[0071] 3、客户端或终端在启动时,上报最近一段时间没有试听且被预推的歌曲列表,服务端接收并将歌曲列表入库;\n[0072] 4、客户端或终端访问服务器时,从服务器拉取结合可能喜欢和不喜欢的歌曲分析的歌曲列表,并将列表入库。\n[0073] 服务器对上述入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表,比如删除命中率低的歌曲,添加新的热门歌曲等,由此,可以精准分析用户可能喜欢的歌曲,提高客户端缓存的预推媒体文件的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0074] 如图5所示,本发明第四实施例提出一种在线媒体播放方法,包括:\n[0075] 步骤S201,服务器获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0076] 步骤S202,将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端,由所述客户端将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0077] 其中,用户的历史播放行为包括客户端上报的用户历史播放记录,比如用户的媒体文件播放列表(如歌单)和用户播放操作历史记录(比如用户试听了某首歌曲等)。\n[0078] 作为一种实施方式,服务器可以周期性(比如每天)获取用户的播放行为。\n[0079] 服务器在接收到客户端上报的用户历史播放记录后,分析所述用户历史播放记录,由此预测用户的播放行为路径,进而选择相应的媒体文件,生成预推媒体文件列表。\n[0080] 此外,服务器在生成预推媒体文件列表时,还可结合考虑预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,来预测用户的播放行为路径,选择相应的媒体文件,生成预推媒体文件列表。\n[0081] 以播放歌曲为例,服务器可以获取用户的歌单、大众试听热门歌曲、新歌首发、用户试听和操作历史记录等信息,据此预测用户的播放行为路径,选择相应的歌曲作为用户可能喜欢或试听的歌曲,生成预推媒体文件列表。\n[0082] 通过上述方案,在用户试听歌曲时,可以增加客户端本地对歌曲的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0083] 在生成预推媒体文件列表后,服务器将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端。\n[0084] 其中,首片数据是指在线播放媒体文件时,客户端需要拉取的供解码器播放的第一片流媒体数据。\n[0085] 由于现有技术中,在用户点击选取播放媒体文件到从服务器上拉取媒体文件的过程中,在加载歌曲首片数据时,首片数据缓冲时间较长,增加了用户播放在线歌曲的等待时间,本实施例将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端,由客户端缓存,等用户真正选择播放预推媒体文件时,无需等待即可播放,从而可以快速加载歌曲首片数据并播放,减少了首片数据缓冲时间,减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0086] 作为一种较佳实施方式,服务器在将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端时,可以主动推送,也可以根据客户端的请求推送。\n[0087] 具体地,服务器在根据客户端的请求下发首片数据的实施方式中,可以采用以下方式:\n[0088] 客户端向服务器发送列表获取请求,服务器根据接收到客户端的列表获取请求后,根据该列表获取请求将所述预推媒体文件列表发送给客户端,由客户端在设定时刻(比如网络空闲时)从服务器拉取所述预推媒体文件列表中的预推媒体文件的首片数据,并缓存在本地,供用户播放。\n[0089] 客户端可以选择在网络空闲时,比如用户处于非听歌或非下载状态时,从服务器拉取首片数据缓存在本地。当用户处于听歌状态时,在当前播放歌曲缓冲完成以后,可以同时缓存用户的下一首歌和预拉取媒体文件列表中的歌曲首片数据。\n[0090] 此外,对于客户端而言,如果本地存储歌曲的磁盘空间不够,则可以删除用户不听或听歌最少的缓存歌曲文件,将拉取的首片歌曲数据存储。\n[0091] 此外,为了更加节省本地空间,缓存更多的歌曲首片数据,增加试听歌曲的命中率,还可以针对不同码率存储不同大小的数据片。\n[0092] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0093] 如图6所示,本发明第五实施例提出一种在线媒体播放方法,在上述图5所示的实施例的基础上,在上述步骤S202之后,还包括:\n[0094] 步骤S203,当客户端根据用户的播放指令,从客户端本地缓存中获取对应的预推媒体文件的首片数据并播放时,所述服务器接收所述客户端发送的播放请求,所述播放请求中携带有客户端当前播放的预推媒体文件的ID、域名以及当前网络的播放码率;\n[0095] 步骤S204,根据所述播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据。\n[0096] 本实施例与上述图5所示的第四实施例的区别在于,本实施例还包括客户端播放缓存的预推媒体文件的方案。\n[0097] 具体地,首先,客户端接收用户的播放指令,该播放指令中携带有用户选择的媒体文件的ID。\n[0098] 客户端接收到用户的播放指令后,根据该播放指令携带的媒体文件的ID从本地缓存查找对应的预推媒体文件的首片数据,若查找到,则播放该对应的预推媒体文件的首片数据;若未查找到,则从服务器拉取该ID对应的媒体文件。本实施例以查找到对应的预推媒体文件的首片数据进行说明。\n[0099] 在播放该对应的预推媒体文件的首片数据的同时,客户端会向服务器发送一基于http(超文本传输协议)的播放请求,该播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率。\n[0100] 当前网络的播放码率由用户选择或者系统默认设置。\n[0101] 服务器接收到客户端发来的播放请求后,根据该播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据,由此,可以使得客户端能够播放完整的媒体文件。\n[0102] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0103] 如图7所示,本发明第六实施例提出一种在线媒体播放方法,在上述图6所示的实施例的基础上,在上述步骤S204之后,还包括:\n[0104] 步骤S205,所述服务器接收所述客户端上报的用户播放预推媒体文件的相关信息;\n[0105] 步骤S206,对所述用户播放预推媒体文件的相关信息进行入库处理;\n[0106] 步骤S207,对入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表。\n[0107] 本实施例与上述图6所示的第二实施例的区别在于,本实施例还包括服务器实时更新预推媒体文件列表的方案。\n[0108] 具体地,以歌曲为例,服务器在更新预推媒体文件列表时,可以从以下几方面获取数据更新依据:\n[0109] 1、根据用户播放列表、预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,动态控制选择预推媒体文件入库,比如,服务端可以通过用户歌单、大众听歌热门歌曲、新歌和个人试听和操作历史记录获取用户可能喜欢的歌曲列表,并将列表入库;\n[0110] 2、通过预推的历史首片数据和用户试听命中率,动态选择入库不同类型的歌曲列表;\n[0111] 3、客户端或终端在启动时,上报最近一段时间没有试听且被预推的歌曲列表,服务端接收并将歌曲列表入库;\n[0112] 4、客户端或终端访问服务器时,从服务器拉取结合可能喜欢和不喜欢的歌曲分析的歌曲列表,并将列表入库。\n[0113] 服务器对上述入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表,比如删除命中率低的歌曲,添加新的热门歌曲等,由此,可以精准分析用户可能喜欢的歌曲,提高客户端缓存的预推媒体文件的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0114] 参照图1所示,本发明较佳实施例提出一种在线媒体播放系统,包括:客户端10和与所述客户端10通信连接的服务器20,其中:\n[0115] 所述服务器20,用于获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端10;\n[0116] 所述客户端10,用于将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0117] 其中,用户的历史播放行为包括客户端10上报的用户历史播放记录,比如用户的媒体文件播放列表(如歌单)和用户播放操作历史记录(比如用户试听了某首歌曲等)。\n[0118] 作为一种实施方式,服务器20可以周期性(比如每天)获取用户的播放行为。\n[0119] 服务器20在接收到客户端10上报的用户历史播放记录后,分析所述用户历史播放记录,由此预测用户的播放行为路径,进而选择相应的媒体文件,生成预推媒体文件列表。\n[0120] 此外,服务器20在生成预推媒体文件列表时,还可结合考虑预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,来预测用户的播放行为路径,选择相应的媒体文件,生成预推媒体文件列表。\n[0121] 以播放歌曲为例,服务器20可以获取用户的歌单、大众试听热门歌曲、新歌首发、用户试听和操作历史记录等信息,据此预测用户的播放行为路径,选择相应的歌曲作为用户可能喜欢或试听的歌曲,生成预推媒体文件列表。\n[0122] 通过上述方案,在用户试听歌曲时,可以增加客户端10本地对歌曲的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0123] 在生成预推媒体文件列表后,服务器20将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端10。\n[0124] 其中,首片数据是指在线播放媒体文件时,客户端10需要拉取的供解码器播放的第一片流媒体数据。\n[0125] 由于现有技术中,在用户点击选取播放媒体文件到从服务器20上拉取媒体文件的过程中,在加载歌曲首片数据时,首片数据缓冲时间较长,增加了用户播放在线歌曲的等待时间,本实施例将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端10,由客户端10缓存,等用户真正选择播放预推媒体文件时,无需等待即可播放,从而可以快速加载歌曲首片数据并播放,减少了首片数据缓冲时间,减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0126] 作为一种较佳实施方式,服务器20在将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端10时,可以主动推送,也可以根据客户端10的请求推送。\n[0127] 具体地,服务器20在根据客户端10的请求下发首片数据的实施方式中,可以采用以下方式:\n[0128] 客户端10向服务器20发送列表获取请求,服务器20根据接收到客户端10的列表获取请求后,根据该列表获取请求将所述预推媒体文件列表发送给客户端,由客户端10在设定时刻(比如网络空闲时)从服务器20拉取所述预推媒体文件列表中的预推媒体文件的首片数据,并缓存在本地,供用户播放。\n[0129] 客户端10可以选择在网络空闲时,比如用户处于非听歌或非下载状态时,从服务器20拉取首片数据。当用户处于听歌状态时,在当前播放歌曲缓冲完成以后,可以同时缓存用户的下一首歌和预拉取媒体文件列表中的歌曲首片数据。\n[0130] 此外,对于客户端10而言,如果本地存储歌曲的磁盘空间不够,则可以删除用户不听或听歌最少的缓存歌曲文件,将拉取的首片歌曲数据存储。\n[0131] 此外,为了更加节省本地空间,缓存更多的歌曲首片数据,增加试听歌曲的命中率,还可以针对不同码率存储不同大小的数据片。\n[0132] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端10缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0133] 进一步地,所述客户端10,还用于在接收到用户的播放指令后,根据所述播放指令从本地缓存中获取对应的预推媒体文件的首片数据并播放;向所述服务器20发送播放请求,所述播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率;\n[0134] 所述服务器20,还用于根据所述播放请求,向所述客户端10返回当前播放的预推媒体文件的首片数据之后的媒体数据。\n[0135] 具体地,首先,客户端10接收用户的播放指令,该播放指令中携带有用户选择的媒体文件的ID。\n[0136] 客户端10接收到用户的播放指令后,根据该播放指令携带的媒体文件的ID从本地缓存查找对应的预推媒体文件的首片数据,若查找到,则播放该对应的预推媒体文件的首片数据;若未查找到,则从服务器20拉取该ID对应的媒体文件。本实施例以查找到对应的预推媒体文件的首片数据进行说明。\n[0137] 在播放该对应的预推媒体文件的首片数据的同时,客户端10会向服务器20发送一基于http(超文本传输协议)的播放请求,该播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率。\n[0138] 当前网络的播放码率由用户选择或者系统默认设置。\n[0139] 服务器20接收到客户端10发来的播放请求后,根据该播放请求,向所述客户端10返回当前播放的预推媒体文件的首片数据之后的媒体数据,由此,可以使得客户端10能够播放完整的媒体文件。\n[0140] 进一步地,所述客户端10,还用于向所述服务器20上报用户播放预推媒体文件的相关信息;\n[0141] 所述服务器20,还用于对所述用户播放预推媒体文件的相关信息进行入库处理;\n对入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表。\n[0142] 具体地,以歌曲为例,服务器20在更新预推媒体文件列表时,可以从以下几方面获取数据更新依据:\n[0143] 1、根据用户播放列表、预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,动态控制选择预推媒体文件入库,比如,服务端可以通过用户歌单、大众听歌热门歌曲、新歌和个人试听和操作历史记录获取用户可能喜欢的歌曲列表,并将列表入库;\n[0144] 2、通过预推的历史首片数据和用户试听命中率,动态选择入库不同类型的歌曲列表;\n[0145] 3、客户端10或终端在启动时,上报最近一段时间没有试听且被预推的歌曲列表,服务端接收并将歌曲列表入库;\n[0146] 4、客户端10或终端访问服务器20时,从服务器20拉取结合可能喜欢和不喜欢的歌曲分析的歌曲列表,并将列表入库。\n[0147] 服务器20对上述入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表,比如删除命中率低的歌曲,添加新的热门歌曲等,由此,可以精准分析用户可能喜欢的歌曲,提高客户端10缓存的预推媒体文件的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0148] 如图8所示,本发明第一实施例提出一种在线媒体播放服务器,包括:生成模块401及推送模块402,其中:\n[0149] 生成模块401,用于获取用户的历史播放行为,基于所述用户的历史播放行为,生成预推媒体文件列表;\n[0150] 推送模块402,用于将所述预推媒体文件列表中的预推媒体文件的首片数据下发给客户端,由所述客户端将获取的所述预推媒体文件的首片数据缓存在本地,供用户播放。\n[0151] 其中,用户的历史播放行为包括客户端上报的用户历史播放记录,比如用户的媒体文件播放列表(如歌单)和用户播放操作历史记录(比如用户试听了某首歌曲等)。\n[0152] 作为一种实施方式,服务器可以周期性(比如每天)获取用户的播放行为。\n[0153] 服务器的生成模块401在接收到客户端上报的用户历史播放记录后,分析所述用户历史播放记录,由此预测用户的播放行为路径,进而选择相应的媒体文件,生成预推媒体文件列表。\n[0154] 此外,服务器在生成预推媒体文件列表时,还可结合考虑预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,来预测用户的播放行为路径,选择相应的媒体文件,生成预推媒体文件列表。\n[0155] 以播放歌曲为例,服务器可以获取用户的歌单、大众试听热门歌曲、新歌首发、用户试听和操作历史记录等信息,据此预测用户的播放行为路径,选择相应的歌曲作为用户可能喜欢或试听的歌曲,生成预推媒体文件列表。\n[0156] 通过上述方案,在用户试听歌曲时,可以增加客户端本地对歌曲的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0157] 在生成预推媒体文件列表后,服务器的推送模块402将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端。\n[0158] 其中,首片数据是指在线播放媒体文件时,客户端需要拉取的供解码器播放的第一片流媒体数据。\n[0159] 由于现有技术中,在用户点击选取播放媒体文件到从服务器上拉取媒体文件的过程中,在加载歌曲首片数据时,首片数据缓冲时间较长,增加了用户播放在线歌曲的等待时间,本实施例将预推媒体文件列表中的预推媒体文件的首片数据推送给客户端,由客户端缓存,等用户真正选择播放预推媒体文件时,无需等待即可播放,从而可以快速加载歌曲首片数据并播放,减少了首片数据缓冲时间,减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0160] 作为一种较佳实施方式,服务器在将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端时,可以主动推送,也可以根据客户端的请求推送。\n[0161] 具体地,服务器在根据客户端的请求下发首片数据的实施方式中,可以采用以下方式:\n[0162] 客户端向服务器发送列表获取请求,服务器根据接收到客户端的列表获取请求后,根据该列表获取请求将所述预推媒体文件列表发送给客户端,由客户端在设定时刻(比如网络空闲时)从服务器拉取所述预推媒体文件列表中的预推媒体文件的首片数据,并缓存在本地,供用户播放。\n[0163] 客户端可以选择在网络空闲时,比如用户处于非听歌或非下载状态时,从服务器拉取首片数据。当用户处于听歌状态时,在当前播放歌曲缓冲完成以后,可以同时缓存用户的下一首歌和预拉取媒体文件列表中的歌曲首片数据。\n[0164] 此外,对于客户端而言,如果本地存储歌曲的磁盘空间不够,则可以删除用户不听或听歌最少的缓存歌曲文件,将拉取的首片歌曲数据存储。此外,为了更加节省本地空间,缓存更多的歌曲首片数据,增加试听歌曲的命中率,还可以针对不同码率存储不同大小的数据片。\n[0165] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0166] 如图9所示,本发明第二实施例提出一种在线媒体播放服务器,在上述图8所示的第一实施例的基础上,还包括:接收模块403;\n[0167] 所述接收模块,用于当客户端根据用户的播放指令,从客户端本地缓存中获取对应的预推媒体文件的首片数据并播放时,接收所述客户端发送的播放请求,所述播放请求中携带有客户端当前播放的预推媒体文件的ID、域名以及当前网络的播放码率;\n[0168] 所述推送模块,还用于根据所述播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据。\n[0169] 本实施例与上述图8所示的实施例的区别在于,本实施例还包括客户端播放缓存的预推媒体文件的方案。\n[0170] 具体地,首先,客户端接收用户的播放指令,该播放指令中携带有用户选择的媒体文件的ID。\n[0171] 客户端接收到用户的播放指令后,根据该播放指令携带的媒体文件的ID从本地缓存查找对应的预推媒体文件的首片数据,若查找到,则播放该对应的预推媒体文件的首片数据;若未查找到,则从服务器拉取该ID对应的媒体文件。本实施例以查找到对应的预推媒体文件的首片数据进行说明。\n[0172] 在播放该对应的预推媒体文件的首片数据的同时,客户端会向服务器发送一基于http(超文本传输协议)的播放请求,该播放请求中携带有当前播放的预推媒体文件的ID、域名以及当前网络的播放码率。\n[0173] 当前网络的播放码率由用户选择或者系统默认设置。\n[0174] 服务器接收到客户端发来的播放请求后,根据该播放请求,向所述客户端返回当前播放的预推媒体文件的首片数据之后的媒体数据,由此,可以使得客户端能够播放完整的媒体文件。\n[0175] 本实施例通过上述方案,通过获取用户的历史播放行为,基于用户的历史播放行为,生成预推媒体文件列表,将预推媒体文件列表中的预推媒体文件的首片数据下发给客户端缓存在本地,供用户播放,从而减少首片数据缓冲时间,实现快速开始播放歌曲等媒体文件。以试听歌曲为例,通过推送用户可能试听的歌曲的首片数据并缓存在本地,在用户试听歌曲时,增加本地命中率,快速加载歌曲首片数据并播放,减少首片数据缓冲时间,从而减少了用户播放在线歌曲的等待时间,提高了在线媒体播放效果。\n[0176] 如图10所示,本发明第三实施例提出一种在线媒体播放服务器,在上述图9所示的第二实施例的基础上,还包括:\n[0177] 更新模块404,用于接收所述客户端上报的用户播放预推媒体文件的相关信息;对所述用户播放预推媒体文件的相关信息进行入库处理;对入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表。\n[0178] 本实施例与上述图9所示的第二实施例的区别在于,本实施例还包括服务器实时更新预推媒体文件列表的方案。\n[0179] 具体地,以歌曲为例,服务器在更新预推媒体文件列表时,可以从以下几方面获取数据更新依据:\n[0180] 1、根据用户播放列表、预定时间段内播放频率达到设定阈值的媒体文件以及最新推出的媒体文件,动态控制选择预推媒体文件入库,比如,服务端可以通过用户歌单、大众听歌热门歌曲、新歌和个人试听和操作历史记录获取用户可能喜欢的歌曲列表,并将列表入库;\n[0181] 2、通过预推的历史首片数据和用户试听命中率,动态选择入库不同类型的歌曲列表;\n[0182] 3、客户端或终端在启动时,上报最近一段时间没有试听且被预推的歌曲列表,服务端接收并将歌曲列表入库;\n[0183] 4、客户端或终端访问服务器时,从服务器拉取结合可能喜欢和不喜欢的歌曲分析的歌曲列表,并将列表入库。\n[0184] 服务器对上述入库的媒体数据进行分析,根据分析结果更新所述预推媒体文件列表,由此,可以精准分析用户可能喜欢的歌曲,提高客户端缓存的预推媒体文件的命中率,快速加载歌曲首片数据并播放,减少用户等待时间,提升用户体验。\n[0185] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。\n[0186] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。\n[0187] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。\n[0188] 以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
法律信息
- 2016-11-02
专利实施许可合同备案的生效
IPC(主分类): H04N 21/262
合同备案号: 2016990000422
专利号: ZL 201410025883.1
申请日: 2014.01.20
让与人: 腾讯科技(深圳)有限公司
受让人: 海洋互动(北京)信息技术有限公司
发明名称: 在线媒体播放方法、服务器及系统
申请公布日: 2014.10.08
授权公告日: 2016.07.06
许可种类: 普通许可
备案日期: 2016.10.09
- 2016-07-06
- 2014-10-29
实质审查的生效
IPC(主分类): H04N 21/262
专利申请号: 201410025883.1
申请日: 2014.01.20
- 2014-10-08
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-05-15
|
2011-11-11
| | |
2
| |
2012-12-26
|
2012-08-22
| | |
3
| |
2009-05-27
|
2008-12-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |