首页 / 专利库 / 软件 / 用户界面 / 一种直播处理的方法、终端设备及存储介质

一种直播处理的方法、终端设备及存储介质

阅读:1030发布:2020-07-13

专利汇可以提供一种直播处理的方法、终端设备及存储介质专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种直播处理的方法,包括:接收对直播应用的启动指令,并根据启动指令加载直播应用中各直播间的播放链接;接收对各直播间中目标直播间的选择指令;根据目标直播间的当前播放链接,获取目标直播间的直播数据,该当前播放链接为已加载的各直播间的播放链接中目标直播间所对应的播放链接; 渲染 直播数据并展示渲染得到的直播内容。本申请 实施例 采用在用户点击直播应用时加载各直播间的播放链接,然后在用户选择目标直播间时根据目标直播间的播放链接直接拉取目标直播间的直播数据进行渲染和展示,从而缩短从点击直播间到终端上展示出直播内容的时间。,下面是一种直播处理的方法、终端设备及存储介质专利的具体信息内容。

1.一种直播处理的方法,其特征在于,包括:
接收对直播应用的启动指令,并根据所述启动指令加载所述直播应用中各直播间的播放链接;
接收对所述各直播间中目标直播间的选择指令;
根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
渲染所述直播数据并展示渲染得到的直播内容。
2.根据权利要求1所述的方法,其特征在于,所述接收对所述各直播间中目标直播间的选择指令之前,所述方法还包括:
初始化播放器,并为所述播放器配置直播参数;
所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,包括:
将所述目标直播间的当前播放链接配置给所述播放器,并为所述播放器获取所述目标直播间的直播数据。
3.根据权利要求2所述的方法,其特征在于,所述接收对所述各直播间中目标直播间的选择指令之前,所述方法还包括:
对所述各直播间的播放链接进行域名解析,以得到与所述各直播间的播放链接对应的响应最快的推流服务器的互联网协议IP地址;
对应地,所述为所述播放器获取所述目标直播间的直播数据,包括:
根据所述目标直播间的当前播放链接对应的IP地址,为所述播放器从对应的推流服务器获取所述目标直播间的直播数据。
4.根据权利要求1-3任一所述的方法,其特征在于,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还包括:
获取所述目标直播间的最新播放链接;
若所述最新播放链接与所述当前播放链接一致,则忽略所述最新播放链接;
若所述最新播放链接与所述当前播放链接不一致,则用所述最新播放链接替换所述当前播放链接。
5.根据权利要求1-3任一所述的方法,其特征在于,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还包括:
调高所述目标直播间的操作队列中目标事件的优先级,所述目标事件包括所述直播数据的返回事件,以及用户对所述目标直播间的点击事件;
按照调整后的所述操作队列的事件的优先级,加载所述目标直播间的用户界面
6.根据权利要求3所述的方法,其特征在于,所述接收对直播应用的启动指令之后,所述方法还包括:
获取点对点数据的配置信息;
所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还包括:
向所述目标直播间的当前播放链接对应的IP地址所指示的推流服务器发送所述配置信息。
7.根据权利要求1-3任一所述的方法,其特征在于,所述直播应用中各直播间的播放链接被双重加密,所述根据所述启动指令加载所述直播应用中各直播间的播放链接之后,所述方法还包括:
对所述直播应用中各直播间的播放链接按照与双重加密相反的顺序进行双重解密。
8.一种终端设备,其特征在于,包括:
接收单元,用于接收对直播应用的启动指令;
加载单元,用于根据所述接收单元接收的所述启动指令加载所述直播应用中各直播间的播放链接;
所述接收单元,还用于接收对所述各直播间中目标直播间的选择指令;
获取单元,用于根据所述接收单元接收的选择指令所选择的目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
渲染单元,用于渲染所述获取单元获取的所述直播数据;
展示单元,用于展示所述渲染单元渲染得到的直播内容。
9.根据权利要求8所述的终端设备,其特征在于,所述终端设备还包括配置单元;
所述配置单元,用于初始化播放器,并为所述播放器配置直播参数;
所述获取单元,用于将所述目标直播间的当前播放链接配置给所述配置单元初始化的所述播放器,并为所述播放器获取所述目标直播间的直播数据。
10.根据权利要求9所述的终端设备,其特征在于,所述终端设备还包括解析单元,所述解析单元,用于对所述各直播间的播放链接进行域名解析,以得到与所述各直播间的播放链接对应的响应最快的推流服务器的互联网协议IP地址;
所述获取单元,用于根据所述解析单元解析出的所述目标直播间的当前播放链接对应的IP地址,为所述播放器从对应的推流服务器获取所述目标直播间的直播数据。
11.根据权利要求8-10任一所述的终端设备,其特征在于,所述终端设备还包括第一处理单元,
所述获取单元,还用于获取所述目标直播间的最新播放链接;
所述第一处理单元,用于若所述获取单元获取的所述最新播放链接与所述当前播放链接一致,则忽略所述最新播放链接;若所述最新播放链接与所述当前播放链接不一致,则用所述最新播放链接替换所述当前播放链接。
12.根据权利要求8-10任一所述的终端设备,其特征在于,所述终端设备还包括第二处理单元;
所述第二处理单元用于:
调高所述目标直播间的操作队列中目标事件的优先级,所述目标事件包括所述获取单元获取的直播数据的返回事件,以及用户对所述目标直播间的点击事件;
按照调整后的所述操作队列的事件的优先级,加载所述目标直播间的用户界面。
13.一种终端设备,其特征在于,所述终端设备包括:输入/输出接口、处理器和存储器,所述存储器中存储有程序指令;
所述处理器用于执行存储器中存储的程序指令,执行如权利要求1-7中任一所述的方法。
14.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1-7中任一项所述的方法。

说明书全文

一种直播处理的方法、终端设备及存储介质

技术领域

[0001] 本申请涉及互联网技术领域,具体涉及一种直播处理的方法、终端设备及计算机可读存储介质。

背景技术

[0002] 随着网络带宽的提高,直播业务越来越受青睐,直播的种类也有很多,如:游戏中的电竞类直播、各种生活直播等。
[0003] 用户想要观看某个主播的直播内容时,需要在终端上打开该主播的直播间,然后终端会根据用户对直播间的操作初始化该直播间,并从服务器获取该直播间的播放地址,再根据该播放地址从相应设备上下载该直播间的直播数据,并对该直播间的数据进行解码和渲染,然后展示出该直播间的直播内容。
[0004] 由上述从点击直播间到直播间展示出视频内容的过程可见,需要较长的缓冲时间才能在终端上展示出直播间正在直播的直播内容。发明内容
[0005] 本申请实施例提供一种直播处理的方法,可以缩短从点击直播间到终端设备上展示出直播内容的时间。本申请实施例还提供了相应的终端设备及计算机可读存储介质。
[0006] 本申请第一方面提供一种直播处理的方法,包括:
[0007] 接收对直播应用的启动指令,并根据所述启动指令加载所述直播应用中各直播间的播放链接;
[0008] 接收对所述各直播间中目标直播间的选择指令;
[0009] 根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
[0010] 渲染所述直播数据并展示渲染得到的直播内容。
[0011] 本申请第二方面提供一种终端设备,包括:
[0012] 接收单元,用于接收对直播应用的启动指令;
[0013] 加载单元,用于根据所述接收单元接收的所述启动指令加载所述直播应用中各直播间的播放链接;
[0014] 所述接收单元,还用于接收对所述各直播间中目标直播间的选择指令;
[0015] 获取单元,用于根据所述接收单元接收的选择指令所选择的目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
[0016] 渲染单元,用于渲染所述获取单元获取的所述直播数据;
[0017] 展示单元,用于展示所述渲染单元渲染得到的直播内容。
[0018] 本申请第三方面提供一种终端设备,所述终端设备包括:输入/输出接口、处理器和存储器,所述存储器中存储有程序指令;
[0019] 所述处理器用于执行存储器中存储的程序指令,执行上述第一方面所述的方法。
[0020] 本申请的又一方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面方面所述的方法。
[0021] 本申请的又一方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面方面所述的方法。
[0022] 本申请实施例采用在用户点击直播应用时加载各直播间的播放链接,然后在用户选择目标直播间时根据目标直播间的播放链接直接拉取目标直播间的直播数据进行渲染和展示,从而缩短从点击直播间到终端上展示出直播内容的时间。附图说明
[0023] 图1是本申请实施例中P2P直播场景的一示例示意图;
[0024] 图2是本申请实施例中终端设备的一界面示意图;
[0025] 图3是本申请实施例中直播间的一界面示意图;
[0026] 图4是本申请实施例中直播间中的一内容界面示意图;
[0027] 图5是本申请实施例中直播处理的方法的一实施例示意图;
[0028] 图6是本申请实施例中事件队列的一示例示意图;
[0029] 图7是本申请实施例中并行执行直播处理的一示例示意图;
[0030] 图8是本申请实施例中终端设备的一实施例示意图;
[0031] 图9是本申请实施例中终端设备的另一实施例示意图;
[0032] 图10是本申请实施例中终端设备的另一实施例示意图;
[0033] 图11是本申请实施例中终端设备的另一实施例示意图;
[0034] 图12是本申请实施例中终端设备的另一实施例示意图;
[0035] 图13是本申请实施例中终端设备的另一实施例示意图;
[0036] 图14是本申请实施例中终端设备的另一实施例示意图。

具体实施方式

[0037] 下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
[0038] 本申请实施例提供一种直播处理的方法,可以缩短从点击直播间到终端上展示出直播内容的时间。本申请实施例还提供了相应的终端设备及计算机可读存储介质。以下分别进行详细说明。
[0039] 直播应用为网络上用于提供直播服务的平台,例如:企鹅电竞、斗鱼、熊猫等都属于直播应用。
[0040] 直播间为主播在直播应用中所申请的房间。直播间用于主播在该房间中播放自己所直播的视频内容。用户可以通过直播间浏览该主播所直播的视频内容。
[0041] 当前直播场景中通常采用点对点(point to point,P2P)技术,P2P技术又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能和带宽,而不是把依赖都聚集在较少的几台服务器上。
[0042] 下面结合图1介绍本申请实施例中的P2P直播场景。
[0043] 图1为本申请实施例中P2P直播场景的一示例示意图。
[0044] 如图1所示,在P2P场景实施例中包括终端设备10A、终端设备10B、网络20和推流服务器30。终端设备10A、终端设备10B和推流服务器30通过网络20通信连接。
[0045] 终端设备10A和终端设备10B都可以是手机、平板电脑和个人计算机等终端。在本申请实施例中终端设备10A可以为浏览直播间的用户所使用的终端设备,终端设备10B为产生直播流的主播所使用的终端设备。当然,也可以是终端设备10A为产生直播流的主播所使用的终端设备,终端设备10B为浏览直播间的用户所使用的终端设备。
[0046] 推流服务器30可以为网络中独立的物理机,也可以是以集群形式存在的网络资源。推流服务器30用于缓存终端设备10B直播所产生的直播数据,并在终端设备10A请求相应的直播数据时,向终端设备10A发送直播数据。
[0047] 一个推流服务器30可以缓存多个终端设备10B所推送来的直播数据,而且这些直播数据不限于是一个主播所产生的直播数据,一个推流服务器30也可以为多个直播终端10A推送该终端设备10A所请求的直播数据。
[0048] 本申请实施例中,终端设备10A要访问直播间时,需要先启动直播应用,例如如图2所示,以“企鹅电竞”为例,用户点击“企鹅电竞”,则会展示出图3所示的直播间,每个直播间都有房间号,也会有主播名称,用户可以根据自己的喜好点击某个直播间,观看该直播间所直播的视频内容。例如,直播间中可能会展示出如图4所示的内容。
[0049] 考虑到从用户点击直播间到直播间显示出视频内容需要一段的时间,为了减少用户的等待时间,本申请实施例提供一种直播处理的方法,可以缩短从用户点击直播间到终端设备上展示出直播内容的时间。
[0050] 如图5所示,本申请实施例提供的直播处理的方法包括:
[0051] 101、接收对直播应用的启动指令,并根据所述启动指令加载所述直播应用中各直播间的播放链接。
[0052] 直播间的播放链接可以理解为是直播间的网页地址(uniform resoure locator,URL)。
[0053] 每个直播间都会有对应的播放链接,而且为了避免直播间被恶意攻击,后台会定时更新没有在直播的直播间的播放链接,正在直播的直播间的播放链接不会发生更新。当然,并不是每次更新播放链接都会发生变化,可能每次更新只有一部分直播间的播放链接发生变化。
[0054] 一个直播应用中会关联很多直播间,每个直播间都会有对应的播放链接,直播应用中各直播间与播放链接的对应关系可以参阅表1进行理解。
[0055] 表1:直播间与播放链接对应关系表
[0056]直播间编号 播放链接
直播间100000 URL0
直播间100001 URL1
直播间100002 URL2
直播间100003 URL3
…… ……
[0057] 以上表1只是举例说明,实际上,一个直播应用所关联的直播间会有很多个。不应将上述表1理解为是对直播间数量的限定。
[0058] 终端设备在接收到用户对直播应用的启动指令,则加载该直播应用中例如表1所示的各直播间的播放链接,这样在接收到用户对目标直播间的选择指令后就不需要再去加载目标直播间的播放链接。
[0059] 102、接收对所述各直播间中目标直播间的选择指令。
[0060] 该步骤可以参阅图3进行理解,如图3所示,用户点击了直播间1,终端设备会接收到对直播间1的选择指令,在图3的示例中,直播间1就为目标直播间。
[0061] 103、根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接。
[0062] 该步骤103的过程可以包括对当前播放链接进行域名解析,以得到当前播放链接对应的IP地址,然后根据该IP地址从相应的推流服务器上获取该目标直播间的直播数据。
[0063] 可选地,该当前播放链接对应的IP地址也可以是主播的终端设备的IP地址,然后在根据该IP地址确定对应的推流服务器,再从该推流服务器上获取该目标直播间的直播数据。
[0064] 例如:若目标直播间的当前播放链接为URL1,对该URL1进行域名解析,例如解析得到IP地址为183.13.205.27,则可以从该IP地址所指示的设备上获取该目标直播间的直播数据。
[0065] 104、渲染所述直播数据并展示渲染得到的直播内容。
[0066] 获取到直播数据后,先对直播数据进行渲染,渲染后展示。
[0067] 本申请实施例采用在用户点击直播应用时加载各直播间的播放链接,然后在用户选择目标直播间时根据目标直播间的播放链接直接拉取目标直播间的直播数据进行渲染和展示,从而缩短从点击直播间到终端上展示出直播内容的时间。
[0068] 可选地,本申请实施例中,所述接收对所述各直播间中目标直播间的选择指令之前,所述方法还可以包括:
[0069] 初始化播放器,并为所述播放器配置直播参数;
[0070] 所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,包括:
[0071] 将所述目标直播间的当前播放链接配置给所述播放器,并为所述播放器获取所述目标直播间的直播数据。
[0072] 本申请实施例中,可以在接收到用户对目标直播间的选择之前就初始化播放器,并为播放器配置直播参数,该直播参数可以包括配置直播清晰度,例如配置高清播放或者超清播放等。这样,在终端设备接收到用户对目标直播间的选择指令后,可以根据将目标直播间的当前播放链接配置给该播放器,为所述播放器获取所述目标直播间的直播数据进行直播。由此可见,在用户点击直播间之前就完成了播放器的初始化及直播参数配置,可以减少用户从点击直播间到开始直播的时间。
[0073] 另外,本申请实施例中,播放器为单例,在直播应用被启动时直接初始化即可,不需要再为单个直播间创建播放器实例。从而加快了播放器初始化的速度。
[0074] 可选地,本申请实施例中,所述接收对所述各直播间中目标直播间的选择指令之前,所述方法还包括:
[0075] 对所述各直播间的播放链接进行域名解析,以得到与所述各直播间的播放链接对应的响应最快的推流服务器的互联网协议IP地址;
[0076] 对应地,所述为所述播放器获取所述目标直播间的直播数据,包括:
[0077] 根据所述目标直播间的当前播放链接对应的IP地址,为所述播放器从对应的推流服务器获取所述目标直播间的直播数据。
[0078] 本申请实施例中,如图1所示,一个主播做直播所产生的直播数据可能缓存在多个推流服务器上,各个推流服务器的响应速度会有快有慢,从响应最快的推流服务器获取直播数据有利于快速展示直播间的直播数据。从而有利于缩短用户的等待时长。
[0079] 可选地,本申请实施例中,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还可以包括:
[0080] 获取所述目标直播间的最新播放链接;
[0081] 若所述最新播放链接与所述当前播放链接一致,则忽略所述最新播放链接;
[0082] 若所述最新播放链接与所述当前播放链接不一致,则用所述最新播放链接替换所述当前播放链接。
[0083] 本申请实施例中,因为后台会对各直播间的播放链接进行刷新,所以目标直播间的当前播放链接可能会因为链接刷新而发生变化,当然也可能后台执行了刷新,但该目标直播间的当前播放链接并没有改变。因此,需要及时去请求目标直播间的最新播放链接,若当前播放链接与最新播放链接一致,则继续播放使用该当前播放链接获取的直播数据进行播放,若当前播放链接与最新播放链接不一致,则用最新播放链接替换掉当前播放链接,使用该最新播放链接获取该目标直播间的直播数据进行播放。
[0084] 因为在启动直播应用是预先加载的当前播放链接和最新播放链接的匹配率经常会达到90%以上,所以在保证成功率的前提下通常可以将2000ms左右的直播数据的首显示时间缩短到了400ms以内。
[0085] 可选地,本申请实施例中,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还可以包括:
[0086] 调高所述目标直播间的操作队列中目标事件的优先级,所述目标事件包括所述直播数据的返回事件,以及用户对所述目标直播间的点击事件;
[0087] 按照调整后的所述操作队列的事件的优先级,加载所述目标直播间的用户界面
[0088] 本申请实施例中,由于直播间需要展示并刷新的逻辑较多,如果收到直播数据后直接唤起主线程刷新UI的话非常容易造成主线程的阻塞,用户进入直播间后往往需要等待主线程将UI全部刷新完毕后才能响应返回的直播数据。因此,本申请实施例中,终端设备会调高直播数据的返回事件或者用户对目标直播间的点击事件的优先级,本申请实施例中,优先级的调整过程可以参阅图6进行理解。这样,终端设备就会优先响应返回的直播数据进行界面展示,从而进一步缩短了从用户点击目标直播间到目标直播间展示直播数据中首帧数据的时间。
[0089] 可选地,本申请实施例中,所述接收对直播应用的启动指令之后,所述方法还可以包括:
[0090] 获取点对点数据的配置信息;
[0091] 所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还包括:
[0092] 向所述目标直播间的当前播放链接对应的IP地址所指示的推流服务器发送所述配置信息。
[0093] 本申请实施例中,使用P2P技术会涉及到两个后台部分,以游戏为例,一个后台为游戏后台,一个后台为P2P后台,推流服务器属于P2P后台。因此,P2P后台需要P2P数据的配置信息,也就是confData,因此,通过游戏后台先拉取P2P的confData,然后进入目标直播间进行P2P拉取直播数据的时候将confData传递给P2P的后台。这样就省去用户点击目标直播间时再去拉取confData的时间,拉取confData的时间大概是0.5秒,这样,又为目标直播间展示首帧数据节省了0.5秒的时间。
[0094] 可选地,本申请实施例中,所述直播应用中各直播间的播放链接被双重加密,所述根据所述启动指令加载所述直播应用中各直播间的播放链接之后,所述方法还可以包括:
[0095] 对所述直播应用中各直播间的播放链接按照与双重加密相反的顺序进行双重解密。
[0096] 本申请实施例中,一旦URL就可能导致服务器被其他恶意群体的攻击,造成负载不足而瘫痪。因此本申请实施例中通过对URL加密的方式来防止URL被盗用。
[0097] 加密:首先对字符串进行AES128加密,然后进行base64加密。
[0098] 解密:先base64解密,然后在AES128解密即可还原数据
[0099] B a s e 6 4 编 码 是 基 于 6 4 个 字 符 ( 字 符 分 别 为 :ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxzy0123456789+/)的编码方式,因为2的6次方正好为64,所以用6bit就可以表示出64个字符,例如:000000对应'A',000001对应'B',111111对应'/'。
[0100] AES就是对16byte(128bit)数据进行加密的过程。就是把128位通过一系列的变化变成另一个128数据。AES加密中密钥(key)是关键。key要先扩张,然后进行10次的行列变化,与数据进行抑或操作,才能得到加密后的数据。
[0101] 以上本申请实施例所提供的多个方案都可以缩短从用户点击目标直播间到目标直播间的首帧数据展示的时间,通过实验统计,支持P2P的大主播房间中,打开直播间并且展示出画面的时间由平均加载时长2.5s优化成为0.3s。大大优化了渲染加载的时间,实现了进入P2P情况下进入直播间的无感知画面加载。
[0102] 为了更好的理解本申请实施例所提供的直播处理的方案,下面结合图7,对本申请实施例所提供的直播处理的方法进行说明。
[0103] 如图7所示,本申请实施例中的直播处理方案,将直播间的首帧任务划分为三个并行的队列执行。
[0104] 队列1:终端设备在直播应用被启动后就初始化播放器,并配置直播参数,对直播应用中各直播间的播放链接进行域名解析,获取当前网络环境对应下响应最快推流服务器IP。
[0105] 队列2:用户点击目标直播间后,立刻将目标直播间的播放链接配置到播放器中,开始拉取首帧数据,并及时上屏显示首帧。
[0106] 队列3:在播放器拉取首帧数据时并行初始化直播间,并拉取最新播放链接等直播间播放信息,若最新播放链接与目标直播间的当前播放链接一致,则继续播放,若不一致则立刻替换播放链接。
[0107] 本申请实施例通过这种并行化的处理方式,大大缩短了从用户点击目标直播间到目标直播间展示首帧的时间。
[0108] 以上是对直播处理的方法的描述,下面结合附图介绍本申请实施例中的终端设备。
[0109] 如图8所示,本申请实施例提供的终端设备40包括:
[0110] 接收单元401,用于接收对直播应用的启动指令;
[0111] 加载单元402,用于根据所述接收单元401接收的所述启动指令加载所述直播应用中各直播间的播放链接;
[0112] 所述接收单元401,还用于接收对所述各直播间中目标直播间的选择指令;
[0113] 获取单元403,用于根据所述接收单元401接收的选择指令所选择的目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
[0114] 渲染单元404,用于渲染所述获取单元403获取的所述直播数据;
[0115] 展示单元405,用于展示所述渲染单元404渲染得到的直播内容。
[0116] 本申请实施例采用在用户点击直播应用时加载各直播间的播放链接,然后在用户选择目标直播间时根据目标直播间的播放链接直接拉取目标直播间的直播数据进行渲染和展示,从而缩短从点击直播间到终端上展示出直播内容的时间。
[0117] 可选地,参阅图9,本申请实施例提供的终端设备40还包括配置单元406;
[0118] 所述配置单元406,用于初始化播放器,并为所述播放器配置直播参数;
[0119] 所述获取单元403,用于将所述目标直播间的当前播放链接配置给所述配置单元406初始化的所述播放器,并为所述播放器获取所述目标直播间的直播数据。
[0120] 本申请实施例中,可以在接收到用户对目标直播间的选择之前就初始化播放器,并为播放器配置直播参数,该直播参数可以包括配置直播清晰度,例如配置高清播放或者超清播放等。这样,在终端设备接收到用户对目标直播间的选择指令后,可以根据将目标直播间的当前播放链接配置给该播放器,为所述播放器获取所述目标直播间的直播数据进行直播。由此可见,在用户点击直播间之前就完成了播放器的初始化及直播参数配置,可以减少用户从点击直播间到开始直播的时间。
[0121] 可选地,参阅图10,本申请实施例提供的终端设备40还包括解析单元407;
[0122] 所述解析单元407,用于对所述各直播间的播放链接进行域名解析,以得到与所述各直播间的播放链接对应的响应最快的推流服务器的互联网协议IP地址;
[0123] 所述获取单元403,用于根据所述解析单元407解析出的所述目标直播间的当前播放链接对应的IP地址,为所述播放器从对应的推流服务器获取所述目标直播间的直播数据。
[0124] 本申请实施例中,如图1所示,一个主播做直播所产生的直播数据可能缓存在多个推流服务器上,各个推流服务器的响应速度会有快有慢,从响应最快的推流服务器获取直播数据有利于快速展示直播间的直播数据。从而有利于缩短用户的等待时长。
[0125] 可选地,参阅图11,本申请实施例提供的终端设备40还包括第一处理单元408;
[0126] 所述获取单元403,还用于获取所述目标直播间的最新播放链接;
[0127] 所述第一处理单元408,用于若所述获取单元403获取的所述最新播放链接与所述当前播放链接一致,则忽略所述最新播放链接;若所述最新播放链接与所述当前播放链接不一致,则用所述最新播放链接替换所述当前播放链接。
[0128] 本申请实施例中,因为后台会对各直播间的播放链接进行刷新,所以目标直播间的当前播放链接可能会因为链接刷新而发生变化,当然也可能后台执行了刷新,但该目标直播间的当前播放链接并没有改变。因此,需要及时去请求目标直播间的最新播放链接,若当前播放链接与最新播放链接一致,则继续播放使用该当前播放链接获取的直播数据进行播放,若当前播放链接与最新播放链接不一致,则用最新播放链接替换掉当前播放链接,使用该最新播放链接获取该目标直播间的直播数据进行播放。
[0129] 因为在启动直播应用是预先加载的当前播放链接和最新播放链接的匹配率经常会达到90%以上,所以在保证成功率的前提下通常可以将2000ms左右的直播数据的首帧显示时间缩短到了400ms以内。
[0130] 可选地,参阅图12,本申请实施例提供的终端设备40还包括第二处理单元409;
[0131] 所述第二处理单元409用于:
[0132] 调高所述目标直播间的操作队列中目标事件的优先级,所述目标事件包括所述获取单元403获取的直播数据的返回事件,以及用户对所述目标直播间的点击事件;
[0133] 按照调整后的所述操作队列的事件的优先级,加载所述目标直播间的用户界面。
[0134] 本申请实施例中,由于直播间需要展示并刷新的逻辑较多,如果收到直播数据后直接唤起主线程刷新UI的话非常容易造成主线程的阻塞,用户进入直播间后往往需要等待主线程将UI全部刷新完毕后才能响应返回的直播数据。因此,本申请实施例中,终端设备会调高直播数据的返回事件或者用户对目标直播间的点击事件的优先级,本申请实施例中,优先级的调整过程可以参阅图6进行理解。这样,终端设备就会优先响应返回的直播数据进行界面展示,从而进一步缩短了从用户点击目标直播间到目标直播间展示直播数据中首帧数据的时间。
[0135] 可选地,参阅图13,本申请实施例提供的所述终端设备40还包括解密单元410,[0136] 所述解密单元410,用于在所述直播应用中各直播间的播放链接被双重加密时,对所述加载单元402加载的直播应用中各直播间的播放链接按照与双重加密相反的顺序进行双重解密。
[0137] 本申请实施例中,一旦URL就可能导致服务器被其他恶意群体的攻击,造成负载不足而瘫痪。因此本申请实施例中通过对URL加密的方式来防止URL被盗用。
[0138] 以上对终端的描述可以参阅上述图1至图7实施例中相应部分的描述进行理解,本处不再重复赘述。
[0139] 上述直播处理的过程由终端设备来执行时,例如手机,平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
[0140] 图14示出的是与本发明实施例提供的终端设备相关的手机的部分结构的框图。参考图14,手机包括:射频(Radio Frequency,RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(wireless fidelity,WiFi)模1170、处理器1180、以及摄像头1190等部件。本领域技术人员可以理解,图14中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0141] 下面结合图14对手机的各个构成部件进行具体的介绍:
[0142] RF电路1110可用于收发信息或通话过程中,信号的接收和发送,RF电路1110也就是收发器。特别地,将基站的下行信息接收后,给处理器1180处理;另外,将设计上行的数据发送给基站。通常,RF电路1110包括但不限于天线、至少一个放大器收发信机耦合器低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路1110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
[0143] 存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0144] 输入单元1130可用于接收用户选择操作,以及产生与手机的用户设置以及功能控制有关的键信号输入。例如:接收直播应用的启动指令,接收对目标直播间的选择指令。具体地,输入单元1130可包括触控面板1131以及其他输入设备1132。触控面板1131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1131上或在触控面板1131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1180,并能接收处理器1180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1131。除了触控面板1131,输入单元1130还可以包括其他输入设备1132。具体地,其他输入设备1132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球鼠标、操作杆等中的一种或多种。
[0145] 显示单元1140可用于显示直播内容。显示单元1140可包括显示面板1141,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1141。进一步的,触控面板1131可覆盖显示面板1141,当触控面板1131检测到在其上或附近的触摸操作后,传送给处理器1180以确定触摸事件的类型,随后处理器1180根据触摸事件的类型在显示面板1141上提供相应的视觉输出。虽然在图14中,触控面板1131与显示面板1141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1131与显示面板1141集成而实现手机的输入和输出功能。
[0146] 手机还可包括至少一种传感器1150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1141的亮度,接近传感器可在手机移动到边时,关闭显示面板
1141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0147] 音频电路1160、扬声器1161,传声器1162可提供用户与手机之间的音频接口。音频电路1160可将接收到的音频数据转换后的电信号,传输到扬声器1161,由扬声器1161转换为声音信号输出;另一方面,传声器1162将收集的声音信号转换为电信号,由音频电路1160接收后转换为音频数据,再将音频数据输出处理器1180处理后,经RF电路1110以发送给比如另一手机,或者将音频数据输出至存储器1120以便进一步处理。
[0148] WiFi属于短距离无线传输技术,手机通过WiFi模块1170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图14示出了WiFi模块1170,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0149] 处理器1180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1180可包括一个或多个处理单元;优选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
[0150] 摄像头1190用于采集图像。
[0151] 手机还包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理系统与处理器1180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0152] 尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0153] 在本发明实施例中,该终端所包括的处理器1180还具有以下控制功能:
[0154] 接收对直播应用的启动指令,并根据所述启动指令加载所述直播应用中各直播间的播放链接;
[0155] 接收对所述各直播间中目标直播间的选择指令;
[0156] 根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,所述当前播放链接为已加载的所述各直播间的播放链接中所述目标直播间所对应的播放链接;
[0157] 渲染所述直播数据并展示渲染得到的直播内容。
[0158] 可选地,所述接收对所述各直播间中目标直播间的选择指令之前,还包括:
[0159] 初始化播放器,并为所述播放器配置直播参数;
[0160] 所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据,包括:
[0161] 将所述目标直播间的当前播放链接配置给所述播放器,并为所述播放器获取所述目标直播间的直播数据。
[0162] 可选地,所述接收对所述各直播间中目标直播间的选择指令之前,还包括:
[0163] 对所述各直播间的播放链接进行域名解析,以得到与所述各直播间的播放链接对应的响应最快的推流服务器的互联网协议IP地址;
[0164] 对应地,所述为所述播放器获取所述目标直播间的直播数据,包括:
[0165] 根据所述目标直播间的当前播放链接对应的IP地址,为所述播放器从对应的推流服务器获取所述目标直播间的直播数据。
[0166] 可选地,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,还包括:
[0167] 获取所述目标直播间的最新播放链接;
[0168] 若所述最新播放链接与所述当前播放链接一致,则忽略所述最新播放链接;
[0169] 若所述最新播放链接与所述当前播放链接不一致,则用所述最新播放链接替换所述当前播放链接。
[0170] 可选地,所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,还包括:
[0171] 调高所述目标直播间的操作队列中目标事件的优先级,所述目标事件包括所述直播数据的返回事件,以及用户对所述目标直播间的点击事件;
[0172] 按照调整后的所述操作队列的事件的优先级,加载所述目标直播间的用户界面。
[0173] 可选地,所述接收对直播应用的启动指令之后,还包括:
[0174] 获取点对点数据的配置信息;
[0175] 所述根据所述目标直播间的当前播放链接,获取所述目标直播间的直播数据时,所述方法还包括:
[0176] 向所述目标直播间的当前播放链接对应的IP地址所指示的推流服务器发送所述配置信息。
[0177] 可选地,所述直播应用中各直播间的播放链接被双重加密,所述根据所述启动指令加载所述直播应用中各直播间的播放链接之后,还包括:
[0178] 对所述直播应用中各直播间的播放链接按照与双重加密相反的顺序进行双重解密。
[0179] 在上述实施例中,可以全部或部分地通过软件、硬件固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0180] 所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
[0181] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
[0182] 以上对本申请实施例所提供的直播处理的方法、终端设备以及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈