音频播放方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:25989248 阅读:14 留言:0更新日期:2020-10-20 18:57
本申请实施例提供了一种音频播放方法、装置、电子设备及计算机可读存储介质,涉及音频处理技术领域。该方法包括:接收待播放音频的播放指令,并基于播放指令确定待播放音频的源地址;确定源地址的地址类型;通过与地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放。本申请实施例可以在保证对不同来源音频兼容播放的同时,不同来源类型的音频可以通过最匹配的播放引擎进行播放,兼顾了不同地址类型的音频的高性能播放。

【技术实现步骤摘要】
音频播放方法、装置、电子设备及计算机可读存储介质
本申请涉及音频处理
,具体而言,本申请涉及一种音频播放方法、装置、电子设备及计算机可读存储介质。
技术介绍
Android是一种操作系统,主要应用于移动设备,如智能手机和平板电脑;在Android平台中可以采用各种播放引擎播放不同地址类型的音频,例如,可以使用java(一种计算机编程语言)层的MediaPlayer(媒体播放器)播放本地音频和网络音频,也可以使用嵌入式系统的开放式声音库播放本地音频。但现有的播放引擎难以兼顾不同地址类型的音频的播放性能,例如,MediaPlayer播放本地音频时延时相对较高,而嵌入式系统的开放式声音库不支持播放网络音频。
技术实现思路
本申请的目的旨在至少能解决上述的技术缺陷之一,特别是难以兼顾不同地址类型的音频的播放性能的技术缺陷。第一方面,提供了一种音频播放方法,该方法包括:接收待播放音频的播放指令,并基于播放指令确定待播放音频的源地址;确定源地址的地址类型;通过与地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第一方面的可选实施例中,确定源地址的地址类型的步骤,包括:判断源地址为本地地址或网络地址。在第一方面的可选实施例中,判断源地址为本地地址或网络地址的步骤,包括:查询源地址中是否包括预设字符;若是,则源地址为网络地址;或者,若否,则源地址为本地地址。在第一方面的可选实施例中,播放引擎包括媒体播放引擎和开放式声音库;通过与地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放的步骤之前,还包括:设置音频引擎,音频引擎中包括媒体播放引擎的调用接口和开放式声音库的调用接口;通过与地址类型相应的播放引擎从源地址获取待播放音频并进行播放的步骤,包括:采用所述音频引擎中的所述媒体播放引擎的调用接口或所述开放式声音库的调用接口调用与所述地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第一方面的可选实施例中,调用地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放的步骤,包括:若源地址为本地地址,则调用开放式声音库从源地址获取待播放音频并控制待播放音频进行播放;或者,若源地址为网络地址,则调用媒体播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第一方面的可选实施例中,调用媒体播放引擎从源地址获取待播放音频并控制待播放音频进行播放的步骤,包括:调用本地C++层媒体播放引擎,通过java本地接口连接至java层媒体播放器;通过java层媒体播放器从源地址获取待播放音频,并控制待播放音频进行播放。在第一方面的可选实施例中,获取待播放音频的源地址的步骤,包括:调用JavaScript层的音频播放接口,得到java语言形式的源地址;通过JavaScript绑定层连接至本地C++层,以将源地址的java语言形式转换为C++语言形式。第二方面,提供了一种音频播放装置,该装置包括:获取模块,用于接收待播放音频的播放指令,并基于播放指令确定待播放音频的源地址;确定模块,用于确定源地址的地址类型;播放模块,用于通过与地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第二方面的可选实施例中,确定模块用于判断源地址为本地地址或网络地址。在第二方面的可选实施例中,确定模块具体用于:查询源地址中是否包括预设字符;若是,则源地址为网络地址;或者,若否,则源地址为本地地址。在第二方面的可选实施例中,播放引擎包括媒体播放引擎和开放式声音库;音频播放装置还包括:设置模块,用于设置音频引擎,音频引擎中包括媒体播放引擎的调用接口和开放式声音库的调用接口;播放模块具体用于采用音频引擎中的媒体播放引擎的调用接口或开放式声音库的调用接口调用与地址类型相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第二方面的可选实施例中,播放模块具体用于:若源地址为本地地址,则调用开放式声音库从源地址获取待播放音频并控制待播放音频进行播放;或者,若源地址为网络地址,则调用媒体播放引擎从源地址获取待播放音频并控制待播放音频进行播放。在第二方面的可选实施例中,播放模块在调用媒体播放引擎从源地址获取待播放音频并控制待播放音频进行播放时,具体用于:调用本地C++层媒体播放引擎,通过java本地接口连接至java层媒体播放器;通过java层媒体播放器从源地址获取待播放音频,并控制待播放音频进行播放。在第二方面的可选实施例中,获取模块在获取待播放音频的源地址时,具体用于:调用JavaScript层的音频播放接口,得到java语言形式的源地址;通过JavaScript绑定层连接至本地C++层,以将源地址的java语言形式转换为C++语言形式。第三方面,提供了一种电子设备,该电子设备包括:一个或多个处理器;存储器;一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行实现本申请第一方面所示的音频播放方法。第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特征在于,该程序被处理器执行时实现本申请第一方面所示的音频播放方法。本申请提供的技术方案带来的有益效果是:在本公开实施例的方案中,通过先确定待播放音频的源地址的地址类型,获取与地址类型相应的播放引擎,再根据相应的播放引擎从源地址获取待播放音频并控制待播放音频进行播放,在保证对不同来源音频兼容播放的同时,不同来源类型的音频可以通过最匹配的播放引擎进行播放,兼顾了不同地址类型的音频的高性能播放。本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为本申请实施例提供的一种音频播放方法的流程示意图;图2为本申请实施例提供的一种音频播放方法的流程示意图;图3为本申请实施例提供的一种音频播放方法的流程示意图;图4为本申请实施例提供的一种音频播放方法的流程示意图;图5为本申请实施例提供的一种音频播放装置的结构示意图;图6为本申请实施例提供的一种音频播放装置的结构示意图;图7为本申请实施例提供的一种音频播放装置的结构示意图;图8为本申请实施例提供的一种音频播放的电子设备的结构示意图。具体实施方式下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。本文档来自技高网...

【技术保护点】
1.一种音频播放方法,其特征在于,包括:/n接收待播放音频的播放指令,并基于所述播放指令确定所述待播放音频的源地址;/n确定所述源地址的地址类型;/n通过与所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放。/n

【技术特征摘要】
1.一种音频播放方法,其特征在于,包括:
接收待播放音频的播放指令,并基于所述播放指令确定所述待播放音频的源地址;
确定所述源地址的地址类型;
通过与所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放。


2.根据权利要求1所述的音频播放方法,其特征在于,所述确定所述源地址的地址类型的步骤,包括:
判断所述源地址为本地地址或网络地址。


3.根据权利要求2所述的音频播放方法,其特征在于,所述判断所述源地址为本地地址或网络地址的步骤,包括:
查询所述源地址中是否包括预设字符;若是,则所述源地址为网络地址;或者,若否,则所述源地址为本地地址。


4.根据权利要求2所述的音频播放方法,其特征在于,所述播放引擎包括媒体播放引擎和开放式声音库;
所述通过与所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放的步骤之前,还包括:
设置音频引擎,所述音频引擎中包括所述媒体播放引擎的调用接口和所述开放式声音库的调用接口;
所述通过与所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并进行播放的步骤,包括:
采用所述音频引擎中的所述媒体播放引擎的调用接口或所述开放式声音库的调用接口调用与所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放。


5.根据权利要求4所述的音频播放方法,其特征在于,所述调用所述地址类型相应的播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放的步骤,包括:
若所述源地址为本地地址,则调用所述开放式声音库从所述源地址获取所述待播放音频并控制所述待播放音频进行播放;
或者,若所述源地址为网络地址,则调用所述媒体播放引擎从所述源地址获取所述待播放音频并控制所述待播放音频进行播放。


6.根据权利要求5所述的音频播放方法,其特征在于,所述调用所述媒体播放引擎从所述源地址获取所述待播放音频并控制所...

【专利技术属性】
技术研发人员:夏长锦杨文生林顺
申请(专利权)人:厦门雅基软件有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1