一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

支持多种流媒体传输协议的媒体播放方法和系统与流程

2021-12-01 01:35:00 来源:中国专利 TAG:


1.本技术实施例涉及通信领域,尤其涉及一种支持多种流媒体传输协议的媒体播放方法、系统、计算机设备及计算机可读存储介质。


背景技术:

2.随着流媒体技术以及传输技术的发展,越来越多的流媒体传输协议和流媒体文件格式用于在线媒体播放场景中。但是,流媒体传输协议和流媒体文件格式的多样化和互不兼容,容易导致流媒体播放失败。例如,dash传输协议和hls传输协议为两种应用较为广泛的技术方案,其特点为动态自适应码率。它们分别被部分设备或播放场景所支持,但各自仍然无法适用于所有设备和播放场景。这就导致这样一个问题:部分设备或特定场景仅能支持dash传输协议,另一部分设备或场景仅能执行hls传输协议,这种对流媒体传输协议的单一支持,会使得流媒体在特定情形下播放失败。因此,有必要提供一种能够同时支持多个流媒体传输协议的技术,从而避免在某些设备或特定场景下的媒体播放失败或体验不佳的问题。


技术实现要素:

3.有鉴于此,本技术实施例的目的是提供一种支持多种流媒体传输协议的媒体播放方法、系统、计算机设备及计算机可读存储介质,可以解决以下问题:在某些设备或特定场景下的媒体播放失败或体验不佳。
4.本技术实施例的一个方面提供了一种支持多种流媒体传输协议的媒体播放方法,包括:
5.对视频进行处理,得到对应目标格式的目标媒体资源;
6.根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文件;其中,每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容;
7.接收移动终端提供的媒体播放请求,所述媒体播放请求包括目标播放参数;
8.根据所述目标播放参数,从所述多个索引文件中选择目标索引文件;及
9.将所述目标索引文件发送至所述移动终端,以使所述移动终端:基于所述目标索引文件,通过相应的流媒体传输协议获取所述目标媒体资源中的待播放分片内容。
10.可选的,所述根据所述目标播放参数,从所述多个索引文件中选择目标索引文件,包括:
11.根据映射表与所述目标播放参数,从所述多个索引文件中选择所述目标索引文件;其中,所述映射表为预设设置并用于存储各个播放参数与各个索引文件之间的适配信息。
12.可选的,所述多个流媒体传输协议包括dash传输协议和hls传输协议,所述多个索引文件包括dash索引文件和hls索引文件;所述根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文件,包括:
13.根据所述目标媒体资源和所述dash传输协议,生成所述dash索引文件;
14.根据所述目标媒体资源和所述hls传输协议,生成所述hls索引文件。
15.可选的,所述根据所述目标播放参数,从所述多个索引文件中选择目标索引文件,包括:
16.根据所述目标播放参数,判断所述移动终端当前是否支持所述dash传输协议和所述hls传输协议;
17.若支持所述dash传输协议,则选择所述dash索引文件作为所述目标索引文件;及
18.若支持所述hls传输协议且不支持所述dash传输协议,则选择所述hls索引文件作为所述目标索引文件。
19.可选的,所述目标播放参数包括目标场景参数和/或目标设备参数,其中:
20.所述目标场景参数,用于表示所述移动终端当前的视频播放场景;
21.所述目标设备参数,用于表示所述移动终端的硬件运行环境和/或软件运行环境。
22.可选的,所述对视频进行处理,得到对应目标格式的目标媒体资源,包括:
23.对所述视频进行处理,获取与所述视频相对应的元数据,所述元数据中包括音频数据与视频数据;
24.将所述元数据确定为所述目标媒体资源。
25.本技术实施例的一个方面又提供了一种支持多种流媒体传输协议的媒体播放系统,包括:
26.处理模块,用于对视频进行处理,得到对应目标格式的目标媒体资源;
27.生成模块,用于根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文件;其中,每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容;
28.接收模块,用于接收移动终端提供的媒体播放请求,所述媒体播放请求包括目标播放参数;
29.选择模块,用于根据所述目标播放参数,从所述多个索引文件中选择目标索引文件;及
30.发送模块,用于将所述目标索引文件发送至所述移动终端,以使所述移动终端:基于所述目标索引文件,通过相应的流媒体传输协议获取所述目标媒体资源中的待播放分片内容。
31.本技术实施例的一个方面又提供了一种支持多个流媒体传输协议的媒体播放方法,用于移动终端,所述方法包括:
32.获取所述移动终端的目标播放参数;
33.生成媒体播放请求,所述媒体播放请求包括所述目标播放参数;
34.将所述目标播放请求发送至提供商网络,以使所述提供商网络执行如下操作:根据所述目标播放参数,从预设的多个索引文件中选择并返回目标索引文件,每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容;
35.接收所述目标索引文件;及
36.基于所述目标索引文件,通过目标流媒体传输协议获取所述目标媒体资源中的待播放分片内容并进行播放;其中,所述目标流媒体传输协议对应于所述目标索引文件。
37.可选的,所述目标播放参数包括目标场景参数和/或目标设备参数,其中:
38.所述目标场景参数,用于表示所述移动终端当前的视频播放场景;
39.所述目标设备参数,用于表示所述移动终端的硬件运行环境和/或软件运行环境。
40.可选的,所述获取所述移动终端的目标播放参数,包括:
41.监测所述移动终端的视频播放场景;及
42.若监测到所述视频播放场景发生切换,则根据切换后的视频播放场景更新所述目标场景参数。
43.本技术实施例的一个方面又提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现上述支持多种流媒体传输协议的媒体播放方法的步骤。
44.本技术实施例的一个方面又提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行上述支持多种流媒体传输协议的媒体播放方法的步骤。
45.本技术实施例提供的支持多种流媒体传输协议的媒体播放方法、系统、设备及计算机可读存储介质,具有以下技术优势:
46.(1)通过将视频统一为目标格式的目标媒体资源,基于该目标媒体资源配置多个索引文件,每个索引文件对应一个流媒体传输协议,因此该目标媒体资源可以通过不同的流媒体传输协议提供给移动终端,即支持多种流媒体传输协议的媒体播放。
47.(2)通过移动终端提供的媒体播放请求中的目标播放参数,选择最适配的索引文件。即,可以根据移动终端当前的实际情况,为所述移动终端选择最适配的索引文件,使得移动终端可以根据最适配的索引文件进行基于相应流媒体传输协议的传输和播放,避免了单一流媒体传输协议在某些设备或场景下不能使用而导致的媒体播放失败的问题,提高了使用覆盖率和资源利用率,提升播放体验。
附图说明
48.图1示意性示出了根据本技术实施例一的支持多种流媒体传输协议的媒体播放方法的应用环境图;
49.图2示意性示出了根据本技术实施例一的支持多种流媒体传输协议的媒体播放方法的流程图;
50.图3示意性示出了图2中步骤s206的流程图;
51.图4示意性示出了图2中步骤s202的流程图;
52.图5示意性示出了图2中步骤s206的另一流程图;
53.图6示意性示出了根据本技术实施例二的支持多种流媒体传输协议的媒体播放方法的流程图;
54.图7示意性示出了图6中步骤s600的流程图;
55.图8示意性示出了支持多种流媒体传输协议的媒体播放的应用示例的流程图;
56.图9示意性示出了根据本技术实施例三的支持多种流媒体传输协议的媒体播放系统的框图;及
57.图10示意性示出了根据本技术实施例四的适于实现支持多种流媒体传输协议的
媒体播放方法的计算机设备的硬件架构示意图。
具体实施方式
58.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
59.需要说明的是,在本技术实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
60.在本技术的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本技术及区别每一步骤,因此不能理解为对本技术的限制。
61.本发明人了解的是,随着硬件设备和科技的发展,出现了各种各样的播放设备和播放场景,为了满足各种场景下的用户播放体验,各种流媒体技术也应运而生。
62.dash传输协议和hls传输协议即为两种应用较为广泛的技术方案,其特点为动态自适应码率,同时支持音视频分离,能覆盖到大多数播放设备与场景。在用户网络环境不佳的场景中,动态自适应码率能无缝切换至低清晰度视频,当用户网络环境较好时,能无缝切换至高清晰度视频,切换过程用户无感知,能显著提高用户的播放体验。
63.然而,本发明人发现:dash传输协议能覆盖到通用场景下的播放设备,比如pc、android等,但是无法覆盖到以下场景:微信小程序、投屏、小窗、画中画、h5和车载设备等。hls传输协议支持dash传输协议部分覆盖不到的上述场景。两种技术互为补充。hls传输协议对ios设备的原生播放器支持好,但是对android设备支持比较差,不支持pc端的高实时性要求。由于dash传输协议和hls传输协议是两种不同的流媒体传输协议,实现协议时都需要音视频的媒体资源,故需要一种高效的资源调度方式,同时满足两种协议的资源需求。
64.本技术涉及到的一些术语解释:
65.dash(dynamic adaptive streaming over http):是一种基于http(hyper text transfer protocol,超文本传输协议)的动态自适应的比特率流技术。dash会通过mpd(media presentation description)将视频内容切片成一个很短的文件片段,每个切片都有多个不同的码率,支持dash客户端可以根据网络的情况选择一个码率进行播放,支持在不同码率之间无缝切换。其中,mpd是音频和视频的标识文件,通常是xml格式,用于定义各个内容组件和可替代的流文件的位置。
66.hls(http live streaming,http):是一种由苹果公司提出的基于http的流媒体网络传输协议,与dash类似,把整个视频内容分成一个个小的基于http的文件,每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。
67.如图1所示,为一个支持多种流媒体传输协议的媒体播放方法的环境应用示意图。
68.提供商网络2可以通过一个或多个网络连接移动终端4。
69.提供商网络2可以通过一个或多个网络提供服务,如向移动终端4提供流媒体服务。
70.提供商网络2可以包括后台服务器2a和cdn服务器2b。
71.提供商网络2,可以由多个计算机设备组成。该多个计算设备可以包括虚拟化计算实例。虚拟化计算实例可以包括虚拟机,诸如计算机系统的仿真,操作系统,服务器等。计算设备可以基于定义用于仿真的特定软件(例如,操作系统,专用应用程序,服务器)的虚拟映像和/或其他数据来加载虚拟机。随着对不同类型的处理服务的需求改变,可以在一个或多个计算设备上加载和/或终止不同的虚拟机。还可以实现管理程序以管理同一计算设备上的不同虚拟机的使用。
72.一个或多个网络可以包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或等等。网络可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,它们的组合和/或类似物。网络可以包括无线链路,例如蜂窝链路,卫星链路,wi

fi链路和/或类似物。
73.移动终端4可以被配置为访问提供商网络2的内容和服务。移动终端4可以包括任何类型的计算设备,诸如移动设备,平板设备,膝上型计算机,机顶盒,智能电视等。
74.移动终端4可以与一个或多个用户相关联。单个用户可以使用移动终端4中的一个或多个来访问提供商网络2。移动终端4可以使用不同的网络来访问提供商网络2。
75.移动终端4可以包括浏览器或专门的应用程序4a。通过浏览器或专门的应用程序4a向用户输出(例如,显示,呈现)内容。所述内容可以包括视频,音频,评论,文本数据和/或类似物。移动终端4可以包括客户端接口4b,该客户端接口4b可以包括输入元件。例如,输入元素可以被配置为接收用户指令,所述用户指令可以使移动终端4执行各类操作,如,发送媒体播放请求至提供商网络2中。
76.以下将通过若干个实施例来描述支持多种流媒体传输协议的媒体播放方案。
77.实施例一
78.图2示意性示出了根据本技术实施例一的支持多种流媒体传输协议的媒体播放方法的流程图。需说明的是,本实施例所述的媒体播放方法可以在提供商网络2中实现。
79.如图2所示,该支持多种流媒体传输协议的媒体播放方法可以包括步骤s200~s208,其中:
80.步骤s200,对视频进行处理,得到对应目标格式的目标媒体资源。
81.所述视频可以是用户上传的任意格式的视频,包括但不限于以下格式:flv(flash video)、mp4(moving picture experts group 4,动态图像专家组第4版本)、avi(audio video interleaved,音频视频交错)、h.264/avc(advanced video coding,高级视频编码)、h.265/hevc(high efficiency video coding,高效率视频编码)。
82.所述处理旨在将各种视频进行格式和视频元数据的统一。具体的,可以将用户上传的视频转码成ffmp4格式的视频,对视频进行转码后,视频元数据随之更改。需要说明的是,相对于多个流媒体传输协议需要对应的多种媒体资源,在本实施例中,统一视频的媒体资源格式之后,多个流媒体传输协议只需对应一种媒体资源。
83.步骤s202,根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文
件。
84.每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容。即,基于同一份目标媒体资源,生成适配不同的流媒体传输协议的多个索引文件。
85.所述多个流媒体传输协议可以是dash传输协议、hls传输协议、hds传输协议等。
86.步骤s204,接收移动终端提供的媒体播放请求,所述媒体播放请求包括目标播放参数。
87.不同的移动终端、或移动终端中不同的播放场景,皆可能对流媒体的播放造成影响。因此,在播放初始阶段或播放过程中,移动终端4可以向提供商网络2发送媒体播放请求,从而让提供商网络2知道移动终端4的当前情况,以适配相应的索引文件。
88.作为示例,所述目标播放参数包括目标场景参数和/或目标设备参数,其中:所述目标场景参数,用于表示所述移动终端当前的视频播放场景;所述目标设备参数,用于表示所述移动终端的硬件运行环境和/或软件运行环境。所述视频播放场景可以包括:pc端网页、第三方客户端app、系统原生播放器、微信小程序、投屏、小窗、画中画、h5和车载场景。所述硬件运行环境可以包括:智能手机、pc(个人电脑)。所述软件运行环境可以包括:操作系统类型(如,ios、安卓)、版本。
89.步骤s206,根据所述目标播放参数,从所述多个索引文件中选择目标索引文件。
90.如上文所述,移动终端4的运行环境和播放场景都可能对播放造成影响。因此,可以通过所述目标播放参数,为所述移动终端4适配相应的索引文件,即目标索引文件。
91.作为示例,为提高选择效率和准确性,可以预先收集各种流媒体传输协议和各类设备、场景的适配情况。如图3所示,所述步骤s206可以包括步骤s300:根据映射表与所述目标播放参数,从所述多个索引文件中选择所述目标索引文件;其中,所述映射表为预设设置并用于存储各个播放参数与各个索引文件之间的适配信息。
92.步骤s208,将所述目标索引文件发送至所述移动终端,以使所述移动终端:基于所述目标索引文件,通过相应的流媒体传输协议获取所述目标媒体资源中的待播放分片内容。
93.所述目标索引文件包括各类音视频参数、内容分段时长、不同分片内容的码率、分辨率及访问地址url(uniform resource locator,统一资源定位器)等媒体配置信息。
94.接收所述目标索引文件之后,移动终端4会执行如下操作:解析所述目标索引文件以得到上述媒体配置信息;通过分析上述媒体配置信息,根据当前网络状态以及缓冲区的大小等选择合适的分片内容;向提供商网络2发送拉流请求,基于相应的流媒体传输协议从所述提供商网络2中拉取相应的分片内容,并执行播放操作。
95.本技术实施例提供的支持多种流媒体传输协议的媒体播放方法,具有如下优点:
96.(1)通过将视频统一为目标格式的目标媒体资源,基于该目标媒体资源配置多个索引文件,每个索引文件对应一个流媒体传输协议,因此该目标媒体资源可以通过不同的流媒体传输协议提供给移动终端4,即支持多种流媒体传输协议的媒体播放。
97.(2)通过移动终端4的媒体播放请求中的目标播放参数,选择最适配的索引文件。即,可以根据移动终端4当前的实际情况,为所述移动终端4选择最适配的索引文件,使得移动终端4可以根据最适配的索引文件进行基于相应流媒体传输协议的传输和播放,提升播放体验。另外,还避免了单一流媒体传输协议在某些设备或场景下不能使用而导致的媒体
播放失败的问题,提高了使用覆盖率和资源利用率。
98.以下提供几个可选方案。
99.作为示例,所述多个流媒体传输协议包括dash传输协议和hls传输协议,所述多个索引文件包括dash索引文件和hls索引文件。如图4所示,所述根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文件,可以通过如下步骤实现:步骤s400,根据所述目标媒体资源和所述dash传输协议,生成所述dash索引文件;步骤s402,根据所述目标媒体资源和所述hls传输协议,生成所述hls索引文件。在本实施例中,dash索引文件和hls索引文件共用所述目标媒体资源,且dash传输协议和hls传输协议支持所述目标媒体资源的音、视频分离,因此,实现了音频资源和视频资源的复用,减少了不同封装造成的存储空间浪费。另外,在本实施例中,可以根据移动终端4当前的实际情况,为所述移动终端4选择所述dash索引文件和所述hls索引文件。dash传输协议能覆盖到通用场景下的播放设备,比如pc、android等。hls传输协议则能覆盖到dash传输协议覆盖不到的多少情况,例如,dash传输协议不能覆盖:微信小程序、投屏、小窗、画中画、h5和车载场景等。hls传输协议则能支持上述场景。因此,通过dash传输协议和hls传输协议相互补充,覆盖到大多数设备和场景,极大扩展了使用覆盖率和资源利用率,提升播放体验。再者,在本实施例中,基于hls传输协议和dash传输协议均支持支持动态自适应码流,可以确保不稳定的网络环境下为用户提供流畅的视频点播服务。
100.作为示例,为提升播放体验,如图5所示,所述步骤s206可以包括步骤s500

s504,其中:步骤s500,根据所述目标播放参数,判断所述移动终端当前是否支持所述dash传输协议和所述hls传输协议;步骤s502,若支持所述dash传输协议,则选择所述dash索引文件作为所述目标索引文件;及步骤s504,若支持所述hls传输协议且不支持所述dash传输协议,则选择所述hls索引文件作为所述目标索引文件。举例来说,通过所述目标播放参数得到所述移动终端4是android设备、pc端,则优先选择所述dash索引文件作为目标索引文件,以使移动终端4切换为基于dash传输协议进行传输。若所述移动终端4当前的视频播放场景是微信小程序、投屏、小窗、画中画、h5或车载场景中的任意一种,则说明所述移动终端4当前不支持基于dash传输协议的传输,因此选择所述hls索引文件作为目标索引文件,以使移动终端4切换为基于hls传输协议进行传输。
101.作为示例,所述对视频进行处理,得到对应目标格式的目标媒体资源,可以包括:对所述视频进行处理,获取与所述视频相对应的元数据,所述元数据中包括音频数据与视频数据;将所述元数据确定为所述目标媒体资源。在本实施例中,通过利用音、视频分离的元数据,实现资源复用,并基于所述元数据来实现dash和hls。相对于现有技术中的音视频合并的媒体资源(如flv)等,由于本实施例中实现了音频、视频的分离,因此可以对音频或视频部分进行复用。
102.实施例二
103.本实施例提供的方法,其技术细节和技术效果等可以参照上文。
104.图6示意性示出了根据本技术实施例二的支持多种流媒体传输协议的媒体播放方法的流程图。需说明的是,本实施例所述的媒体播放方法可以在移动终端4中实现。
105.如图6所示,该支持多种流媒体传输协议的媒体播放方法可以包括步骤s600~s608,其中:
106.步骤s600,获取所述移动终端的目标播放参数。
107.步骤s602,生成媒体播放请求,所述媒体播放请求包括所述目标播放参数。
108.步骤s604,将所述目标播放请求发送至提供商网络,以使所述提供商网络执行如下操作:根据所述目标播放参数,从预设的多个索引文件中选择并返回目标索引文件,每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容。
109.步骤s606,接收所述目标索引文件。
110.步骤s608,基于所述目标索引文件,通过目标流媒体传输协议获取所述目标媒体资源中的待播放分片内容并进行播放;其中,所述目标流媒体传输协议对应于所述目标索引文件。
111.作为示例,所述目标播放参数包括目标场景参数和/或目标设备参数,其中:
112.所述目标场景参数,用于表示所述移动终端当前的视频播放场景;
113.所述目标设备参数,用于表示所述移动终端的硬件运行环境和/或软件运行环境。
114.作为示例,如图7所示,所述获取所述移动终端的目标播放参数,包括:步骤s700,监测所述移动终端的视频播放场景;及步骤s702,若监测到所述视频播放场景发生切换,则根据切换后的视频播放场景更新所述目标场景参数。在本实施例中,可以通过实时监测播放场景的变化,以快速适配更优的流媒体传输协议,提升播放体验。
115.为了使得本技术更加清晰易懂,如图8所示,下面提供一个应用示例。
116.在本应用示例,提供商网络2可以包括后台服务器2a和cdn服务器2b。
117.步骤s800:后台服务器2a接收用户上传的视频。
118.步骤s802:后台服务器2a对视频进行转码操作,以得到统一规格的视频元数据的目标媒体资源。
119.步骤s804:后台服务器2a生成所述目标媒体文件的hls索引文件和dash索引文件。
120.hls索引文件,又称hls m3u8索引文件。
121.dash索引文件,又称dash mpd索引文件。
122.目标媒体资源、hls索引文件和dash索引文件存储于数据库中。
123.步骤s806:后台服务器2a将目标媒体资源下发到cdn服务器2b中。
124.步骤s808:移动终端4识别自身的设备信息和/或播放场景。
125.步骤s810:移动终端4根据识别结果,生成包括目标播放参数的视频播放请求。
126.所述目标播放参数可以包括目标场景参数、目标设备参数。
127.步骤s812:移动终端4将所述视频播放请求发送到后台服务器2a中。
128.步骤s814:后台服务器2a根据所述视频播放请求中的目标播放参数,从所述hls索引文件和所述dash索引文件中选择其中一个索引文件作为目标索引文件。
129.例如,视频播放场景为小窗或者画中画时,或为ios原生播放器时,选择hls索引文件,具体参考上文。
130.步骤s816:后台服务器2a将目标索引文件发送给移动终端4。
131.步骤s818:移动终端4根据目标索引文件和自身的播放策略,生成拉流请求。
132.步骤s820:将所述拉流请求发送给cdn服务器2b。
133.步骤s822:cdn服务器2b基于所述拉流请求,向移动终端4发送相应的分片内容。
134.步骤s824:移动终端4对分片内容进行解码和播放。
135.实施例三
136.图9示意性示出了根据本技术实施例三的支持多种流媒体传输协议的媒体播放系统的框图,该支持多种流媒体传输协议的媒体播放系统可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本技术实施例。本技术实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本实施例中各程序模块的功能。
137.如图9所示,该支持多种流媒体传输协议的媒体播放系统900可以包括处理模块910、生成模块920、接收模块930、选择模块940以及发送模块950,其中:
138.处理模块910,用于对视频进行处理,得到对应目标格式的目标媒体资源;
139.生成模块920,用于根据所述目标媒体资源和多个流媒体传输协议分别生成多个索引文件;其中,每个索引文件对应一个流媒体传输协议,且用于索引所述目标媒体资源中的分片内容;
140.接收模块930,用于接收移动终端提供的媒体播放请求,所述媒体播放请求包括目标播放参数;
141.选择模块940,用于根据所述目标播放参数,从所述多个索引文件中选择目标索引文件;及
142.发送模块950,用于将所述目标索引文件发送至所述移动终端,以使所述移动终端:基于所述目标索引文件,通过相应的流媒体传输协议获取所述目标媒体资源中的待播放分片内容。
143.作为示例,所述选择模块940,还用于:
144.根据映射表与所述目标播放参数,从所述多个索引文件中选择所述目标索引文件;其中,所述映射表为预设设置并用于存储各个播放参数与各个索引文件之间的适配信息。
145.作为示例,所述多个流媒体传输协议包括dash传输协议和hls传输协议,所述多个索引文件包括dash索引文件和hls索引文件;所述生成模块920,还用于:
146.根据所述目标媒体资源和所述dash传输协议,生成所述dash索引文件;
147.根据所述目标媒体资源和所述hls传输协议,生成所述hls索引文件。
148.作为示例,所述选择模块940,还用于:
149.根据所述目标播放参数,判断所述移动终端当前是否支持所述dash传输协议和所述hls传输协议;
150.若支持所述dash传输协议,则选择所述dash索引文件作为所述目标索引文件;及
151.若支持所述hls传输协议且不支持所述dash传输协议,则选择所述hls索引文件作为所述目标索引文件。
152.作为示例,所述目标播放参数包括目标场景参数和/或目标设备参数,其中:
153.所述目标场景参数,用于表示所述移动终端当前的视频播放场景;
154.所述目标设备参数,用于表示所述移动终端的硬件运行环境和/或软件运行环境。
155.作为示例,所述处理模块910,还用于:
156.对所述视频进行处理,获取与所述视频相对应的元数据,所述元数据中包括音频数据与视频数据;
157.将所述元数据确定为所述目标媒体资源。
158.实施例四
159.图10示意性示出了根据本技术实施例四的适于实现支持多种流媒体传输协议的媒体播放方法的计算机设备的硬件架构示意图。计算机设备10000可以作为提供商网络2或提供商网络2的一部分,也可以作为移动终端4。本实施例中,计算机设备10000是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备,例如,可以是智能手机、平板电脑、笔记本电脑等具有音视频处理能力的电子装置等。可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图10所示,计算机设备10000至少包括但不限于:可通过系统总线相互通信链接存储器10010、处理器10020、网络接口10030。其中:
160.存储器10010至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器10010可以是计算机设备10000的内部存储模块,例如该计算机设备10000的硬盘或内存。在另一些实施例中,存储器10010也可以是计算机设备10000的外部存储设备,例如该计算机设备10000上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,存储器10010还可以既包括计算机设备10000的内部存储模块也包括其外部存储设备。本实施例中,存储器10010通常用于存储安装于计算机设备10000的操作系统和各类应用软件,例如支持多种流媒体传输协议的媒体播放方法的程序代码等。此外,存储器10010还可以用于暂时地存储已经输出或者将要输出的各类数据。
161.处理器10020在一些实施例中可以是中央处理器(central processing unit,简称为cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器10020通常用于控制计算机设备10000的总体操作,例如执行与计算机设备10000进行数据交互或者通信相关的控制和处理等。本实施例中,处理器10020用于运行存储器10010中存储的程序代码或者处理数据。
162.网络接口10030可包括无线网络接口或有线网络接口,该网络接口10030通常用于在计算机设备10000与其他计算机设备之间建立通信链接。例如,网络接口10030用于通过网络将计算机设备10000与外部终端相连,在计算机设备10000与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(global system of mobile communication,简称为gsm)、宽带码分多址(wideband code division multiple access,简称为wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi

fi等无线或有线网络。
163.需要指出的是,图10仅示出了具有部件10010

10030的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
164.在本实施例中,存储于存储器10010中的支持多种流媒体传输协议的媒体播放方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器10020)所执行,以完成本技术。
165.实施例五
166.本实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的支持多种流媒体传输协议的媒体播放方法的步骤。
167.本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的支持多种流媒体传输协议的媒体播放方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
168.显然,本领域的技术人员应该明白,上述的本技术实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本技术实施例不限制于任何特定的硬件和软件结合。
169.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献