1.本技术涉及互联网技术领域,具体涉及一种多媒体播放方法、装置、存储介质及电子设备。
背景技术:2.随着互联网的普及,用户经常具有从网络上获取多媒体资源进行多媒体播放的需求,多媒体资源播放效果与网络传输过程及播放终端的本地缓冲区大小等息息相关。
3.目前,多媒体播放时,通常由于网络传输过程的不稳定性以及播放终端的本地缓冲区较小等原因,导致多媒体播放过程中多媒体资源请求需要耗费较多时间,容易引起资源欠载,导致播放卡顿,影响用户体验。
技术实现要素:4.本技术实施例提供一种多媒体播放方案,可以有效提升多媒体的播放效果。
5.为解决上述技术问题,本技术实施例提供以下技术方案:
6.根据本技术的一个实施例,一种多媒体播放方法,包括:向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求;基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;从所述本地缓冲区获取所述媒体解析数据,并对所述媒体解析数据进行多媒体播放;当多媒体播放至预定状态时,关闭所述目标传输控制协议链路。
7.在本技术的一些实施例中,所述向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路,包括:创建本地套接字;建立所述本地套接字与所述服务器创建的服务端套接字之间的传输控制协议链路;基于所述本地套接字,通过所述传输控制协议链路向所述服务端套接字发送所述目标连接请求,以指示所述服务器将所述传输控制协议链路调整为允许循环请求媒体资源片段的目标传输控制协议链路。
8.在本技术的一些实施例中,所述媒体资源片段包括多个;所述通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求,基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,包括:通过所述目标传输控制协议链路向所述服务器发送第一获取请求,以接收所述服务器返回的第一媒体资源片段;根据所述第一媒体资源片段,通过所述目标传输控制协议链路向所述服务器发送第二获取请求,以接收所述服务器返回的第二媒体资源片段;基于所述第一媒体资源片段与所述第二媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;通过所述目标传输控制协议链路向所述服务器循环发送后续获取请求,以接收所述服务器循环返回的后续媒体资源片段;基于返回的后续媒体资源片段,在本地缓冲区持续构建符合预设解析条件的媒体解析数据。
9.在本技术的一些实施例中,所述根据所述第一媒体资源片段,通过所述目标传输控制协议链路向所述服务器发送第二获取请求,包括:解析所述第一媒体资源片段,得到所述第一媒体资源片段的长度信息;根据所述长度信息与符合预设解析条件的长度阈值生成第二获取请求;通过所述目标传输控制协议链路向所述服务器发送所述第二获取请求。
10.在本技术的一些实施例中,所述基于所述第一媒体资源片段与所述第二媒体资源片段在本地缓冲区构建符合预设解析条件的媒体解析数据,包括:解析所述第一媒体资源片段,得到第一媒体解析数据;解析所述第二媒体资源片段,得到第二媒体解析数据;将所述第一媒体解析数据及所述第二媒体解析数据合并保存至本地缓冲区,以在本地缓冲区生成符合预设解析条件的媒体解析数据。
11.在本技术的一些实施例中,所述当多媒体播放至预定播放状态时关闭所述目标传输控制协议链路,包括:获取本地缓冲区中媒体解析数据的解析状态;根据所述解析状态确定多媒体播放是否结束;当确定多媒体播放结束时,关闭所述目标传输控制协议链路。
12.在本技术的一些实施例中,所述目标传输控制协议链路建立于本地套接字与所述服务器创建的服务端套接字之间;所述当确定多媒体播放结束时,关闭所述目标传输控制协议链路,包括:当确定多媒体播放结束时,关闭所述本地套接字。
13.根据本技术的一个实施例,一种多媒体播放装置,其包括:建立模块,用于向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;请求模块,用于通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求;构建模块,用于基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;播放模块,用于从所述本地缓冲区获取所述媒体解析数据,并对所述媒体解析数据进行多媒体播放;关闭模块,用于当多媒体播放至预定状态时,关闭所述目标传输控制协议链路。
14.根据本技术的另一实施例,一种存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行本技术实施例所述的方法。
15.根据本技术的另一实施例,一种电子设备可以包括:存储器,存储有计算机可读指令;处理器,读取存储器存储的计算机可读指令,以执行本技术实施例所述的方法。
16.本技术实施例中,向服务器发送目标连接请求,该目标连接请求用于指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;通过目标传输控制协议链路,向服务器循环发送媒体资源片段的获取请求;基于获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;从本地缓冲区获取媒体解析数据,并对媒体解析数据进行多媒体播放;当多媒体播放至预定状态时,关闭目标传输控制协议链路。
17.以这种方式,通过建立允许循环请求媒体资源片段的目标传输控制协议链路,避免链路连接过程中的时间消耗,进一步的,通过循环请求媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,进行多媒体播放,可以可靠避免资源欠载同时高效地进行多媒体播放,进而整体上多媒体资源请求耗费时间有效降低,同时可靠避免资源欠载,有效避免播放卡顿,提升多媒体播放效果,提升用户体验。
附图说明
18.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使
用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1示出了可以应用本技术实施例的系统的示意图。
20.图2示出了根据本技术的一个实施例的多媒体播放方法的流程图。
21.图3示出了根据本技术的一个实施例的多媒体播放装置的框图。
22.图4示出了根据本技术的一个实施例的电子设备的框图。
具体实施方式
23.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
24.在以下的说明中,本技术的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本技术原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
25.图1示出了可以应用本技术实施例的系统100的示意图。如图1所示,系统100可以包括服务器101、第一终端102及第二终端103。第一终端102及第二终端103可以是任意的计算机设备,例如电视、电脑、手机、智能手表以及家电设备等。服务器101可以是服务器集群或者云服务等。
26.服务器101与第一终端102及第二终端103之间可以通过有线或者无线连接的方式连接。
27.本示例的一种实施方式中,第一终端102或第二终端103可以向服务器发送目标连接请求,该目标连接请求用于指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;通过目标传输控制协议链路,向服务器循环发送媒体资源片段的获取请求;基于获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;从本地缓冲区获取媒体解析数据,并对媒体解析数据进行多媒体播放;当多媒体播放至预定状态时,关闭目标传输控制协议链路。
28.图2示意性示出了根据本技术的一个实施例的多媒体播放方法的流程图。该多媒体播放方法的执行主体可以是任意的设备,例如图1所示的第一终端102或者第二终端103。
29.如图2所示,该多媒体播放方法可以包括步骤s210至步骤s250。
30.步骤s210,向服务器发送目标连接请求,该目标连接请求用于指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;
31.步骤s220,通过目标传输控制协议链路,向服务器循环发送媒体资源片段的获取
请求;
32.步骤s230,基于获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;
33.步骤s240,从本地缓冲区获取媒体解析数据,并对媒体解析数据进行多媒体播放;
34.步骤s250,当多媒体播放至预定状态时,关闭目标传输控制协议链路。
35.下面描述进行多媒体播放时,所进行的各步骤的具体过程。
36.在步骤s210中,向服务器发送目标连接请求,该目标连接请求用于指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路。
37.本示例的实施方式中,目标连接请求可以是终端发送给服务器的请求,目标连接请求中可以携带预定指令字段,服务器接收到目标连接请求后,如果目标连接请求中包括该预定指令字段,则可以根据该预定指令字段在服务器与终端之间建立允许循环请求媒体资源片段的目标传输控制协议链路。
38.其中,该预定指令字段可以是长链接字段(keep
‑
alive字段),可以指示服务器将已经建立在终端与服务器之间的传输控制协议链路设置为保持不中断的状态,进而建立了允许循环请求媒体资源片段的目标传输控制协议链路。
39.传输控制协议链路是基于传输控制协议的通信链路,传输控制协议(tcp,transmission control protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。目标传输控制协议链路是允许循环请求媒体资源片段的传输控制协议链路,允许循环请求媒体资源片段即允许基于建立的目标传输控制协议链路向服务器循环发送请求。
40.一种方式中,如果采取对应于单次请求的传输控制协议链路,则一次请求可以从服务器请求到一部分媒体资源片段文件,每次请求完成后传输控制协议链路需要断开,不允许循环请求媒体资源片段,如果进行多次请求则需要多次建立传输控制协议链路,多次请求,多次断开传输控制协议链路,这样由于传输控制协议链路的建立是基于传输控制协议连接的3次网络数据包交互,传输控制协议链路的断开是基于传输控制协议断开的4次网络数据包交互,多次建立多次断开则会耗费较多时间,对于本地的多媒体播放进程影响较大。一种方式中,如果直接从客户端通过一次请求获取待播放多媒体的所有媒体资源片段,则对本地缓冲区具有非常高的压力,也会影响播放效果。
41.进而,向服务器发送目标连接请求,来指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路,可以有效保证后续步骤中可以高效的分段请求媒体资源片段。
42.一种实施例中,步骤s210,向服务器发送目标连接请求,目标连接请求用于指示服务器建立允许循环请求媒体资源片段的目标传输控制协议链路,包括:
43.创建本地套接字;建立本地套接字与服务器创建的服务端套接字之间的传输控制协议链路;基于本地套接字,通过传输控制协议链路向服务端套接字发送目标连接请求,以指示服务器将传输控制协议链路调整为允许循环请求媒体资源片段的目标传输控制协议链路。
44.本地套接字即终端侧的套接字,套接字即socket,本地套接字为描述终端的终端地址及端口的套接字;服务端套接字即服务器侧的套接字,服务端套接字为描述服务器中服务器地址及端口的套接字。
45.建立本地套接字与服务器创建的服务端套接字之间的传输控制协议链路,可以基于本地套接字高效及高性能地传输字节级数据,进而服务器将传输控制协议链路调整为允许循环请求媒体资源片段的目标传输控制协议链路,可以在后续步骤中,基于本地套接字及服务端套接字通过目标传输控制协议链路高效可靠地请求媒体字段片段文件。
46.在步骤s220中,通过目标传输控制协议链路,向服务器循环发送媒体资源片段的获取请求。
47.本示例的实施方式中,循环发送获取请求的方式可以是按照一定的时间间隔向服务器发送获取请求,直至待播放多媒体的媒体资源片段文件获取完毕或者在特定结束条件(例如用户点击结束播放按钮)下停止发送获取请求。其中,可以通过本地套接字向服务器循环发送媒体资源片段的获取请求。
48.在步骤s230中,基于获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据。
49.本示例的实施方式中,预设解析条件指终端中的播放器可以解析到符合播放标准的数据,一个示例中,预设解析条件为播放器可以解析到一帧音频或视频压缩数据。其中,可以通过对请求到的媒体资源片段进行解析得到媒体资源片段对应的媒体解析数据,然后,对媒体资源片段对应的媒体解析数据进行组合,在本地缓冲区构建符合预设解析条件的媒体解析数据,其中,本地缓冲区可以是终端中的存储器(例如ddr存储器)。
50.基于获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,可以在本地缓冲区较小的情况下,在循环请求媒体资源片段的基础上,由播放器循环从本地缓冲区获取符合预设解析条件的媒体解析数据进行播放。
51.一种实施例中,媒体资源片段包括多个;所述通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求,基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,包括:
52.通过目标传输控制协议链路向服务器发送第一获取请求,以接收服务器返回的第一媒体资源片段;根据第一媒体资源片段,通过目标传输控制协议链路向服务器发送第二获取请求,以接收服务器返回的第二媒体资源片段;基于第一媒体资源片段与第二媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;通过目标传输控制协议链路向服务器循环发送后续获取请求,以接收服务器循环返回的后续媒体资源片段;基于返回的后续媒体资源片段,在本地缓冲区持续构建符合预设解析条件的媒体解析数据。
53.在服务器中待播放多媒体(例如音频、视频或者音视频等)对应的多媒体资源可以由多个(至少1个或至少2个)媒体资源片段组成,第一获取请求可以是第一次获取待播放多媒体的媒体资源片段的请求,服务器响应第一获取请求可以返回第一媒体资源片段后,可以解析第一媒体资源片段得到第一媒体资源片段中的音视频正文数据(即第一媒体解析数据)以及第一媒体资源片段的长度信息等,可以将第一媒体解析数据缓存至本地缓冲区。
54.然后,服务器可以根据第一媒体资源片段的长度信息以及预设解析条件,生成第二获取请求,以获取到可以构建符合预设解析条件的媒体解析数据的第二媒体资源片段,然后解析出第二媒体资源片段中的音视频正文数据(即第二媒体解析数据),可以将第二媒体解析数据与第一媒体解析数据合并缓存至本地缓冲区,进而在本地缓冲区构建出符合预设解析条件的媒体解析数据。
55.然后,播放器可以从本地缓冲区获取符合预设解析条件的媒体解析数据进行多媒体播放,同时终端可以按照上述步骤,根据本地缓冲区中剩余的媒体解析数据的长度信息循环生成后续获取请求,通过目标传输控制协议链路向服务器循环发送后续获取请求,接收服务器循环返回的后续媒体资源片段,基于返回的后续媒体资源片段的解析后续媒体解析数据,在本地缓冲区持续构建符合预设解析条件的媒体解析数据,供播放器获取播放。
56.一种实施例中,根据所述第一媒体资源片段,通过所述目标传输控制协议链路向服务器发送第二获取请求,包括:
57.解析第一媒体资源片段,得到第一媒体资源片段的长度信息;根据长度信息与符合预设解析条件的长度阈值生成第二获取请求;通过目标传输控制协议链路向服务器发送第二获取请求。
58.预设解析条件的长度阈值可以是播放器播放多媒体时所需的媒体解析数据的长度阈值(例如可以解析出一帧音频或视频压缩数据的媒体解析数据的长度阈值),基于长度阈值减去第一媒体资源片段的长度信息中的长度数值得到差值,该差值可以生成第二获取请求,例如该差值为正值时,可以生成携带大于或等于该差值的请求数值的第二获取请求,服务器可以根据该请求数值返回响应的第二媒体资源片段,可以确保在本体缓冲区构建符合预设解析条件的媒体解析数据。
59.同理,后续获取请求,可以根据长度阈值与本地缓冲区播放后剩余的媒体解析数据的长度信息生成。
60.一种实施例中,基于第一媒体资源片段与第二媒体资源片段在本地缓冲区构建符合预设解析条件的媒体解析数据,包括:
61.解析第一媒体资源片段,得到第一媒体解析数据;解析第二媒体资源片段,得到第二媒体解析数据;将第一媒体解析数据及第二媒体解析数据合并保存至本地缓冲区,以在本地缓冲区生成符合预设解析条件的媒体解析数据。
62.媒体资源片段是通过字节流的形式传递的包括正文数据即长度信息等数据的资源片段,终端接收到第一媒体资源片段与第二媒体资源片段后,可以对其进行解析从中获取到多媒体的正文数据,例如音视频的正文数据,即第一媒体解析数据及第二媒体解析数据。进而将第一媒体解析数据及第二媒体解析数据合并保存至本地缓冲区,可以在本地缓冲区生成符合预设解析条件的媒体解析数据,第一媒体解析数据及第二媒体解析数据合并后,播放器只需从本地缓存区获取播放多媒体时所需的长度阈值对应的部分媒体解析数据进行播放即可。
63.在步骤s240中,从本地缓冲区获取媒体解析数据,并对媒体解析数据进行多媒体播放。
64.本示例的实施方式中,播放器只需从本地缓存区获取播放多媒体时所需的长度阈值对应的部分媒体解析数据,然后可以对该部分媒体解析数据按照播放格式进行解析,得到多媒体压缩数据(例如一帧完整的音频压缩数据或视频压缩数据),然后,可以把多媒体压缩数据送入各自对应解码器,等待解码器输出的输出数据,解码器输出视频压缩数据对应的视频输出数据可以是一帧为yuv数据,音频压缩数据对应的音频输出数据可以是一帧为pcm数据,视频输出数据可以送到图像渲染器上显示播放,音频输出数据可以送到音频系统进一步做后处理。
65.在步骤s250中,当多媒体播放至预定状态时,关闭目标传输控制协议链路。
66.本示例的实施方式中,待播放多媒体播放完毕或者在特定结束条件(例如用户点击结束播放按钮)下可以确定多媒体播放至预定状态。然后,断开目标传输控制协议链路便可以结束本次多媒体播放,整体播放过程流畅,播放效果有效提升。
67.一种实施例中,当多媒体播放至预定播放状态时关闭所述目标传输控制协议链路,包括:
68.获取本地缓冲区中媒体解析数据的解析状态;根据解析状态确定多媒体播放是否结束;当确定多媒体播放结束时,关闭目标传输控制协议链路。
69.解析状态即基于媒体解析数据解析多媒体压缩数据的状态,在本地缓冲区中在预定时间段内没有媒体解析数据用于解析多媒体压缩数据时,可以判断确定多媒体播放结束。这样可以根据本地缓冲区中的解析状态进行目标传输控制协议链路的关闭控制,进一步保证循环请求及构建媒体解析数据的整体可靠性。
70.一种实施例中,目标传输控制协议链路建立于本地套接字与服务器创建的服务端套接字之间;当确定多媒体播放结束时,关闭目标传输控制协议链路,包括:当确定多媒体播放结束时,关闭本地套接字。
71.以这种方式,基于步骤s210至步骤s250,通过建立允许循环请求媒体资源片段的目标传输控制协议链路,避免链路连接过程中的时间消耗,进一步的,通过循环请求媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,进行多媒体播放,可以可靠避免资源欠载同时高效地进行多媒体播放,进而整体上多媒体资源请求耗费时间有效降低,同时可靠避免资源欠载,有效避免播放卡顿,提升多媒体播放效果,提升用户体验。
72.为便于更好的实施本技术实施例提供的多媒体播放方法,本技术实施例还提供一种基于上述多媒体播放方法的多媒体播放装置。其中名词的含义与上述多媒体播放方法中相同,具体实现细节可以参考方法实施例中的说明。图3示出了根据本技术的一个实施例的多媒体播放装置的框图。
73.如图3所示,多媒体播放装置300中可以包括建立模块310、请求模块320、构建模块330、播放模块340以及关闭模块350。
74.建立模块310可以用于向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;请求模块320可以用于通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求;构建模块330可以用于基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;播放模块340可以用于从所述本地缓冲区获取所述媒体解析数据,并对所述媒体解析数据进行多媒体播放;关闭模块350可以用于当多媒体播放至预定状态时,关闭所述目标传输控制协议链路。
75.一种实施例中,所述建立模块310,包括:本地创建单元,用于创建本地套接字;链路建立单元,用于建立所述本地套接字与所述服务器创建的服务端套接字之间的传输控制协议链路;链路调整单元,用于基于所述本地套接字,通过所述传输控制协议链路向所述服务端套接字发送所述目标连接请求,以指示所述服务器将所述传输控制协议链路调整为允许循环请求媒体资源片段的目标传输控制协议链路。
76.一种实施例中,所述媒体资源片段包括多个;所述请求模块320,包括:第一请求单
元,用于通过所述目标传输控制协议链路向所述服务器发送第一获取请求,以接收所述服务器返回的第一媒体资源片段;第二请求单元,用于根据所述第一媒体资源片段,通过所述目标传输控制协议链路向所述服务器发送第二获取请求,以接收所述服务器返回的第二媒体资源片段;所述构建模块330包括:第一构建单元,用于基于所述第一媒体资源片段与所述第二媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;所述请求模块320,还包括:持续请求单元,用于通过所述目标传输控制协议链路向所述服务器循环发送后续获取请求,以接收所述服务器循环返回的后续媒体资源片段;所述构建模块330还包括:持续构建单元,用于基于返回的后续媒体资源片段,在本地缓冲区持续构建符合预设解析条件的媒体解析数据。
77.一种实施例中,第二请求单元,用于:解析所述第一媒体资源片段,得到所述第一媒体资源片段的长度信息;根据所述长度信息与符合预设解析条件的长度阈值生成第二获取请求;通过所述目标传输控制协议链路向所述服务器发送所述第二获取请求。
78.一种实施例中,所述第一构建单元,用于:解析所述第一媒体资源片段,得到第一媒体解析数据;解析所述第二媒体资源片段,得到第二媒体解析数据;将所述第一媒体解析数据及所述第二媒体解析数据合并保存至本地缓冲区,以在本地缓冲区生成符合预设解析条件的媒体解析数据。
79.一种实施例中,所述关闭模块350,包括:状态获取单元,用于获取本地缓冲区中媒体解析数据的解析状态;结束确定单元,用于根据所述解析状态确定多媒体播放是否结束;确定关闭单元,用于当确定多媒体播放结束时,关闭所述目标传输控制协议链路。
80.一种实施例中,所述目标传输控制协议链路建立于所述本地套接字与所述服务器创建的服务端套接字之间;所述确定关闭单元,用于:当确定多媒体播放结束时,关闭所述本地套接字。
81.以这种方式,基于多媒体播放装置300,通过建立允许循环请求媒体资源片段的目标传输控制协议链路,避免链路连接过程中的时间消耗,进一步的,通过循环请求媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据,进行多媒体播放,可以可靠避免资源欠载同时高效地进行多媒体播放,进而整体上多媒体资源请求耗费时间有效降低,同时可靠避免资源欠载,有效避免播放卡顿,提升多媒体播放效果,提升用户体验。
82.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
83.此外,本技术实施例还提供一种电子设备,该电子设备可以为终端或者服务器,如图4所示,其示出了本技术实施例所涉及的电子设备的结构示意图,具体来讲:
84.该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
85.处理器401是该电子设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在
存储器402内的数据,执行计算机设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户页面和应用程序等,调制解调处理器主要处理无线通讯。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
86.存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
87.电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
88.该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
89.尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如处理器401可以执行下述步骤:
90.向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路;通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求;基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;从所述本地缓冲区获取所述媒体解析数据,并对所述媒体解析数据进行多媒体播放;当多媒体播放至预定状态时,关闭所述目标传输控制协议链路。
91.一种实施例中,向服务器发送目标连接请求,所述目标连接请求用于指示所述服务器建立允许循环请求媒体资源片段的目标传输控制协议链路时,处理器401可以执行:创建本地套接字;建立所述本地套接字与所述服务器创建的服务端套接字之间的传输控制协议链路;基于所述本地套接字,通过所述传输控制协议链路向所述服务端套接字发送所述目标连接请求,以指示所述服务器将所述传输控制协议链路调整为允许循环请求媒体资源片段的目标传输控制协议链路。
92.一种实施例中,媒体资源片段包括多个;所述通过所述目标传输控制协议链路,向所述服务器循环发送媒体资源片段的获取请求,基于所述获取请求请求到的媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据时,处理器401可以执行:通过所述目标传输控制协议链路向所述服务器发送第一获取请求,以接收所述服务器返回的第一
媒体资源片段;根据所述第一媒体资源片段,通过所述目标传输控制协议链路向所述服务器发送第二获取请求,以接收所述服务器返回的第二媒体资源片段;基于所述第一媒体资源片段与所述第二媒体资源片段,在本地缓冲区构建符合预设解析条件的媒体解析数据;通过所述目标传输控制协议链路向所述服务器循环发送后续获取请求,以接收所述服务器循环返回的后续媒体资源片段;基于返回的后续媒体资源片段,在本地缓冲区持续构建符合预设解析条件的媒体解析数据。
93.一种实施例中,根据所述第一媒体资源片段,通过所述目标传输控制协议链路向所述服务器发送第二获取请求时,处理器401可以执行:解析所述第一媒体资源片段,得到所述第一媒体资源片段的长度信息;根据所述长度信息与符合预设解析条件的长度阈值生成第二获取请求;通过所述目标传输控制协议链路向所述服务器发送所述第二获取请求。
94.一种实施例中,基于所述第一媒体资源片段与所述第二媒体资源片段在本地缓冲区构建符合预设解析条件的媒体解析数据时,处理器401可以执行:解析所述第一媒体资源片段,得到第一媒体解析数据;解析所述第二媒体资源片段,得到第二媒体解析数据;将所述第一媒体解析数据及所述第二媒体解析数据合并保存至本地缓冲区,以在本地缓冲区生成符合预设解析条件的媒体解析数据。
95.一种实施例中,当多媒体播放至预定播放状态时关闭所述目标传输控制协议链路时,处理器401可以执行:获取本地缓冲区中媒体解析数据的解析状态;根据所述解析状态确定多媒体播放是否结束;当确定多媒体播放结束时,关闭所述目标传输控制协议链路。
96.一种实施例中,目标传输控制协议链路建立于所述本地套接字与所述服务器创建的服务端套接字之间;所述当确定多媒体播放结束时,关闭所述目标传输控制协议链路时,处理器401可以执行:当确定多媒体播放结束时,关闭所述本地套接字。
97.本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
98.为此,本技术实施例还提供一种存储介质,其中存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本技术实施例所提供的任一种方法中的步骤。
99.其中,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
100.由于该存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种方法中的步骤,因此,可以实现本技术实施例所提供的方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
101.本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
102.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的实施例,而可以在不脱离其范围的情况下进行各种修改和改变。