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

媒体流播放、媒体流处理方法、装置、设备和存储介质与流程

2022-06-01 17:04:52 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术领域,尤其涉及一种媒体流播放、媒体流处理方法、装置、设备和存储介质。


背景技术:

2.目前,在浏览器的播放器中植入广告可以有多种方式,例如,可以采用一种流式媒体传输(http live streaming,hls)协议将广告视频与正片合并到一起进行播放的方式。hls是新一代流媒体传输协议,其将较大媒体文件进行分片,将该分片文件资源路径记录于m3u8索引文件(即,播放列表)内提供给客户端。客户端依据该m3u8文件即可获取对应的媒体资源,进行播放。
3.但是,在浏览器中进行视频播放时,播放完广告时常常会发生卡顿,使得用户观看体验较差。


技术实现要素:

4.有鉴于此,本发明实施例提供一种媒体流播放、媒体流处理方法、装置、设备和存储介质,以解决或缓解上述问题。
5.根据本发明实施例的第一方面,提供了一种媒体流播放方法,包括:确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于所述在先传输包的传输包标识,解析并且播放所述当前传输包。
6.根据本发明实施例的第二方面,提供了一种媒体流处理方法,包括:确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建所述当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;将所述映射关系与所述当前传输包关联。
7.根据本发明实施例的第三方面,提供了一种媒体流播放装置,包括:确定模块,确定实时媒体流的当前传输包;解析播放模块,如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于所述在先传输包的传输包标识,解析并且播放所述当前传输包。
8.根据本发明实施例的第四方面,提供了一种媒体流处理装置,包括:确定模块,确定实时媒体流的当前传输包;创建模块,如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建所述当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;关联模块,将所述映射关系与所述当前传输包关联。
9.根据本发明实施例的第五方面,提供了一种媒体流播放方法,包括:根据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取所述播放节点的实时媒体流;确定与所述实时媒体流的当前传输包具有相同媒体类型标识的先前传输包;基于当前传输包与在先传输包的传输包标识,解析并且播放所述当前传输包。
10.根据本发明实施例的第六方面,提供了一种媒体流播放装置,包括:获取模块,根
据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取所述播放节点的实时媒体流;确定模块,确定与所述实时媒体流的当前传输包具有相同媒体类型标识的先前传输包;解析播放模块,基于当前传输包与在先传输包的传输包标识,解析并且播放所述当前传输包。
11.根据本发明实施例的第七方面,提供了一种电子设备,所述设备包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面至第三方面中的任一方面所述的方法对应的操作。
12.根据本发明实施例的第八方面,提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面至第三方面中的任一方面所述的方法。
13.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同当前传输包与在先传输包为不同媒体资源的可能性,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了来自不同媒体资源的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
附图说明
14.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
15.图1a为一个示例的媒体流播放的网络架构的示意图。
16.图1b为一种媒体流文件的数据帧结构的示意图;
17.图2为本发明的一个实施例的媒体流播放方法的示意性流程图;
18.图3为本发明的另一实施例的媒体流播放方法的示意性流程图;
19.图4为本发明的另一实施例的媒体流播放方法的示意性流程图;
20.图5为本发明的另一实施例的媒体流处理方法的示意性流程图;
21.图6a为本发明的另一实施例的媒体流播放方法的示意性流程图;
22.图6b为本发明的另一实施例的媒体流播放装置的示意性框图;
23.图7a为本发明的另一实施例的媒体流播放方法的示意性流程图;
24.图7b为本发明的另一实施例的媒体流播放装置的示意性框图;
25.图8为本发明的另一实施例的媒体流处理装置的示意性框图;
26.图9为本发明的另一实施例的媒体流播放装置的示意性框图;
27.图10为本发明的另一实施例的电子设备的硬件结构。
具体实施方式
28.为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
29.下面结合本发明实施例附图进一步说明本发明实施例具体实现。图1为一个示例的媒体流播放的网络架构的示意图。用户设备100包括网络接口110、应用程序120、播放器模块121以及人际交互界面130。用户300通过人际交互界面130与用户设备100进行交互。媒体流资源服务器200包括网络接口210以及用于投放的多种资源1,例如,正片资源和广告资源。应用程序120可以浏览器应用程序、音频播放应用程序、视频播放应用程序或其他可以视频播放的应用程序等。播放器模块121可以安装与用户设备100的操作系统中;也可以以诸如sdk(软件开发工具包,software development kit)的方式安装在应用程序120中;也可以作为应用程序120的一个模块;也可以与应用程序120的方法具有调用关系。
30.此外,在媒体流资源服务器200中,在一个示例中,正片资源和广告资源可以采用相同编码,例如,可以整个媒体流分成一个个小的基于http(hypertext transfer protocol,超文本传输协议)的文件来下载。当媒体流正在用户设备100播放时,可以选择从愈多不同的备用源中以不同的速率下载同样的资源,允许流媒体绘画适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含源数据的m3u8索引文件文件,用于寻找可用的媒体流。
31.图1b为一种媒体流文件的数据帧结构的示意图。如图所示,媒体流文件(hls)的ts文件的数据帧结构包括ts(transport stream)层、pes(packet elemental stream)层、es(elementary stream)层.es层可以指音视频数据,pes层在音视频数据上加了时间戳等对数据帧的描述信息。ts层在pes层中加入数据流的识别和传输必须的信息。ts层分为三个部分:ts头(ts header)、自适应字段(adaptation field)和数据(payload)字段。数据字段是pes数据。ts层的内容是通过pid值来标识的,主要内容包括:pat表、pmt表、音频流、视频流。解析ts流先确定pat表,再找到pmt,然后找到音视频流。pes层包括pes头和选择pes头和pes数据。pes数据包括es头也其他字段,pes数据在每一个视频/音频帧上加入了时间戳等信息。
32.pmt表中可以包括pid(传输包标识)和stream_type(媒体资源类型标识)。诸如浏览器播放器的播放器可以基于pid查找对应的ts包进行解析。但是,诸如在广告资源媒体流中,stream_type不一定与实际基于pid解析到的媒体资源类型一致,从视频正片切换到广告或者从广告切换到视频正片时常常会发生卡顿,使得用户观看体验较差。
33.图2为本发明的一个实施例的媒体流播放方法的示意性流程图。本实施例的方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图2的媒体流播放方法包括:
34.210:确定实时媒体流的当前传输包。
35.应理解,确定实时媒体流的当前传输包,可以通过浏览器应用程序执行,也可以通过诸如浏览器中的播放器执行。此外,可以确定实时媒体流中的每个传输包,也可以在实时媒体流的预先解析的一组传输包中,确定当前传输包。
36.作为一个示例,可以通过解析媒体流文件的索引信息(例如,媒体流索引文件),确定实时媒体流的一组传输包。作为另一示例,可以基于中断属性信息,确定实时媒体流的一组传输包,例如,可以在识别到中断属性信息时,初始解析(例如,记录)该传输包,得到一组传输包。此外,可以基于中断属性信息的序列信息,从一组传输包中,确定当前传输包。
37.220:如果当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于
在先传输包的传输包标识,解析并且播放当前传输包。
38.应理解,在一个示例中,对于ts传输包而言,媒体类型标识可以包括stream_type;传输包标识可以为pid。在其他示例中,媒体类型标识可以为其他的媒体类型信息,传输包标识可以为其他的传输包标识。
39.在一个具体示例中,可以根据stream_type查找现有已解析pid列表,是否有已解析相同stream_type。
40.还应理解,对于解析并且播放当前传输包而言,可以使用新pid继续先前播放器解析框架操作,例如,播放器解析框架包括但不限于ffmpeg(可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序)。
41.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同当前传输包与在先传输包为不同媒体资源的可能性,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了来自不同媒体资源的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
42.在本发明的另一实现方式中,该方法还包括:如果存在当前传输包的传输包标识与在先传输包的传输包标识之间的第一映射关系,则判定当前传输包的媒体类型标识与在先传输包的媒体类型标识相同。
43.由于当存在该第一映射关系指示当前传输包的传输包标识先前未被采用,因此,基于第一映射关系的存在判定当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,提高了判定处理的效率。
44.作为一个示例,第一映射关系可以为pid自动映射表,通过建立该映射表,自动将不同传输包(音频或音频)的pid进行映射,避免了播放器的上层的错乱(实现了播放器的上层无感知),从而达到和播放同一个视频一样的完全无缝效果,且数据处理量相对小非常多。此外,还保证了与现有的解析框架或配置的兼容性。
45.具体而言,例如,可以在每个ts传输包首次开始解析时,先根据该ts传输包的discontinuity_no字段(资源切换中断标识的示例)查找是否存在映射关系信息。
46.在本发明的另一实现方式中,该方法还包括:解析当前传输包的包头字段,确定当前传输包的传输包标识与媒体类型标识之间的第二映射关系;基于第二映射关系,确定在先传输包的传输包标识。
47.由于传输包的包头字段最先被解析,因此基于当前传输包的包头字段,确定当前传输包的传输包标识与媒体类型标识之间的第二映射关系,因此,提高了第二映射关系的解析效率,从而基于第二映射关系,确定在先传输包的传输包标识,提高了传输包标识的确定效率。
48.在本发明的另一实现方式中,该方法还包括:存储在先传输包的传输包标识。
49.由此,存储在先传输包的传输包标识有利于提高与该先前传输包具有相同媒体类型标识的在后传输包的解析效率。
50.在本发明的另一实现方式中,确定实时媒体流的当前传输包,包括:确定实时媒体流的一组传输包各自的中断属性信息;基于中断属性信息,从一组传输包中,确定当前传输包。
51.由于中断属性信息指示传输包之间的节点来自不同的媒体资源的可能性,因此基
于中断属性信息从一组传输包中确定当前传输包,提高了当前传输包作为该节点的选择效率,进而提高了解析和播放效率。
52.作为一个示例,中断属性信息可以包括hls中的ext-x-discontinuity,用于标记后续的视频格式可能存在差异。
53.在本发明的另一实现方式中,确定实时媒体流的一组传输包各自的中断属性信息,包括:通过资源切换中断标识,解析实时媒体流,得到一组传输包;记录一组传输包各自的资源切换中断标识的序列数,作为一组传输包各自的中断属性信息。
54.由于资源切换中断标识的序列数能够对具有一组传输包中的各个传输包进行高效区分,因此以资源切换中断标识的序列数作为一组传输包各自的中断属性信息,提高了传输包的解析效率。
55.由于并不是所有ext-x-discontinuity标签需要重建播放器,但是该标签用于标记后续的视频格式可能存在差异,于是基于资源切换中断标识的序列数从一组传输包中,确定当前传输包。
56.具体而言,例如,可以在m3u8文件中解析到每个ext-x-discontinuity标签时,进行记录。并且为之后的每个ts传输包加上discontinuity_no字段。
57.在本发明的另一实现方式中,该方法还包括:解析当前传输包的包头字段,确定当前传输包的传输包标识与媒体类型标识之间的第二映射关系;基于第二映射关系以及当前传输包的中断属性信息,确定中断属性信息、当前传输包的传输包标识与在先传输包的传输包标识之间的第三映射关系。
58.由于第二映射关系和中断属性信息都能从传输包中解析,因此基于第二映射关系以及中断属性信息,确定第三映射关系,提高了第三映射关系的确定效率。
59.在本发明的另一实现方式中,该方法还包括:如果不存在当前传输包的传输包标识与在先传输包的传输包标识之间的第一映射关系,并且当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建第一映射关系。
60.由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同指示当前传输包与在先传输包来自与不同媒体资源的可能性,因此当前传输包的传输包标识与在先传输包的传输包标识之间的第一映射关系,有利于提高与当前传输包具有相同传输包标识的在后传输包的解析效率。
61.例如,在后传输包,可以为根据用户播放控制操作而跳转回当前传输包,也可以为媒体流的后续的传输包。
62.在本发明的另一实现方式中,该方法还包括:如果当前传输包的媒体类型标识与在先传输包的媒体类型标识不相同,则基于当前传输包的传输包标识,解析并且播放当前传输包。
63.由于当前传输包的媒体类型标识与在先传输包的媒体类型标识不相同指示当前传输包与在先传输包出现误解析的可能性较小,因此基于当前传输包的传输包标识,解析并且播放当前传输包,提高了对常规解析框架或算法的兼容性。
64.在本发明的另一实现方式中,该方法还包括:根据播放控制操作,获取所述实时媒体流。
65.由于播放控制操作具有随机性和不确定性,因此根据播放控制操作,获取所述实
时媒体流,提高了动态解析能力,进而提高了用户的观看体验。
66.在本发明的另一实现方式中,所述根据播放控制操作,获取所述实时媒体流,包括:确定所述播放控制操作的播放节点;获取所述播放节点对应的实时媒体流。
67.由于播放控制操作的播放节点指示用户期望跳转的播放节点,因此播放节点获取所述播放节点对应的实时媒体流,提高了动态解析能力,进而提高了用户的观看体验。
68.图3为本发明的另一实施例的媒体流播放方法的示意性流程图。如图所示,在步骤s311中,解析当前传输包,获取当前传输包的媒体类型标识和传输包标识,并且进入到步骤s312中。
69.在步骤s312中,查找映射表,判断是否存在映射关系?如果是为,则进入到步骤s315中,如果为否,则进入到步骤s313中。可以在每个ts传输包首次开始解析时,先根据该ts传输包的discontinuity_no字段(资源切换中断标识的示例)查找是否存在映射关系信息。
70.在步骤s313中,查找是否存在与当前传输包具有相同媒体类型标识的在先传输包?如果为是,则进入到步骤s314中,如果为否,则进入到步骤s315中。具体而言,例如,可以根据stream_type查找现有已解析pid列表,是否有已解析相同stream_type。
71.在步骤s314中,在映射表中建立映射关系,并且进入到步骤s315中。具体而言,在pid映射表中增加新pid项,建立当前discontinuity_no、旧pid和新pid之间的映射关系。
72.在步骤s315中,使用在先传输包的传输包标识进行后续解析。具体而言,例如,可以使用旧pid继续原有ffmpeg流程操作。
73.在步骤s316中,使用当前传输包的传输包标识进行后续解析。具体而言,例如,可以使用新pidts继续原有ffmpeg流程操作。
74.图4为本发明的另一实施例的媒体流播放方法的示意性流程图。如图所示,在步骤s411中,初始解析索引文件,并且进入到步骤s412中。
75.在步骤s412中,当检测到中断属性信息,记录当前资源切换中断标识的序列数,并且进入到步骤s413中。具体而言,例如,可以在m3u8文件中解析到每个ext-x-discontinuity标签时,进行记录。并且为之后的每个ts传输包加上discontinuity_no字段。
76.在步骤s413中,判断初始解析是否完成?如果为是,则进入到步骤s414中,如果为否,则返回到步骤s411中。
77.在步骤s414中,解析传输包。
78.图5为本发明的另一实施例的媒体流处理方法的示意性流程图。本实施例的方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图5的媒体流处理方法包括:
79.510:确定实时媒体流的当前传输包;
80.520:如果当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;
81.530:将映射关系与当前传输包关联。
82.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同指示了当前传输包与在先传输包为不同媒体资源的可能性,创建当前传输包
的传输包标识与在先传输包的传输包标识之间的映射关系,提高了不同媒体资源的传输包的播放效率。此外,将映射关系与当前传输包关联,提高了媒体流的解析效率。
83.图6a为本发明的另一实施例的媒体流播放方法的示意性流程图。本实施例的方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图6a的媒体流播放方法,包括:
84.610:根据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取播放节点的实时媒体流。
85.620:确定与实时媒体流的当前传输包具有相同媒体类型标识的先前传输包。
86.630:基于当前传输包与在先传输包的传输包标识,解析并且播放当前传输包。
87.在本发明实施例的方案中,由于实时媒体流的当前传输包与先前传输包具有相同媒体类型标识,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了利用不同的传输包标识具有相同的媒体类型标识的传输包,进而提高了媒体流的播放流畅性。
88.图6b为本发明的另一实施例的媒体流播放装置的示意性框图。本实施例的装置可以适用于任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图6b的媒体流播放装置包括:
89.确定模块640,确定实时媒体流的当前传输包;
90.解析播放模块650,如果当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于在先传输包的传输包标识,解析并且播放当前传输包。
91.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同当前传输包与在先传输包为不同媒体资源的可能性,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了来自不同媒体资源的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
92.在本发明的另一实现方式中,该装置还包括:判定模块,如果存在当前传输包的传输包标识与在先传输包的传输包标识之间的第一映射关系,则判定当前传输包的媒体类型标识与在先传输包的媒体类型标识相同。
93.在本发明的另一实现方式中,确定模块还用于:解析当前传输包的包头字段,确定当前传输包的传输包标识与媒体类型标识之间的第二映射关系;基于第二映射关系,确定在先传输包的传输包标识。
94.在本发明的另一实现方式中,该装置还包括:存储模块,存储在先传输包的传输包标识。
95.在本发明的另一实现方式中,确定模块具体用于:确定实时媒体流的一组传输包各自的中断属性信息;基于中断属性信息,从一组传输包中,确定当前传输包。
96.在本发明的另一实现方式中,确定模块具体用于:通过资源切换中断标识,解析实时媒体流,得到一组传输包;记录一组传输包各自的资源切换中断标识的序列数,作为一组传输包各自的中断属性信息。
97.在本发明的另一实现方式中,确定模块具体用于:解析当前传输包的包头字段,确定当前传输包的传输包标识与媒体类型标识之间的第二映射关系;基于第二映射关系以及当前传输包的中断属性信息,确定中断属性信息、当前传输包的传输包标识与在先传输包的传输包标识之间的第三映射关系。
98.在本发明的另一实现方式中,该装置还包括:创建模块,如果不存在当前传输包的传输包标识与在先传输包的传输包标识之间的第一映射关系,并且当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建第一映射关系。
99.在本发明的另一实现方式中,解析播放模块还用于:如果当前传输包的媒体类型标识与在先传输包的媒体类型标识不相同,则基于当前传输包的传输包标识,解析并且播放当前传输包。
100.在本发明的另一实现方式中,该装置还包括:获取模块,根据播放控制操作,获取所述实时媒体流。
101.在本发明的另一实现方式中,获取模块具体用于:确定所述播放控制操作的播放节点;获取所述播放节点对应的实时媒体流。
102.本实施例的装置用于实现前述多个方法实施例中相应的方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
103.图7a为本发明的另一实施例的媒体流播放方法的示意性流程图。本实施例的方法可以适用于任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。
104.710:确定第一实时媒体流的当前传输包。
105.720:如果当前传输包的媒体类型标识与第二实时媒体流的在先传输包的媒体类型标识相同,则基于在先传输包的传输包标识,解析并且播放当前传输包。
106.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同当前传输包与在先传输包为不同媒体资源的可能性,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了来自不同媒体资源的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
107.应理解,第一实时媒体流(例如,直播媒体流)与第二实时媒体流(例如,直播媒体流)可以是来自同一媒体资源的不同媒体流,也可以为来自不同媒体资源的不同媒体流。
108.在第一示例中,第一实时媒体流与第二实时媒体流是来自不同媒体资源的不同媒体流。可以响应直播切换操作,从第二实时媒体流切换到第一实施例媒体流,并且确定第一实时媒体流的当前传输包。
109.由于从第二实时媒体流切换到第一实施例媒体流时,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了不同媒体流的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
110.在第二示例中,第一实时媒体流与第二实时媒体流是来自同一媒体资源的不同媒体流。可以响应直播重连指令,获取第一实时媒体流的当前传输包。上述直播重连指令由第二实时媒体流的中断触发,或者,由播放刷新指令触发。另外,可以生成并且存储当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系。可以存储第二实时媒体流的在先传输包的媒体类型标识与传输包标识的映射关系。
111.由于第二实时媒体流的中断时,或者,由播放刷新指令触发时,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了不同媒体流的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
112.应理解,第二实时媒体流可以为第一实时媒体流先前的所有实时媒体流,并且基于第二实时媒体流的在先传输包的媒体类型标识与传输包标识的映射关系,确定在先传输包的传输包标识。另外,第二实时媒体流也可以为第一实时媒体流的上一实时媒体流,可以只存储上述实时媒体流的在先传输包的媒体类型标识与传输包标识的映射关系,并且基于上述实时媒体流的在先传输包的媒体类型标识与传输包标识的映射关系,确定在先传输包的传输包标识。
113.图7b为本发明的另一实施例的媒体流播放装置的示意性框图。本实施例的装置可以适用于任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。
114.确定模块730,确定第一实时媒体流的当前传输包。
115.解析播放模块740,如果当前传输包的媒体类型标识与第二实时媒体流的在先传输包的媒体类型标识相同,则基于在先传输包的传输包标识,解析并且播放当前传输包。
116.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同当前传输包与在先传输包为不同媒体资源的可能性,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了来自不同媒体资源的传输包的播放和解析故障,进而提高了媒体流的播放流畅性和媒体流的解析效率。
117.图8为本发明的另一实施例的媒体流处理装置的示意性框图。本实施例的装置可以适用于任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图8的媒体流处理装置包括:
118.确定模块810,确定实时媒体流的当前传输包;
119.创建模块820,如果当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;
120.关联模块830,将映射关系与当前传输包关联。
121.在本发明实施例的方案中,由于当前传输包的媒体类型标识与在先传输包的媒体类型标识相同指示了当前传输包与在先传输包为不同媒体资源的可能性,创建当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系,提高了不同媒体资源的传输包的播放效率。此外,将映射关系与当前传输包关联,提高了媒体流的解析效率。
122.本实施例的装置用于实现前述多个方法实施例中相应的方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
123.图9为本发明的另一实施例的媒体流处理装置的示意性框图。本实施例的装置可以适用于任意适当的具有数据处理能力的电子设备执行,包括但不限于诸如手机、平板电脑和台式电脑等终端设备。图9的媒体流播放装置包括:
124.获取模块910,根据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取所述播放节点的实时媒体流;
125.确定模块920,确定与所述实时媒体流的当前传输包具有相同媒体类型标识的先前传输包;
126.解析播放模块930,基于当前传输包与在先传输包的传输包标识,解析并且播放所述当前传输包。
127.在本发明实施例的方案中,由于实时媒体流的当前传输包与先前传输包具有相同媒体类型标识,基于在先传输包的传输包标识,解析并且播放当前传输包,因此避免了利用不同的传输包标识具有相同的媒体类型标识的传输包,进而提高了媒体流的播放流畅性。
128.本实施例的装置用于实现前述多个方法实施例中相应的方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
129.图10为本发明的另一实施例的电子设备的硬件结构;如图10所示,该电子设备的硬件结构可以包括:处理器1001,通信接口1002,存储介质1003和通信总线1004;
130.其中处理器1001、通信接口1002、存储介质1003通过通信总线1004完成相互间的通信;
131.可选地,通信接口1002可以为通信模块的接口;
132.其中,处理器1001具体可以配置为:确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于所述在先传输包的传输包标识,解析并且播放所述当前传输包;
133.或者,确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则创建所述当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;将所述映射关系与所述当前传输包关联;
134.或者,根据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取所述播放节点的实时媒体流;确定与所述实时媒体流的当前传输包具有相同媒体类型标识的先前传输包;基于当前传输包与在先传输包的传输包标识,解析并且播放所述当前传输包。
135.上述处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
136.所述存储介质可以是,但不限于,随机存取存储介质(random access memory,ram),只读存储介质(read only memory,rom),可编程只读存储介质(programmable read-only memory,prom),可擦除只读存储介质(erasable programmable read-only memory,eprom),电可擦除只读存储介质(electric erasable programmable read-only memory,eeprom)等。
137.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在存储介质上的计算机程序,该计算机程序包含配置为执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(cpu)执行时,执行本发明的方法中限定的上述功能。需要说明的是,本发明所述的存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。存储介质例如可以但不限于是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包
括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储介质(ram)、只读存储介质(rom)、可擦式可编程只读存储介质(eprom或闪存)、光纤、便携式紧凑磁盘只读存储介质(cd-rom)、光存储介质件、磁存储介质件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何存储介质,该存储介质可以发送、传播或者传输配置为由指令执行系统、装置或者器件使用或者与其结合使用的程序。存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
138.可以以一种或多种程序设计语言或其组合来编写配置为执行本发明的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络:包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
139.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个配置为实现规定的逻辑功能的可执行指令。上述具体实施例中有特定先后关系,但这些先后关系只是示例性的,在具体实现的时候,这些步骤可能会更少、更多或执行顺序有调整。即在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
140.描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。这些模块的名称在某种情况下并不构成对该模块本身的限定。
141.作为另一方面,本发明还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所描述的方法。
142.作为另一方面,本发明还提供了一种存储介质,该存储介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述存储介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在先传输包的媒体类型标识相同,则基于所述在先传输包的传输包标识,解析并且播放所述当前传输包;
143.或者,确定实时媒体流的当前传输包;如果所述当前传输包的媒体类型标识与在
先传输包的媒体类型标识相同,则创建所述当前传输包的传输包标识与在先传输包的传输包标识之间的映射关系;将所述映射关系与所述当前传输包关联;
144.或者,根据播放控制操作,确定对应于播放节点的播放控制指令,并且根据播放控制指令,获取所述播放节点的实时媒体流;确定与所述实时媒体流的当前传输包具有相同媒体类型标识的先前传输包;基于当前传输包与在先传输包的传输包标识,解析并且播放所述当前传输包。
145.在本公开的各种实施方式中所使用的表述“第一”、“第二”、“所述第一”或“所述第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本公开的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。
146.当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。
147.以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
再多了解一些

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

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

相关文献