一种控制音视频数据播放的方法及装置与流程

文档序号:12628523阅读:216来源:国知局
一种控制音视频数据播放的方法及装置与流程

本发明涉及互联网应用技术领域,特别涉及一种控制音视频数据播放的方法及装置。



背景技术:

随着技术的发展,广播业务和移动业务开始渐渐融合,不同的多媒体内容和业务在不同的网络上传输,用户希望可以利用不同的终端设备(如智能手机、平板电脑等)在不同时刻接入任何网络时都能享受到这些服务。

相关技术中,采用Http流(Streaming)传输技术来实现多媒体数据的传输,即音频或视频输入装置将音/视频输入到服务器的媒体编码器中,媒体编码器将输入的音/视频进行编码,生成TS文件输出给流分段装置进行分段后,发送给分发装置,并生成该TS文件的索引文件,通过HTTP分发给客户端。然而,目前的方案仅支持单线程下载,亟需解决这一技术问题。



技术实现要素:

本发明提供一种控制音视频数据播放的方法及装置,用以实现灵活地控制音视频数据的播放的目的。

本发明提供一种控制音视频数据播放的方法,包括:

在音视频数据播放的过程中,监控对所述音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;

若监控到所述控制事件,调用控制函数,由所述控制函数对所述第一代理服务和所述第二代理服务执行相应的控制操作。

在本发明一实施例中,所述控制事件包括下列任意之一:

重载事件、暂停播放、退出播放。

在本发明一实施例中,当所述控制事件为重载事件时,由所述控制函数对所述第一代理服务和所述第二代理服务执行相应的控制操作,包括:

由所述控制函数停止所述第一代理服务和所述第二代理服务,并在重载之后,重新启动所述第一代理服务和所述第二代理服务。

在本发明一实施例中,通过以下任意操作触发所述控制事件:

触发控制按钮的操作、切换节目频道的操作、重启智能终端的操作。

在本发明一实施例中,所述控制函数包括stop方法或pause方法。

本发明还提供一种控制音视频数据播放的装置,包括:

监控模块,用于在音视频数据播放的过程中,监控对所述音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;

控制模块,用于若监控到所述控制事件,调用控制函数,由所述控制函数对所述第一代理服务和所述第二代理服务执行相应的控制操作。

在本发明一实施例中,所述控制事件包括下列任意之一:

重载事件、暂停播放、退出播放。

在本发明一实施例中,当所述控制事件为重载事件时,所述控制模块还用于:

由所述控制函数停止所述第一代理服务和所述第二代理服务,并在重载之后,重新启动所述第一代理服务和所述第二代理服务。

在本发明一实施例中,所述装置还包括:

触发模块,用于通过以下任意操作触发所述控制事件:

触发控制按钮的操作、切换节目频道的操作、重启智能终端的操作。

在本发明一实施例中,所述控制函数包括stop方法或pause方法。

在本发明实施例中,在音视频数据播放的过程中,监控对音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;若监控到控制事件,则调用控制函数,由控制函数对第一代理服务和第二代理服务执行相应的控制操作。由此可见,本发明实施例能够利用第一代理服务和第二代理服务实现多线程下载音视频数据,从而实现提高音视频数据播放效率的目的。并且,本发明实施例能够由控制函数对第一代理服务和第二代理服务执行相应的控制操作,从而实现灵活地控制音视频数据的播放的目的。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1所示为本发明一实施例中控制音视频数据播放的方法的流程图;

图2所示为本发明一实施例中音视频数据播放的方法的流程图;

图3所示为本发明一实施例中控制音视频数据播放的装置的结构示意图;以及

图4所示为本发明另一实施例中控制音视频数据播放的装置的结构示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

如图1所示为本发明一实施例中控制音视频数据播放的方法的流程图,该方法可以包括以下步骤S11-S12。

步骤S11,在音视频数据播放的过程中,监控对音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务。

步骤S12,若监控到控制事件,则调用控制函数,由控制函数对第一代理服务和第二代理服务执行相应的控制操作。

在本发明实施例中,在音视频数据播放的过程中,监控对音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;若监控到控制事件,则调用控制函数,由控制函数对第一代理服务和第二代理服务执行相应的控制操作。由此可见,本发明实施例能够利用第一代理服务和第二代理服务实现多线程下载音视频数据,从而实现提高音视频数据播放效率的目的。并且,本发明实施例能够由控制函数对第一代理服务和第二代理服务执行相应的控制操作,从而实现灵活地控制音视频数据的播放的目的。

HTTP live Streaming(HLS)是苹果公司实现的基于HTTP(Hypertext transfer protocol,超文本传输协议)的流媒体传输协议,可以实现流媒体的播放。HLS基于HTTP协议实现,HLS协议在服务器端将数据流存储为连续的、很短时长的媒体文件,传输内容包括两部分,一是m3u8文件(是苹果公司HLS协议里规定的一种描述文件,用文本方式对媒体文件进行描述,由一系列标签组成);二是MPEG-TS(Moving Pictures Experts Group/Motion Pictures Experts Group-Transport Stream,动态图像专家组-传输流)格式的媒体文件。m3u8文件是为这些MPEG-TS格式的媒体文件创建的索引文件。客户端不断的下载并播放这些媒体文件,就实现了流媒体的播放。

在本发明实施例中,利用自定义的类中的第一代理服务和第二代理服务实现多线程下载音视频数据,从而实现音视频数据的播放。图2所示为本发明一实施例中音视频数据播放的方法的流程图,该方法可以包括以下步骤S21-S23。

步骤S21,当监控到播放事件时,获取预设的第一代理服务、第二代理服务以及待播放音视频数据的源服务器的地址。

在该步骤中,从自定义的类中获取第一代理服务和第二代理服务。

步骤S22,利用第一代理服务和源服务器的地址,获取待播放音视频数据的m3u8文件,并由第一代理服务对m3u8文件进行解析,得到待播放音视频数据的至少一个TS文件的源地址。

步骤S23,利用第二代理服务和至少一个TS文件的源地址,下载待播放音视频数据的至少一个TS文件,并播放。

在步骤S22利用第一代理服务和源服务器的地址,获取待播放音视频数据的m3u8文件时,本发明实施例可选地实施为以下步骤A1-A2。

步骤A1,将源服务器的地址发送给第一代理服务。

在该步骤中,当播放事件发生时,启动set方法,set方法获取预设的第一代理服务、第二代理服务以及待播放音视频数据的源服务器的地址,set方法将源服务器的地址发送给第一代理服务。

步骤A2,调用播放器的函数,发送获取待播放音视频数据的m3u8文件的请求消息,其中,该请求消息中携带有第一代理服务的地址,由第一代理服务根据接收到的请求消息和源服务器的地址,从源服务器处获取待播放音视频数据的m3u8文件。

在该步骤中,第一代理服务根据源服务器的地址,向源服务器发送获取待播放音视频数据的m3u8文件的请求;第一代理服务接收源服务器返回的待播放音视频数据的m3u8文件。

在本发明的可选实施例中,第一代理服务从源服务器处获取待播放音视频数据的m3u8文件之后,对m3u8文件进行解析,得到待播放音视频数据的至少一个TS文件的源地址。随后,第一代理服务将至少一个TS文件的源地址修改为第二代理服务的地址,得到修改后的m3u8文件;进而,第一代理服务将至少一个TS文件的源地址发送给第二代理服务,并将修改后的m3u8文件发送给播放器的函数,以由播放器的函数根据修改后的m3u8文件向第二代理服务发送获取至少一个TS文件的请求。

从而,在步骤S23中利用第二代理服务和至少一个TS文件的源地址,下载待播放音视频数据的至少一个TS文件时,可以包括以下步骤B1-B3。

步骤B1,调用播放器的函数,解析修改后的m3u8文件,得到至少一个TS文件的修改后的地址。

步骤B2,根据至少一个TS文件的修改后的地址向第二代理服务发送获取至少一个TS文件的请求。

在该步骤中,由于至少一个TS文件的修改后的地址为第二代理服务的地址,因而可以向第二代理服务发送获取至少一个TS文件的请求。

步骤B3,第二代理服务接收到获取至少一个TS文件的请求,根据至少一个TS文件的源地址,下载待播放音视频数据的至少一个TS文件。

上文步骤S11中提及的控制事件可以包括重载事件、暂停播放、退出播放,等等,本发明不限于此。这里,可以通过触发控制按钮(如暂停或退出按钮)的操作、切换节目频道的操作或重启智能终端的操作来触发控制事件。

当控制事件为重载事件时,步骤S12中由控制函数对第一代理服务和第二代理服务执行相应的控制操作,可选地实施为:由控制函数停止第一代理服务和第二代理服务,并在重载之后,重新启动第一代理服务和第二代理服务,从而对两个代理服务的资源进行释放。

当控制事件为暂停播放或退出播放时,步骤S12中由控制函数对第一代理服务和第二代理服务执行相应的控制操作,可选地实施为:由控制函数停止第一代理服务和第二代理服务,从而对两个代理服务的资源进行释放。

在本发明的可选实施例中,控制函数可以包括stop方法或pause方法。例如,在捕获到暂停或退出按钮的触发操作时,调用stop方法,在stop方法中停止第一代理服务和第二代理服务。又如,在捕获到home键的触发操作时,调用pause方法,在pause方法中停止第一代理服务和第二代理服务。

需要说明的是,在实际应用中,上述所有可选实施方式可以采用结合的方式任意组合,形成本发明的可选实施例,在此不再一一赘述。

对应于上述实施例中的控制音视频数据播放的方法,本发明还提供一种控制音视频数据播放的装置。如图3所示为本发明一实施例中控制音视频数据播放的装置的结构示意图,包括:

监控模块31,用于在音视频数据播放的过程中,监控对所述音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;

控制模块32,用于若监控到所述控制事件,调用控制函数,由所述控制函数对所述第一代理服务和所述第二代理服务执行相应的控制操作。

在本发明一实施例中,所述控制事件包括下列任意之一:

重载事件、暂停播放、退出播放。

在本发明一实施例中,当所述控制事件为重载事件时,所述控制模块32还用于:

由所述控制函数停止所述第一代理服务和所述第二代理服务,并在重载之后,重新启动所述第一代理服务和所述第二代理服务。

在本发明一实施例中,如图4所示,上文图3展示的装置还可以包括:

触发模块41,用于通过以下任意操作触发所述控制事件:

触发控制按钮的操作、切换节目频道的操作、重启智能终端的操作。

在本发明一实施例中,所述控制函数包括stop方法或pause方法。

本发明实施例的上述装置:在音视频数据播放的过程中,监控对音视频数据播放的控制事件,其中,通过自定义的类实现对音视频数据的播放,该类继承了音视频数据的播放器的函数,并且该类中还增加了用于下载音视频数据的函数,所述用于下载音视频数据的函数中包括第一代理服务和第二代理服务;若监控到控制事件,则调用控制函数,由控制函数对第一代理服务和第二代理服务执行相应的控制操作。由此可见,本发明实施例能够利用第一代理服务和第二代理服务实现多线程下载音视频数据,从而实现提高音视频数据播放效率的目的。并且,本发明实施例能够由控制函数对第一代理服务和第二代理服务执行相应的控制操作,从而实现灵活地控制音视频数据的播放的目的。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1