CN112433615A - 音频播放方法、装置、头戴显示设备及存储介质 - Google Patents
音频播放方法、装置、头戴显示设备及存储介质 Download PDFInfo
- Publication number
- CN112433615A CN112433615A CN202011408687.4A CN202011408687A CN112433615A CN 112433615 A CN112433615 A CN 112433615A CN 202011408687 A CN202011408687 A CN 202011408687A CN 112433615 A CN112433615 A CN 112433615A
- Authority
- CN
- China
- Prior art keywords
- audio
- priority
- playing
- audio data
- audio playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 495
- 230000008569 process Effects 0.000 claims abstract description 439
- 238000012545 processing Methods 0.000 claims abstract description 51
- 239000000872 buffer Substances 0.000 claims description 159
- 238000001514 detection method Methods 0.000 claims description 6
- 230000003139 buffering effect Effects 0.000 claims description 4
- 238000003780 insertion Methods 0.000 description 13
- 230000037431 insertion Effects 0.000 description 13
- 239000011521 glass Substances 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 208000003028 Stuttering Diseases 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/162—Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请公开了一种音频播放方法、装置、头戴显示设备及存储介质,该音频播放方法应用于头戴显示设备,该音频播放方法包括:获取用于播放音频数据的音频播放进程;根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;根据所述音频接收进程及其对应的进程优先级,接收音频数据;根据所述音频播放进程,对接收到的音频数据进行播放。本方法可以减少头戴显示设备接收音频数据进行播放时的卡顿。
Description
技术领域
本申请涉及显示技术领域,更具体地,涉及一种方法、装置、头戴显示设备及存储介质。
背景技术
随着科技的进步,虚拟现实(VR,Virtual Reality)、增强现实(AR,AugmentedReality)等技术已逐渐成为国内外研究的热点。基于虚拟现实和增强现实的头戴显示设备(例如AR眼镜等)也越来越多,人们可以利用头戴显示设备观看显示内容以及音频的播放,因此深受人们喜爱。但是,头戴显示设备在对接收的音频数据进行播放时,可能出现卡顿问题,进而影响用户体验。
发明内容
鉴于上述问题,本申请提出了一种音频播放方法、装置、头戴显示设备及存储介质。
第一方面,本申请实施例提供了一种音频播放方法,应用于头戴显示设备,所述方法包括:获取用于播放音频数据的音频播放进程;根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;根据所述音频接收进程及其对应的进程优先级,接收音频数据;根据所述音频播放进程,对接收到的音频数据进行播放。
第二方面,本申请实施例提供了一种音频播放装置,应用于头戴显示设备,所述装置包括:进程检测模块、优先级确定模块、音频接收模块以及声音播放模块,其中,所述进程检测模块用于获取用于播放音频数据的音频播放进程;所述优先级确定模块用于根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;所述音频接收模块用于根据所述音频接收进程及其对应的进程优先级,接收音频数据;所述声音播放模块用于根据所述音频播放进程,对接收到的音频数据进行播放。
第三方面,本申请实施例提供了一种头戴显示设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的音频播放方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的音频播放方法。
本申请提供的方案,头戴显示设备在接收音频数据并对接收的音频数据进行播放的场景下,获取用于播放音频数据的音频播放进程,然后根据音频播放进程对应的音频播放场景,确定音频接收进程的进程优先级,该进程优先级为处理进程的优先级,然后根据音频接收进程及其对应的进程优先级,接收音频数据,最后根据音频播放进程,对接收到的音频数据进行播放,从而可以实现根据音频播放进程对应的具体播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,使音频接收进程的进程优先级与音频播放场景对应,避免音频播放时的卡顿。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的应用场景的一种示意图。
图2示出了本申请实施例提供的应用场景的另一种示意图。
图3示出了本申请实施例提供的应用场景的又一种示意图。
图4示出了根据本申请一个实施例的音频播放方法流程图。
图5示出了根据本申请另一个实施例的音频播放方法流程图。
图6示出了根据本申请又一个实施例的音频播放方法流程图。
图7示出了本申请又一个实施例提供的音频播放方法中步骤S360的流程图。
图8示出了根据本申请一个实施例的音频播放装置的一种框图。
图9是本申请实施例的用于执行根据本申请实施例的音频播放方法的头戴显示设备的框图。
图10是本申请实施例的用于保存或者携带实现根据本申请实施例的音频播放方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
虚拟现实技术(VR,Virtual Reality)是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,使用户沉浸到该环境中。虚拟现实技术就是利用现实生活中的数据,通过计算机技术产生的电子信号,将其与各种输出设备结合使其转化为能够让人们感受到的现象,这些现象可以是现实中真真切切的物体,也可以是我们肉眼所看不到的物质,通过三维模型表现出来
增强现实(AR,Augmented Reality)是通过计算机系统提供的信息增加用户对现实世界感知的技术,其将计算机生成的虚拟对象、场景或系统提示信息等内容对象叠加到真实场景中,来增强或修改对现实世界环境或表示现实世界环境的数据的感知。
随着VR技术和AR技术的发展,头戴显示设备(例如VR头盔、AR眼镜、AR头盔等)越来越多。为实现头戴显示设备的轻盈性,头戴显示设备逐渐由一体式的设备,发展成为外接式的设备。其中,一体式的头戴显示设备,具有较强的处理能力,其可以实现VR或AR显示中的全部处理;外接式的头戴显示设备,是与外部的终端连接,例如,与智能手机连接,将主要的处理功能放置于连接的终端,终端对数据进行处理后传输至头戴显示设备进行输出。
头戴显示设备存在接收音频数据进行播放的情况,例如外接式的头戴显示设备从连接的智能手机,获取待播放的音频数据,又例如,一体式的头戴显示设备通过网络从服务器获取音频数据。其中,外接式的头戴显示设备对外接的终端传输的音频数据进行播放的流程为:将音频文件,按照压缩格式的进行解码,压缩格式如MP3;音乐文件被解码为PCM数据,解码后的PCM将进行传输,如手机传输至眼镜,传输的方式可以是有线或者无线的方式;眼镜接收到PCM数据后,将PCM数据实时播放。
发明人经过长时间的研究并发现,相关技术中,是将音频数据实时传输,整个传输通路的设计上,尽可能减少延时,确保听音乐的流畅性。当头戴显示设备处理数据能力有限,或者传输宽带有局限时,存在有音频数据丢包的情况或者音频数据延时较大的情况,例如,当系统同时在处理多个进程时,进程如音乐播放和摄像头数据处理,当CPU或者带宽被摄像头数据占用且无法及时释放时,将导致音频数据无法被及时接收,出现丢包或者卡顿的情况。
针对上述问题,发明人提出了本申请实施例提供的音频播放方法、装置、头戴显示设备以及存储介质,可以实现根据音频播放进程对应的音频播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,使音频接收进程的进程优先级与音频播放场景对应,避免音频播放时的卡顿。其中,具体的音频播放方法在后续的实施例中进行详细的说明。
下面先介绍本申请实施例中的头戴显示设备。其中,该头戴显示设备可以为AR眼镜、AR头盔、VR眼镜、VR头盔、MR(MR,Mixed Reality)眼镜、MR头盔等,在此不做限定。
如图1所示,图1示出了头戴显示设备的一种示意图。如图1所示,该头戴显示设备100包括显示屏110、框架120和成像装置130。
在一些实施方式中,头戴显示设备100可以为一体式头戴显示设备,也可以是外接式/接入式头戴显示设备。头戴显示设备100可以外接式/接入式头戴显示设备,与头戴显示设备100连接的手机等智能终端可作为头戴显示装置的处理和存储设备,插入或者接入外接式头戴显示装置,进行数据的处理。头戴显示设备100可以为一体式头戴显示设备,头戴显示设备可以包括处理器和存储器,用于进行数据的处理。
该框架120包括前表面121、侧表面122和后表面123,显示屏110安装在所述框架的前表面,成像装置130能够将虚拟对象的图像显示在显示屏110上。例如,该成像装置130可以是衍射光波导,能够将图像投影到显示屏上。
作为一种实施方式,该显示屏110可以是该AR眼镜的镜片,并且该显示屏110还可以透光,即该显示屏110可以是半透半反的镜片,用户在佩戴该头戴显示设备的时候,当该显示屏110上显示图像的时候,用户能够看到该显示屏110上所显示的图像同时还可以透过该显示屏110看到周围环境中现实世界中的物体。则通过该半透半反的镜片,用户能够将镜片上所显示的图像与周围环境相叠加,从而实现增强现实的视觉效果。
其中,用户在佩戴该头戴显示设备的时候,显示屏110位于用户的眼前,即前表面121在用户眼睛的前方,后表面123位于用户眼睛的后方,侧表面122位于用户眼睛的侧方。
另外,在前表面121设置有前置摄像头,通过该前置摄像头感知前方的环境信息,以便实现即时定位与地图构建(Simultaneous Localization and Mapping,SLAM),进而实现增强现实或混合现实的视觉效果。
请参阅图2,头戴显示设备100可以为外接式/接入式的设备,头戴显示设备在一些应用场景中进行音频数据播放时,头戴显示设备100可以与电子终端200连接,电子终端200将音频数据进行处理后传输至头戴显示设备100进行播放,电子终端200可以为智能手机、平板电脑等,在此不做限定。
请参阅图3,头戴显示设备100可以为一体式的设备,头戴显示设备在一些应用场景中进行音频数据播放时,头戴显示设备100可以与服务器300通过网络进行通信,服务器300可以将音频数据传输至头戴显示设备100进行播放,服务器300可以为云服务器、传统服务器等,在此不做限定
请参阅图4,图4示出了本申请一个实施例提供的音频播放方法的流程示意图。在具体的实施例中,所述音频播放方法应用于如图8所示的音频播放装置400以及配置有所述音频播放装置400的头戴显示设备100(图9)。下面将以头戴显示设备为例,说明本实施例的具体流程。下面将针对图4所示的流程进行详细的阐述,所述音频播放方法具体可以包括以下步骤:
步骤S110:获取用于播放音频数据的音频播放进程。
在本申请实施例中,头戴显示设备用于接收外部传输的音频数据并进行播放的场景下,头戴显示设备可以获取用于播放音频数据的音频播放进程。其中,音频播放进程为根据当前的音频播放的场景所建立的音频播放进程根据音频播放进程,可以区分不同的音频播放场景。
在一些实施方式中,音频播放进程可以包括音乐播放进程、视频声音的播放进程、通话音的播放进程、语音识别结果的播放进程、广播声的播放进程等,具体的音频播放进程可以不做限定。
在一些实施方式中,头戴显示设备可以在接收到音频播放指令时,基于音频播放指令,创建与音频播放指令指示的音频播放场景对应的音频播放进程。作为一种方式,外接式的头戴显示设备从连接的电子终端接收音频数据进行播放的场景中,电子终端可以根据当前运行的音频播放应用,例如音乐播放应用、视频播放应用、通话应用等,生成对应的音频播放指令,该音频播放指令携带有与当前运行的音频播放应用对应的标识信息,头戴显示设备在接收到该音频播放指令后,可以根据音频播放指令,创建对应的音频播放进程;作为另一种方式,一体式的头戴显示设备通过网络从服务器获取音频数据进行播放时,头戴显示设备可以根据当前运行的音频播放应用,创建有对应的音频播放进程。从而,头戴显示设备在音频播放的场景中,创建有与具体的音频播放场景对应的音频播放进程,根据该音频播放进程,可以区分不同的音频播放场景。
在本申请实施例中,在不同的音频播放场景下,音频数据通常在时序上连续或者存在间断,例如音乐播放的场景下,声音通常是连续的;又例如,通话场景下,播放的声音通常不是连续的;再例如,语音识别场景下,语音识别结果的播放声音通常也不是连续的。由于不同的音频播放场景下,声音播放的连续性不同,这就使得在不同的音频播放场景下,音频传输不一定是连续的,即存在中断,这样的话,不同的音频播放场景对音频传输的处理的即时性的需求是不同的,因此,头戴显示设备可以确定用于播放音频数据的音频播放进程,由于不同音频播放进程对应的音频播放场景不同,从而可以根据音频播放进程,确定是否需要及时处理音频数据的传输。
步骤S120:根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级。
在本申请实施例中,头戴显示设备在获取音频播放进程之后,由于不同音频播放进程对应的音频播放场景不同,不同的音频播放场景对音频传输的处理的即时性的需求也不同,因此,可以根据音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,以在不同的音频播放场景下,以音频接收进程的进程优先级运行音频接收进程,对传输的音频数据进行接收。其中,音频接收进程为头戴显示设备在接收音频数据进行播放的场景下,所创建对应用于处理音频数据的传输的进程,即对音频数据的接收进行处理的进程;进程优先级指的是头戴显示设备处理进程的优先级,进程优先级越高,则头戴显示设备越优先满足进程的运行。
可以理解的,头戴显示设备运行时,除了创建有以上音频播放进程、音频接收进程以外,可能还运行有其他的进程,例如摄像头进程、内容显示的进程等;而由于头戴显示设备的处理能力有限,通常对不同的进程分配不同的优先级,以按照不同的进程优先级运行这些进程,进而满足不同场景下的需求,因此,在接收音频数据进行播放的场景下,根据音频播放进程,确定音频接收进程的进程优先级,以使音频接收进程的进程优先级能够与音频播放进程相对应,使得对音频数据的接收的即时性能够满足音频播放进程所对应的场景,避免音频数据无法被及时接收,出现丢包或者卡顿的情况。
在一些实施方式中,头戴显示设备中可以预先存储有音频接收进程的进程优先级对应的音频播放场景与音频播放进程之间的对应关系。该对应关系可以包括预先根据不同音频播放进程对应的音频播放场景,对音频数据的接收的即时性的需求不同,所设置的音频接收进程的进程优先级。其中,音频播放场景对接收音频数据的即时性的需求越高,则音频播放场景对应的音频接收进程的进程优先级也越高,这样不仅能满足音频数据进行接收的即时性需求,在对音频数据的接收的即时性需求较低时,也能保证其他进程正常运行,提升系统稳定性。例如,音乐播放进程、视频声音播放进程等对应的音频播放场景中通常声音不存在间断或者有间断时,间断的时长较小,其对音频数据的接收的即时性需求较高,因此可以设置较高的进程优先级,以使音频数据能够及时接收,避免丢包和卡顿;又例如,对于通话声音的播放进程、语音识别结果等播放进程,这些播放进程对应的音频播放场景下,声音播放并非连续,因此对音频数据的接收的即时性需求较低,因此可以设置相对较低的进程优先级。
在以上方式中,音频播放场景与进程优先级的对应关系可以以映射表的形式存储于头戴显示设备。示例性的,以音乐播放场景、通话声音的播放场景以及语音识别结果的播放场景为例,映射表可以如下表所示:
音频播放场景 | 进程优先级 |
音乐播放场景 | 第一优先级 |
通话声音的播放场景 | 第二优先级 |
语音识别结果的播放场景 | 第二优先级 |
当然,以上映射表仅为举例,并不构成对实际的音频播放进程与进程优先级的对应关系的限定。其中,第一优先级大于第二优先级,第一优先级可以为最高的进程优先级,第一优先级以及第二优先级可以均大于所有进程优先级中除第一优先级以及第二优先级以外的其他进程优先级,也就是说,电子设备在运行第一优先级以及第二优先级对应的进程时,将优先满足对第一优先级以及第二优先级对应的进程的运行。
在一些实施方式中,头戴显示设备也可以按照音频播放进程对应的音频播放场景对接收音频数据的即时性的需求不同,预先对不同的音频播放场景进行分类,将其划分为不同的类别。然后对不同的类别,对音频播放场景设置不同的进程优先级,其中,音频播放场景对接收音频数据的即时性的需求越高,则音频播放场景所属类别对应的音频接收进程的进程优先级也越高。头戴显示设备在识别出音频播放进程的音频播放场景对应的类别之后,可以根据该类别,确定与其对应的进程优先级。
当然,头戴显示设备具体根据音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级的具体方式可以不做限定。
步骤S130:根据所述音频接收进程及其对应的进程优先级,接收音频数据。
在本申请实施例中,头戴显示设备在根据音频播放进程对应的音频播放进程,确定音频接收进程对应的进程优先级之后,则可以按照确定的音频接收进程对应的进程优先级,并利用音频接收进程,处理音频数据的传输,实现接收音频数据。由于音频接收进程的进程优先级是与音频播放场景对应的,因此,对于接收音频数据的即时性,能够满足当前的音频播放进程对应的音频播放场景的需求。例如,音频播放进程对应的进程优先级为最高的优先级,则可以满足优先对音频数据的接收进行处理。
步骤S140:根据所述音频播放进程,对接收到的音频数据进行播放。
头戴显示设备在接收音频数据之后,则可以根据音频播放进程,对接收到的音频数据进行播放。
本申请实施例提供的音频播放方法,头戴显示设备在接收音频数据并对接收的音频数据进行播放的场景下,获取用于播放音频数据的音频播放进程,然后根据音频播放进程对应的音频播放场景,确定音频接收进程的进程优先级,该进程优先级为处理进程的优先级,然后根据音频接收进程及其对应的进程优先级,接收音频数据,最后根据音频播放进程,对接收到的音频数据进行播放,从而可以实现根据音频播放进程对应的具体播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,使音频接收进程的进程优先级与音频播放场景对应,避免音频播放时的卡顿。
请参阅图5,图5示出了本申请另一个实施例提供的音频播放方法的流程示意图。该音频播放方法应用于上述头戴显示设备,下面将针对图5所示的流程进行详细的阐述,所述音频播放方法具体可以包括以下步骤:
步骤S210:获取用于播放音频数据的音频播放进程。
在本申请实施例中,步骤S210可以参阅前述实施例的内容,在此不再赘述。
步骤S220:确定所述音频播放进程对应的音频播放场景是否与目标音频播放场景匹配,所述目标音频播放场景中的音频数据在时序的间隔时长小于预设时长。
在本申请实施例中,头戴显示设备在根据音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级时,可以将音频播放进程对应的音频播放场景与目标音频播放场景进行匹配。其中,目标播放场景为预先设置的音频数据在时序上的间隔时长小于预设时长的音频播放场景,目标音频播放场景中包括的音频播放场景的数量可以不做限定,例如,目标播放场景可以为音乐播放场景、视频声音的播放场景、广播播放场景、游戏声音的播放场景等。其中,预设时长可以为0.2秒,0.5秒等,预设时长的具体大小可以不做限定。
可以理解地,目标音频播放场景为预先设置的音频数据在时序的间隔时长小于预设时长的音频播放场景,则目标音频播放场景中,音频数据在时序上不存在间断(即间隔时长为0),也就是连续传输音频数据至头戴显示设备进行播放,或者音频数据在时序上存在间隔,但间隔时长较小,例如,音频播放场景中,在当前歌曲播放完毕时,与下一首歌曲之间会存在间隔。因此目标音频播放场景对接收音频数据的即时性的需求较高,从而需要及时的处理对音频数据的接收,以避免音频数据传输过程丢包而造成卡顿。将当前的音频播放进程对应的音频播放场景与目标音频播放场景进行匹配,以便根据匹配结果,确定是否需要将音频接收进程的进程优先级设置为较高的优先级。
在一些实施方式中,目标音频播放场景中包括多个音频播放场景时,若当前的音频播放进程对应的音频播放进程与目标音频播放场景中任一音频播放场景匹配,则当前的音频播放进程对应的音频播放场景与目标音频播放场景匹配;若当前的音频播放进程对应的音频播放场景与目标音频播放场景中每个音频播放场景均不匹配,则当前的音频播放进程对应的音频播放场景与目标音频播放场景不匹配。
步骤S230:若与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第一目标优先级。
步骤S240:若不与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第二目标优先级,所述第一目标优先级大于所述第二目标优先级。
在本申请实施例中,头戴显示设备在将当前的音频播放进程对应的音频播放场景与目标音频播放场景进行匹配之后,可以根据匹配结果,确定音频接收进程对应的进程优先级。
其中,若当前的音频播放进程对应的音频播放场景与目标音频播放场景匹配,则表示当前的音频播放进程对应的音频播放场景中,音频数据在时序上不存在中断,即连续的,其对接收音频数据的即时性的需求也较高,因此将音频接收进程对应的进程优先级确定为第一目标优先级;若当前的音频播放进程对应的音频播放场景与目标音频播放场景匹配,则表示当前的音频播放进程对应的音频播放场景中,音频数据在时序上存在中断,即非连续的,其对接收音频数据的即时性的需求也较高,因此将音频接收进程对应的进程优先级确定为相对第一目标优先级较低的第二目标优先级,从而使得当前的音频播放进程对应的音频播放场景对接收音频数据的即时性的需求较高时,则音频接收进程对应的进程优先级也较高,避免音频接收过程造成丢包而带来音频播放的卡顿。
在一些实施方式中,若当前的音频播放进程对应的音频播放场景与目标音频播放场景匹配,可以将音频接收进程对应的进程优先级确定为第一优先级;若当前的音频播放进程对应的音频播放场景与目标音频播放场景不匹配,可以将音频接收进程对应的进程优先级确定为第二优先级或第三优先级。其中,第一优先级、第二优先级、第三优先级以及其他进程优先级的大小依次降低,其他进程优先级为所有进程优先级中除第一优先级、第二优先级以及第三优先级以外的进程优先级。
可以理解地,第一优先级为所有的进程优先级中最高的优先级,当某个进程的进程优先级为第一优先级时,则该进程会被头戴显示设备最优先保证运行;当然,随着进程优先级的降低,对于第二优先级以及第三优先级的进程,头戴显示设备不会最优先保证这些进程的运行,但是由于第二优先级以及第三优先级在所有的进程优先级中也为优先级较高的水平,因此头戴显示设备也能够满足这些进程能够被优先进行处理。对应到本申请实施例的音频播放方法中,由于当前的音频播放进程对应的音频播放场景与目标音频播放场景匹配,因此,将音频接收进程的优先级设置为第一优先级,可以使得头戴显示设备能够优先保证音频接收进程的运行,避免接收音频数据时的丢包带来的音频播放卡顿;在当前的音频播放进程对应的音频播放场景与目标音频播放场景不匹配时,将音频接收进程对应的优先级设置为第二优先级或第三优先级,可以使得音频接收进程的进程优先级仍然处于较高的水平,头戴显示设备能够一定程度上保证音频接收进程的运行,并且不影响一些其他的关键进程的运行,满足头戴显示设备的系统响应速度。
示例性的,进程优先级可以按照优先级从高到低的顺序,分为:第一优先级、第二优先级、第三优先级、第四优先级和第五优先级等。若音频播放进程对应的优先级为第一优先级,则音频接收进程的进程优先级为最高,将会被优先满足运行,保证音频数据的接收;若音频接收进程的进程优先级为第二优先级或者第三优先级,则音频接收进程的进程优先级依然相对较高,可以一定程度上满足音频接收进程的运行,并且不影响其他关键进程的运行。
在一些实施方式中,由于头戴显示设备在显示虚拟内容,例如,显示AR场景中的虚拟内容或者VR场景中的虚拟内容时,其对虚拟内容的渲染和显示,是需要较多的处理资源的,若在该情况下,将音频接收进程设置为第一优先级,则可能导致头戴显示设备显示内容的卡顿,因此,在以上实施方式中,在将音频接收进程对应的进程优先级确定为第一优先级之前,头戴显示设备还可以判断当前是否运行有虚拟内容的显示进程;在当前未运行有虚拟内容的显示进程时,才将音频接收进程对应的进程优先级确定为第一优先级,而在当前运行有虚拟内容的显示进程时,将音频接收进程对应的进程优先级确定为第二优先级或第三优先级,虚拟内容的显示进程确定为第一优先级,从而避免影响头戴显示设备显示内容时的卡顿,并且也能一定程度上保障接收数据的即时性。
在一些实施方式中,头戴显示设备在以上需要将音频接收进程对应的进程优先级确定为第二优先级或者第三优先级的情况下,可以根据音频播放进程对应的音频播放场景,确定将音频接收进程确定为第二优先级,或者将音频接收进程确定为第三优先级。其中,音频接收进程对应音频播放场景中音频数据在时序上存在中断(不连续)情况下,可以根据音频播放场景中播放声音时声音播放的连续程度,将音频接收进程对应的进程优先级预先设置为第二优先级或者第三优先级,从而可以根据预先设置的该对应关系,确定当前的音频接收进程对应的进程优先级;在音频播放场景中播放声音时声音播放的连续程度为第一连续程度时,将音频接收进程对应的进程优先级预先设置为第二优先级,在音频播放场景中播放声音时声音播放的连续程度为第二连续程度时,将音频接收进程对应的进程优先级预先设置为第三优先级,其中,第一连续程度高于第二连续程度。作为一种方式,音频播放场景中播放声音时声音播放的连续程度可以根据历史播放音频时,播放声音中所有连续性的音频段对应的时长总和占据整个音频播放过程的总时长确定;作为另一种方式,可以确定历史播放音频时,播放的声音中声音连续的时间段的第一数量,以及中断的时间段的第二数量,然后获取第一数量与第二数量的总合,将第一数量与该总和之间的比值,作为以上连续程度。
步骤S250:根据所述音频接收进程及其对应的进程优先级,接收音频数据。
步骤S260:根据所述音频播放进程,对接收到的音频数据进行播放。
在本申请实施例中,步骤S250以及步骤S260可以参阅前述实施例的内容,在此不再赘述。
本申请实施例提供的音频播放方法,头戴显示设备在接收音频数据并对接收的音频数据进行播放的场景下,获取用于播放音频数据的音频播放进程,然后将该音频播放进程对应的音频播放场景与目标播放场景进行匹配,在音频播放进程对应的音频播放场景与目标播放场景匹配时,将音频接收进程的进程优先级确定为相对较高的第一目标优先级,音频播放进程对应的音频播放场景与目标播放场景匹配时,将音频接收进程的进程优先级确定为相对较低的第二目标优先级,然后根据音频接收进程及其对应的进程优先级,接收音频数据,最后根据音频播放进程,对接收到的音频数据进行播放,从而可以实现根据音频播放进程对应的音频播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,满足对接收音频数据的即时性的需求,使音频接收进程的进程优先级与音频播放进程对应,避免音频播放时的卡顿。
请参阅图6,图6示出了本申请又一个实施例提供的音频播放方法的流程示意图。该音频播放方法应用于上述头戴显示设备,下面将针对图6所示的流程进行详细的阐述,所述音频播放方法具体可以包括以下步骤:
步骤S310:获取用于播放音频数据的音频播放进程。
步骤S320:根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级。
步骤S330:根据所述音频接收进程及其对应的进程优先级,接收音频数据。
在本申请实施例中,步骤S310至步骤S330可以参阅前述实施例的内容,在此不再赘述。
步骤S340:将接收的音频数据缓存于指定缓冲区。
在本申请实施例中,头戴显示设备可以将接收的音频数据缓存于指定缓冲区中。其中,指定缓冲区为预先创建的用于在音频播放过程中,缓存音频数据的缓冲区。头戴显示设备可以按照音频数据在时间上的先后顺序,将音频数据依次缓存至指定缓冲区中。
在一些实施方式中,指定缓冲区可以包括预设个数的缓冲区,每个缓冲区的大小为预设大小。其中,预设个数以及预设大小的具体数值可以不做限定。作为一种方式,预设个数以及预设大小可以根据头戴显示设备的剩余内存确定,具体地,头戴显示设备可以根据剩余内存,确定可分配于音频数据的缓存的内存(例如可分配剩余内存的30%、50%等),然后根据分配的内存,确定缓冲区的预设个数以及预设大小,其中,预设个数的缓冲区的总大小即为分配的内存大小。
步骤S350:在所述指定缓冲区中存在有缓冲区为空时,获取为空的缓冲区的数量。
在本申请实施例中,头戴显示设备在将音频数据缓存于指定缓冲区之后,从指定缓冲区中读取出音频数据进行播放之前,还可以确定接收的音频数据是否存在丢帧,如果存在丢帧的情况,还可以对接收的音频数据进行插帧处理。由于将接收的音频数据缓存于指定缓冲区,如果存在音频数据中的丢帧时,则指定缓冲区中存在空的缓冲区,因此头戴显示设备可以确定指定缓冲区中是否存在有缓冲区为空,若存在有缓冲区为空时,则表示接收的音频数据存在丢帧的情况;若不存在有缓冲区为空时,则表示接收的音频数据不存在丢帧的情况。
在一些实施方式中,在指定缓冲区中存在有空的缓冲区时,则可以获取空的缓冲区的数量,该数量可以表征音频数据中音频的缺失程度,以根据音频数据的缺失程度,确定不同的插帧策略。
步骤S360:根据所述数量,对所述音频数据进行插帧处理。
在本申请实施例中,头戴显示设备可以在获取空的缓冲区的数量之后,则可以根据空的缓冲区的数量,确定对应的插帧处理方式,然后对指定缓冲区中的音频数据进行插帧处理。
在一些实施方式中,请参阅图7,头戴显示设备根据以上空的缓冲区的数量,对音频数据进行插帧处理,包括:
步骤S361:在所述数量处于第一范围时,根据目标缓冲区内的音频数据,生成第一待插入音频,所述目标缓冲区为与所述空的缓冲区相邻的缓冲区。
步骤S362:将所述第一待插入音频插入至所述目标缓冲区。
在该实施方式中,空的缓冲区的数量可以分为第一范围以及第二范围,第二范围的最小值大于第二范围的最大值,例如,第一范围为(0,5],第二范围为(5,10)。在空的缓冲区的数量处于第一范围时,表示丢帧较少,因此可以根据与空的缓冲区相邻的目标缓冲区中的音频数据,对空的缓冲区中插入音频。其中,头戴显示设备可以根据以上目标缓冲区中的音频数据,生成待插入的音频数据,缓存至目标缓冲区,实现音频数据的插帧。可以理解的,由于头戴显示设备缓存接收的音频数据时,是按照音频数据的时序,依次缓存至指定缓冲区中,因此,与空的缓冲区相邻的目标缓冲区中的音频数据即为丢失的音频数据前后的音频数据。其中,可以取空的缓冲区之前的指定数量的缓冲区以及空的缓冲区之后的指定数量的缓冲区。
作为一种方式,用于生成待插入音频的音频数据的大小可以根据丢失的音频数据的大小确定,以上指定数量可以根据用于生成待插入音频的音频数据的大小,以及指定缓冲区中每个缓冲区的大小确定。例如,需要根据丢失的音频数据之前的8毫秒的音频数据以及丢失的音频数据之后的8毫秒的音频数据,来生成待插入的音频,而指定缓冲区中每个缓冲区可缓存的音频数据大小为4毫秒的音频数据,则指定数量可以为2。
示例性的,指定缓冲区包括:缓冲区1、缓冲区2、缓冲区3、缓冲区4、缓冲区5、缓冲区6、缓冲区7、缓冲区8、缓冲区9和缓冲区10。若空的缓冲区包括:缓冲区2、缓冲区7和缓冲区8,则可以根据缓冲区1以及缓冲区3中的音频数据来生成用于插入至缓冲区2中的第一插入音频,根据缓冲区5、缓冲区6、缓冲区9和缓冲区10中的音频数据来生成用于插入至缓冲区7中的第一插入音频。
在一些方式中,头戴显示设备根据目标缓冲区内的音频数据,生成待插入的音频时,可以根据目标缓冲区内的音频数据,对目标缓冲区内的音频数据进行傅里叶变换后,获得变换后的音频数据;然后获取变换后的音频数据的均值,作为第一待插入音频。由于采用丢失的音频数据之前以及之后的音频数据,来生成待插入音频,可以使得进行插帧后,音频数据的连贯性较高,提升音频插帧的效果。
步骤S363:在所述数量处于第二范围时,获取所述音频数据的背景音频,所述第二范围的最小值大于所述第一范围的最大值。
在该实施方式中,在空的缓冲区的数量处于第二范围时,表示丢帧较多,即丢失的音频数据角度,采用以上根据丢失音频前后的音频数据来进行均匀插音频帧的方式,依然会使得感受到卡顿现象。因此,可以根据音频内容,来区分空的缓冲区中不同的缓冲区。具体的,头戴显示设备可以获取音频数据的背景音频,例如,通过对音频数据进行人声消除等方式,获取背景音频。
步骤S364:在第一缓冲区内的音频数据中不包括人声时,将所述背景音频插入所述第二缓冲区内,所述第二缓冲区为所述空的缓冲区中的任意缓冲区,所述第一缓冲区为与所述第二缓冲区相邻的缓冲区。
步骤S365:在所述第一缓冲区内的音频数据中包括人声时,根据所述第一缓冲区内的音频数据,生成第二待插入音频,并将所述第二待插入音频插入之后所述第二缓冲区。
在该实施方式中,第一缓冲区内的音频数据中不包括人声时,表示第二缓冲区对应的丢失的音频的前后不包含人声,因此可以在第一缓冲区内插入背景音频;在第一缓冲区内的音频数据中包含人声时,表示第二缓冲区对应的丢失的音频的前后包含人声,因此可以根据与所述第二缓冲区相邻的第一缓冲区中的音频数据,即第二缓冲区对应的丢失的音频的前后的音频数据,生成第二待插入音频,并将第二待插入音频插入至第二缓冲区。具体的,可以根据第一缓冲区内的音频数据,对第一缓冲区内的音频数据进行傅里叶变换后,获得变换后的音频数据;然后获取变换后的音频数据的均值,作为第二待插入音频。在该实施方式中,在接收的音频数据中丢失的音频数据较多时,根据丢失的音频数据附近的音频内容,来进行不同的插帧,可以插帧后的音频数据的连贯性,在音频数据进行播放后,使得用户不易察觉到是经过插帧的音频,提升用户体验。
在一些实施方式中,由于丢帧较多时,无论进行何种插帧,都可能会使用户感受到是插帧后的视频,用户体验同样会较低,因此在空的缓冲区的数量大于第二范围的最大值时,则可以不进行以上的插帧处理,以减少头戴显示设备的处理量。
在一些实施方式中,头戴显示设备对接收的音频数据进行缓存后,对音频数据的插帧,也可以是在以上音频接收进程的进程优先级较高时,才执行,也就是,音频接收进程的进程优先级较高时,才执行步骤S350以及步骤S360。作为一种方式,可以与上个实施例中,音频接收进程设置为第一优先级(最该优先级)、第二优先级或者第三优先级的处理方式进行结合,当音频接收进程为第一优先级以及第二优先级时,可以进行步骤S350以及步骤S360的处理;当音频接收进程为第三优先级时,则可以不进行步骤S350以及步骤S360的处理。可以理解的,当进程优先级为第一优先级或者第二优先级时,进程优先级较高,也就是对音频接收的即时性需求较高,也即播放声音具有连续性或者连续程度较高,因此可以进行插帧处理,可以有效避免丢帧带来的影响;当声音处于第三优先级时,进程优先级较低,也就是对音频接收的即时性需求较低,也即播放声音具有连续性或者连续程度不高,因此可以不进行插帧处理,减少头戴显示设备的处理量。
步骤S370:根据所述音频播放进程,将所述指定缓冲区中的音频数据进行播放。
在本申请实施例中,步骤S370可以参阅前述实施例的内容,在此不再赘述。
本申请实施例提供的音频播放方法,头戴显示设备在接收音频数据并对接收的音频数据进行播放的场景下,获取用于播放音频数据的音频播放进程,然后根据音频播放进程对应的音频播放场景,确定音频接收进程的进程优先级,该进程优先级为处理进程的优先级,然后根据音频接收进程及其对应的进程优先级,接收音频数据,将接收到的音频数据缓存至指定缓冲区,最后根据音频播放进程,对指定缓冲区中的音频数据进行播放,从而可以实现根据音频播放进程对应的具体音频播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,使音频接收进程的进程优先级与音频播放场景对应,避免音频播放时的卡顿。另外,在对接收到的音频数据进行缓存后,还在存在空的缓冲区时,进行插帧处理,进一步避免了音频播放的卡顿问题。
请参阅图8,其示出了本申请实施例提供的一种音频播放装置400的结构框图。该音频播放装置400应用上述的头戴显示设备,该音频播放装置400包括:进程检测模块410、优先级确定模块420、音频接收模块430以及声音播放模块。其中,所述进程检测模块410用于获取用于播放音频数据的音频播放进程;所述优先级确定模块420用于根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;所述音频接收模块430用于根据所述音频接收进程及其对应的进程优先级,接收音频数据;所述声音播放模块440用于根据所述音频播放进程,对接收到的音频数据进行播放。
在一些实施方式中,优先级确定模块420可以具体用于:确定所述音频播放进程对应的音频播放场景是否与目标音频播放场景匹配,所述目标音频播放场景中的音频数据在时序上的间隔时长小于预设时长;若与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第一目标优先级;若不与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第二目标优先级,所述第一目标优先级大于所述第二目标优先级。
在该实施方式中,优先级确定模块420将所述音频接收进程对应的进程优先级确定为第一目标优先级,可以包括:将所述音频接收进程对应的进程优先级确定为第一优先级。优先级确定模块420将所述音频接收进程对应的进程优先级确定为第二目标优先级,可以包括:将所述音频接收进程对应的进程优先级确定为第二优先级或第三优先级,其中,所述第一优先级、所述第二优先级、所述第三优先级以及其他进程优先级的大小依次降低,所述其他进程优先级为所有进程优先级中除所述第一优先级、第二优先级以及第三优先级以外的进程优先级。
在该实施方式中,优先级确定模块420还可以用于:判断当前是否运行有虚拟内容的显示进程;在未运行有虚拟内容的显示进程时,将所述音频接收进程对应的进程优先级确定为第一优先级。
在一些实施方式中,该音频播放装置400还可以包括:音频缓存模块。音频缓存模块用于将接收的音频数据缓存于指定缓冲区;声音播放模块440可以用于根据所述音频播放进程,将所述指定缓冲区中的音频数据进行播放。
在该实施方式中,该音频播放装置400还可以包括:数量获取模块以及插帧处理模块。数量获取模块用于在所述指定缓冲区中存在有缓冲区为空时,获取为空的缓冲区的数量;插帧处理模块用于根据所述数量,对所述音频数据进行插帧处理。
在该方式下,插帧处理模块可以具体用于:在所述数量处于第一范围时,根据目标缓冲区内的音频数据,生成第一待插入音频,所述目标缓冲区为与所述空的缓冲区相邻的缓冲区;将所述第一待插入音频插入至所述目标缓冲区。
作为一种方式,插帧处理模块根据目标缓冲区内的音频数据,生成第一待插入音频,可以包括:对所述目标缓冲区内的音频数据进行傅里叶变换后,获得变换后的音频数据;获取所述变换后的音频数据的均值,作为第一待插入音频。
在该方式下,插帧处理模块还可以用于:在所述数量处于第二范围时,获取所述音频数据的背景音频,所述第二范围的最小值大于所述第一范围的最大值;在第一缓冲区内的音频数据中不包括人声时,将所述背景音频插入所述第二缓冲区内,所述第二缓冲区为所述空的缓冲区中的任意缓冲区,所述第一缓冲区为与所述第二缓冲区相邻的缓冲区;在所述第一缓冲区内的音频数据中包括人声时,根据所述第一缓冲区内的音频数据,生成第二待插入音频,并将所述第二待插入音频插入之后所述第二缓冲区。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
综上所述,本申请提供的方案,头戴显示设备在接收音频数据并对接收的音频数据进行播放的场景下,获取用于播放音频数据的音频播放进程,然后根据音频播放进程对应的音频播放场景,确定音频接收进程的进程优先级,该进程优先级为处理进程的优先级,然后根据音频接收进程及其对应的进程优先级,接收音频数据,最后根据音频播放进程,对接收到的音频数据进行播放,从而可以实现根据音频播放进程对应的具体播放场景,对用于接收音频数据的音频接收进程的进程优先级进行确定,使音频接收进程的进程优先级与音频播放场景对应,避免音频播放时的卡顿。
请参考图9,其示出了本申请实施例提供的一种头戴显示设备的结构框图。该头戴显示设备100可以是AR眼镜、AR头盔、VR眼镜、VR头盔、MR眼镜、MR头盔等能够运行应用程序的显示设备。本申请中的头戴显示设备100可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个头戴显示设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行头戴显示设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储头戴显示设备100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图10,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (12)
1.一种音频播放方法,其特征在于,应用于头戴显示设备,所述方法包括:
获取用于播放音频数据的音频播放进程;
根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;
根据所述音频接收进程及其对应的进程优先级,接收音频数据;
根据所述音频播放进程,对接收到的音频数据进行播放。
2.根据权利要求1所述的方法,其特征在于,所述根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,包括:
确定所述音频播放进程对应的音频播放场景是否与目标音频播放场景匹配,所述目标音频播放场景中的音频数据在时序上的间隔时长小于预设时长;
若与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第一目标优先级;
若不与所述目标音频播放场景匹配,将所述音频接收进程对应的进程优先级确定为第二目标优先级,所述第一目标优先级大于所述第二目标优先级。
3.根据权利要求2所述的方法,其特征在于,所述将所述音频接收进程对应的进程优先级确定为第一目标优先级,包括:
将所述音频接收进程对应的进程优先级确定为第一优先级;
所述将所述音频接收进程对应的进程优先级确定为第二目标优先级,包括:
将所述音频接收进程对应的进程优先级确定为第二优先级或第三优先级,其中,所述第一优先级、所述第二优先级、所述第三优先级以及其他进程优先级的大小依次降低,所述其他进程优先级为所有进程优先级中除所述第一优先级、第二优先级以及第三优先级以外的进程优先级。
4.根据权利要求3所述的方法,其特征在于,在将所述音频接收进程对应的进程优先级确定为第一优先级之前,所述方法还包括:
判断当前是否运行有虚拟内容的显示进程;
所述将所述音频接收进程对应的进程优先级确定为第一优先级,包括:
在未运行有虚拟内容的显示进程时,将所述音频接收进程对应的进程优先级确定为第一优先级。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述根据所述音频播放进程,对接收到的音频数据进行播放之前,所述方法还包括:
将接收的音频数据缓存于指定缓冲区;
所述根据所述音频播放进程,对接收到的音频数据进行播放,包括:
根据所述音频播放进程,将所述指定缓冲区中的音频数据进行播放。
6.根据权利要求5所述的方法,其特征在于,在所述根据所述音频播放进程,将所述指定缓冲区中的音频数据进行播放之前,所述方法还包括:
在所述指定缓冲区中存在有缓冲区为空时,获取为空的缓冲区的数量;
根据所述数量,对所述音频数据进行插帧处理。
7.根据权利要求6所述的方法,其特征在于,所述根据所述数量,对所述音频数据进行插帧处理,包括:
在所述数量处于第一范围时,根据目标缓冲区内的音频数据,生成第一待插入音频,所述目标缓冲区为与所述空的缓冲区相邻的缓冲区;
将所述第一待插入音频插入至所述目标缓冲区。
8.根据权利要求7所述的方法,其特征在于,所述根据目标缓冲区内的音频数据,生成第一待插入音频,包括:
对所述目标缓冲区内的音频数据进行傅里叶变换后,获得变换后的音频数据;
获取所述变换后的音频数据的均值,作为第一待插入音频。
9.根据权利要求7所述的方法,其特征在于,所述根据所述数量,对所述音频数据进行插帧处理,还包括:
在所述数量处于第二范围时,获取所述音频数据的背景音频,所述第二范围的最小值大于所述第一范围的最大值;
在第一缓冲区内的音频数据中不包括人声时,将所述背景音频插入所述第二缓冲区内,所述第二缓冲区为所述空的缓冲区中的任意缓冲区,所述第一缓冲区为与所述第二缓冲区相邻的缓冲区;
在所述第一缓冲区内的音频数据中包括人声时,根据所述第一缓冲区内的音频数据,生成第二待插入音频,并将所述第二待插入音频插入之后所述第二缓冲区。
10.一种音频播放装置,其特征在于,应用于头戴显示设备,所述装置包括:进程检测模块、优先级确定模块、音频接收模块以及声音播放模块,其中,
所述进程检测模块用于获取用于播放音频数据的音频播放进程;
所述优先级确定模块用于根据所述音频播放进程对应的音频播放场景,确定音频接收进程对应的进程优先级,所述进程优先级为处理进程的优先级;
所述音频接收模块用于根据所述音频接收进程及其对应的进程优先级,接收音频数据;
所述声音播放模块用于根据所述音频播放进程,对接收到的音频数据进行播放。
11.一种头戴显示设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-9任一项所述的方法。
12.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-9任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011408687.4A CN112433615A (zh) | 2020-12-04 | 2020-12-04 | 音频播放方法、装置、头戴显示设备及存储介质 |
PCT/CN2021/124090 WO2022116709A1 (zh) | 2020-12-04 | 2021-10-15 | 音频播放方法、装置、头戴显示设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011408687.4A CN112433615A (zh) | 2020-12-04 | 2020-12-04 | 音频播放方法、装置、头戴显示设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112433615A true CN112433615A (zh) | 2021-03-02 |
Family
ID=74691924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011408687.4A Pending CN112433615A (zh) | 2020-12-04 | 2020-12-04 | 音频播放方法、装置、头戴显示设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112433615A (zh) |
WO (1) | WO2022116709A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022116709A1 (zh) * | 2020-12-04 | 2022-06-09 | Oppo广东移动通信有限公司 | 音频播放方法、装置、头戴显示设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192203A (zh) * | 2006-11-30 | 2008-06-04 | 中兴通讯股份有限公司 | 手机音频播放方法 |
CN101355766A (zh) * | 2008-09-11 | 2009-01-28 | 青岛海信移动通信技术股份有限公司 | 一种移动终端及其多媒体播放控制方法 |
CN102215041A (zh) * | 2010-04-02 | 2011-10-12 | 上海科斗电子科技有限公司 | 与触摸屏关联的数据发送智能工具和数据接收智能工具 |
CN107122158A (zh) * | 2017-04-14 | 2017-09-01 | 北京小米移动软件有限公司 | 播放信息提示音频的方法及装置、电子设备 |
US10001966B1 (en) * | 2016-01-20 | 2018-06-19 | Rockwell Collins, Inc. | Systems and methods for sequencing audio communications |
EP3352077A1 (en) * | 2017-01-24 | 2018-07-25 | Da Sheng Inc. | Method for synchronously taking audio and video in order to proceed one-to-multi multimedia stream |
CN109525707A (zh) * | 2018-10-15 | 2019-03-26 | 维沃移动通信有限公司 | 一种音频播放方法及移动终端 |
US20200059776A1 (en) * | 2018-08-14 | 2020-02-20 | Rapidsos, Inc. | Systems & methods for intelligently managing multimedia for emergency response |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364188A (zh) * | 2008-09-12 | 2009-02-11 | 青岛海信移动通信技术股份有限公司 | 一种移动终端及其多媒体播放控制方法 |
CN106648534B (zh) * | 2016-12-26 | 2019-09-13 | 三星电子(中国)研发中心 | 一种对互斥的音频实现同时播放的方法 |
CN112433615A (zh) * | 2020-12-04 | 2021-03-02 | Oppo广东移动通信有限公司 | 音频播放方法、装置、头戴显示设备及存储介质 |
-
2020
- 2020-12-04 CN CN202011408687.4A patent/CN112433615A/zh active Pending
-
2021
- 2021-10-15 WO PCT/CN2021/124090 patent/WO2022116709A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192203A (zh) * | 2006-11-30 | 2008-06-04 | 中兴通讯股份有限公司 | 手机音频播放方法 |
CN101355766A (zh) * | 2008-09-11 | 2009-01-28 | 青岛海信移动通信技术股份有限公司 | 一种移动终端及其多媒体播放控制方法 |
CN102215041A (zh) * | 2010-04-02 | 2011-10-12 | 上海科斗电子科技有限公司 | 与触摸屏关联的数据发送智能工具和数据接收智能工具 |
US10001966B1 (en) * | 2016-01-20 | 2018-06-19 | Rockwell Collins, Inc. | Systems and methods for sequencing audio communications |
EP3352077A1 (en) * | 2017-01-24 | 2018-07-25 | Da Sheng Inc. | Method for synchronously taking audio and video in order to proceed one-to-multi multimedia stream |
CN107122158A (zh) * | 2017-04-14 | 2017-09-01 | 北京小米移动软件有限公司 | 播放信息提示音频的方法及装置、电子设备 |
US20200059776A1 (en) * | 2018-08-14 | 2020-02-20 | Rapidsos, Inc. | Systems & methods for intelligently managing multimedia for emergency response |
CN109525707A (zh) * | 2018-10-15 | 2019-03-26 | 维沃移动通信有限公司 | 一种音频播放方法及移动终端 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022116709A1 (zh) * | 2020-12-04 | 2022-06-09 | Oppo广东移动通信有限公司 | 音频播放方法、装置、头戴显示设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022116709A1 (zh) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020200080A1 (zh) | 一种虚拟形象直播方法、虚拟形象直播装置和电子设备 | |
CN109388367B (zh) | 音效调整方法、装置、电子设备以及存储介质 | |
CN104869467B (zh) | 媒体播放中的信息输出方法、装置和系统 | |
CN112616061B (zh) | 直播互动方法、装置、直播服务器及存储介质 | |
CN109101216B (zh) | 音效调整方法、装置、电子设备以及存储介质 | |
CN109445941B (zh) | 配置处理器性能的方法、装置、终端及存储介质 | |
CN111491208B (zh) | 视频处理方法、装置、电子设备及计算机可读介质 | |
CN112055254B (zh) | 视频播放的方法、装置、终端及存储介质 | |
CN113411537B (zh) | 视频通话方法、装置、终端及存储介质 | |
CN113709560B (zh) | 视频剪辑方法、装置、设备及存储介质 | |
CN111464828A (zh) | 虚拟特效显示方法、装置、终端及存储介质 | |
CN116824016A (zh) | 渲染模型训练、视频的渲染方法、装置、设备和存储介质 | |
CN113535063A (zh) | 直播页面切换方法、视频页面切换方法、电子设备及存储介质 | |
CN113301355B (zh) | 视频传输、直播与播放方法、设备及存储介质 | |
CN113676720B (zh) | 多媒体资源的播放方法、装置、计算机设备及存储介质 | |
CN112433615A (zh) | 音频播放方法、装置、头戴显示设备及存储介质 | |
CN106470353A (zh) | 一种多媒体数据处理方法及其装置、电子设备 | |
US20230283855A1 (en) | On-screen comment display method and apparatus, device, and storage medium | |
WO2022233256A1 (zh) | 一种显示方法与电子设备 | |
CN112702625A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN114143595A (zh) | 一种视频壁纸播放方法、装置、电子设备及可读存储介质 | |
CN112839256A (zh) | 视频播放方法、装置和电子设备 | |
CN117812332B (zh) | 播放处理方法、装置、电子设备及计算机存储介质 | |
CN113923527B (zh) | 云游戏的视频数据解码方法、装置、电子设备及存储介质 | |
CN113259707B (zh) | 虚拟人图像处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |