CN116866472A - 音量控制方法及电子设备 - Google Patents

音量控制方法及电子设备 Download PDF

Info

Publication number
CN116866472A
CN116866472A CN202210310062.7A CN202210310062A CN116866472A CN 116866472 A CN116866472 A CN 116866472A CN 202210310062 A CN202210310062 A CN 202210310062A CN 116866472 A CN116866472 A CN 116866472A
Authority
CN
China
Prior art keywords
volume
audio data
audio
output
output volume
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
Application number
CN202210310062.7A
Other languages
English (en)
Inventor
陈刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210310062.7A priority Critical patent/CN116866472A/zh
Priority to PCT/CN2023/083111 priority patent/WO2023185589A1/zh
Publication of CN116866472A publication Critical patent/CN116866472A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72442User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for playing music files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions

Abstract

本申请实施例提供了一种音量控制方法及电子设备,该方法包括:电子设备获取待播放的第一音频数据。其中,第一音频数据的预设时长内的平均音量为第一音量。在第一音量不满足第一输出音量范围的情况下,电子设备获取与第一音频数据对应的音量参数,并基于音量参数对第一音频数据进行校正,以得到音量在第一输出音量范围内的第二音频数据。电子设备播放第二音频数据。从而实现电子设备播放音频数据时的音量的自动调节,以将音频数据的音量调节到输出音量范围内,从而满足用户听觉体验的需求。

Description

音量控制方法及电子设备
技术领域
本申请实施例涉及终端设备领域,尤其涉及一种音量控制方法及电子设备。
背景技术
随着终端设备技术的发展,终端的媒体业务的应用场景越来越广泛。用户可使用终端设备听音乐、看视频等。但是,在用户使用终端设备播放音频(可以是音乐,也可以是视频中的音频)的过程中,由于不同音频的输入音量可能不同,可能造成音频的输出音量也不相同,则用户需要手动调节音量,以使得音频的输出音量在适宜音量范围内,影响用户使用体验。
发明内容
本申请实施例提供一种音量控制方法及电子设备。在该方法中,电子设备可对音频数据的音量进行自动调节,以使得音频数据的音量保持在适宜音量范围内,有效提升用户听觉体验。
第一方面,本申请实施例提供一种音量控制方法。该方法包括:电子设备获取第一音频数据。接着,电子设备在检测到第一音频数据的第一音量不满足第一输出音量范围的情况下,电子设备基于第一音量与第一输出音量范围,获取与第一音频数据对应的第一音量参数。其中,第一音量为第一音频数据的预设时长内的音频数据的平均音量,第一输出音量范围为预先获取到的。电子设备基于第一音量参数对第一音频数据进行校正,以得到第二音频数据。其中,第二音频数据的平均音量为第二音量,第二音量在第一输出音量范围内。接着,电子设备播放第二音频数据。这样,电子设备可基于音量参数对音频数据进行校正,以使得音频数据的音量调节到输出音量范围内,从而避免不同音频数据在电子设备播放时导致的音量过大或过小的问题,以有效提升用户听觉体验。
示例性的,音频数据可以是音乐,也可以是视频对应的音频。
示例性的,音量不满足输出音量范围可选地为音量大于输出音量范围的最大值,或者是音量小于输出音量范围的最小值。
示例性的,第二音频数据与第一音频数据的音量不同。
示例性的,预设时长可以根据实际需求设置,本申请不做限定。
示例性的,电子设备播放第二音频数据,播放的音量在输出音量范围内。
根据第一方面,方法还包括:在电子设备播放第二音频数据时,接收到调节操作,调节操作用于调节第二音频数据的音量。在调节操作开始至结束过程中,电子设备按照第一周期时长,采集第二音频数据的音量。电子设备基于采集到的第二音频数据的音量,得到第二输出音量范围。这样,电子设备可在用户调节音量时,密集采集音频数据的音量,以根据采集到的音量,更新输出音量范围。也就是说,电子设备在播放音频数据的过程中,可通过检测用户行为,更新音量输出范围,从而使得输出音量范围始终满足用户的听觉习惯。
根据第一方面,或者以上第一方面的任意一种实现方式,电子设备基于采集到的第二音频数据的音量,得到第二输出音量范围,包括:获取调节操作开始至结束过程中采集到的第二音频数据的音量的平均音量;在调节操作用于指示调大第二音频数据的音量的情况下,若采集到的第二音频数据的音量的平均音量大于第一输出音量范围的最小值,第二输出音量范围的最小值为采集到的第二音频数据的音量的平均音量,第二输出音量范围的最大值为第一输出音量范围的最大值;若采集到的第二音频数据的音量的平均音量小于第一输出音量范围的最小值,第二输出音量范围等于第一输出音量范围;或者,在调节操作用于指示调小第二音频数据的音量的情况下,若采集到的第二音频数据的音量的平均音量小于第一输出音量范围的最大值,第二输出音量范围的最大值为采集到的第二音频数据的音量的平均音量,第二输出音量范围的最小值为第一输出音量范围的最小值;若采集到的第二音频数据的音量的平均音量大于第一输出音量范围的最大值,第二输出音量范围等于第一输出音量范围。这样,电子设备可基于不同的调节场景,动态更新输出音量范围,从而使得输出音量范围始终满足用户需求,即满足用户的听觉习惯。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:在电子设备播放第二音频数据时,电子设备按照第二周期时长,采集第二音频数据的音量;第二周期时长大于第一周期时长。电子设备基于采集到的第二音频数据的音量,得到第二输出音量范围。这样,电子设备可通过稀疏采集的方式采集音量,并基于音量动态更新输出音量范围,并且可降低音量采集所造成的功耗。
根据第一方面,或者以上第一方面的任意一种实现方式,若采集到的第二音频数据的音量大于第一输出音量范围的最大值,第二输出音量范围的最小值为第一输出音量范围的最小值,第二输出音量范围的最大值为采集到的第二音频数据的音量;或者,若采集到的第二音频数据的音量小于第一输出音量范围的最小值,第二输出音量范围的最大值为第一输出音量范围的最大值,第二输出音量范围的最小值为采集到的第二音频数据的音量;或者,若采集到的第二音频数据的音量大于或等于第一输出音量范围的最小值,且小于或等于第一输出音量范围的最大值,第二输出音量范围等于第一输出音量范围。这样,电子设备可基于采集到的音量,实现对输出音量范围的动态更新。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:电子设备获取第三音频数据,其中,第三音频数据的预设时长内的音频数据的平均音量为第三音量;电子设备检测到第三音量不满足第二输出音量范围,基于第三音量与第二输出音量范围,获取与第三音频数据对应的第二音量参数;电子设备基于第二音量参数对第三音频数据进行校正,得到第四音频数据;其中,第四音频数据的平均音量为第四音量,第四音量在第二输出音量范围内;电子设备播放第四音频数据。这样,电子设备可基于更新的输出音量范围,获取音频对应的音量参数,并基于音量参数对音频进行校正,从而使得音频始终的音量始终保持在用户习惯的音量范围内,以满足用户听觉体验。
根据第一方面,或者以上第一方面的任意一种实现方式,电子设备检测到第一音量不满足第一输出音量范围,基于第一音量与第一输出音量范围,获取与第一音频数据对应的第一音量参数,包括:若第一音量大于第一输出音量范围的最大值,电子设备基于第一音量与第一输出音量范围的最大值,获取第一音量参数;或者,若第一音量小于第一输出音量范围的最小值,电子设备基于第一音量与第一输出音量范围的最小值,获取第一音量参数。这样,电子设备可基于音量与输出音量范围的不同对应关系,获取音频的音量参数。示例性的,在输入音量较大的情况下,可以通过音量参数调小输出音量,使得输出音量在输出音量范围内。若输入音量较小的情况下,通过音量参数调大输出音量,使得输出音量在输出音量范围内。
根据第一方面,或者以上第一方面的任意一种实现方式,电子设备基于第一音量参数对第一音频数据进行校正,得到第二音频数据,包括:电子设备基于第一音频数据、第一音量参数以及输出音量参数,得到第二音频数据;输出音量参数包括以下至少之一:音轨音量参数、流音量参数、主音量;音轨音量参数用于指示播放第二音频数据的应用的设置音量;流音量参数用于指示第一音频数据对应的音频流的设置音量;主音量用于指示电子设备的设置音量。这样,电子设备可基于电子设备自身的至少一种设置音量(即输出音量参数),得到与音频数据的输入音量对应的输出音量,并基于音量参数对音频的输出音量进行校正,以使得音频的输出音量保持在输出音量范围内。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:电子设备获取第五音频数据,其中,第五音频数据的预设时长内的音频数据的平均音量为第五音量;电子设备检测到第五音量不满足第一输出音量范围,基于第五音量与第一输出音量范围,获取与第五音频数据对应的第三音量参数;电子设备基于第三音量参数对第五音频数据进行校正,得到第六音频数据;其中,第六音频数据的平均音量为第六音量,第六音量在第一输出音量范围内;电子设备向另一电子设备发送第六音频数据;电子设备与另一电子设备通过无线连接进行数据交互;电子设备检测到与另一电子设备的连接断开,电子设备获取第五音频数据中待播放的音频数据,其中,待播放的音频数据的预设时长内的音频数据的平均音量为第七音量;电子设备检测到第七音量不满足第一输出音量范围,基于第七音量与第一输出音量范围,获取与待播放的音频数据对应的第四音量参数;电子设备基于第四音量参数对待播放的音频数据进行校正,得到第七音频数据;其中,第七音频数据的平均音量为第八音量,第八音量在第一输出音量范围内;电子设备播放第七音频数据。这样,多设备协同播放音频数据的场景中,各电子设备可基于电子设备的输出音量范围,获取到与音频数据对应的音量参数。在电子设备停止与其它电子设备协同的情况下,电子设备仍然可以基于电子设备的输出音量范围,获取音频数据的音量参数,并通过音量参数对音频数据进行校正,使得音频数据的音量保持在电子设备的输出音量范围内。从而防止多设备协同场景调节设备音量后,导致多设备切换到单设备后,单设备播放的音频的音量过大或过小的问题。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:电子设备获取第八音频数据,其中,第八音频数据的预设时长内的音频数据的平均音量为第九音量;第八音频数据与第一音频数据不同;第九音量与第一音量不同;电子设备检测到第九音量不满足第一输出音量范围,基于第九音量与第一输出音量范围,获取与第八音频数据对应的第五音量参数;第五音量参数与第一音量参数不同;电子设备基于第五音量参数对第八音频数据进行校正,得到第九音频数据;其中,第九音频数据的平均音量为第十音量,第十音量在第一输出音量范围内;电子设备播放第十音频数据。这样,电子设备在音源切换的场景下,可以根据不同的音源获取对应的音量参数,以使得不同的音频数据在电子设备中播放时,电子设备能够通过音量参数自动调节音频数据的音量,从而使得用户无需手动调节,即可使得音频数据的播放音量保持在用户习惯的音量范围内,从而有效提升用户使用体验。
根据第一方面,或者以上第一方面的任意一种实现方式,电子设备获取第一音频数据,包括:电子设备从目标应用获取第一音频数据;或者,电子设备接收第二电子设备发送的第一音频数据。这样,电子设备可对本设备中的应用的音频数据实现音量的自动调节。电子设备还可以对其它电子设备发送的音频数据进行自动调节,以使得电子设备播放的音频保持在本电子设备的输出音量范围内。
根据第一方面,或者以上第一方面的任意一种实现方式,电子设备播放第二音频数据,包括:电子设备通过扬声器播放第二音频数据;或者,电子设备通过与电子设备连接的耳机播放第二音频数据。这样,本申请实施例可应用于本机播放场景以及耳机播放场景。
第二方面,本申请实施例提供一种电子设备。该电子设备包括:一个或多个处理器、存储器;以及一个或多个计算机程序,其中一个或多个计算机程序存储在存储器上,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:获取第一音频数据;检测到第一音频数据的第一音量不满足第一输出音量范围,基于第一音量与第一输出音量范围,获取与第一音频数据对应的第一音量参数;其中,第一音量为第一音频数据的预设时长内的音频数据的平均音量,第一输出音量范围为预先获取到的;基于第一音量参数对第一音频数据进行校正,得到第二音频数据;其中,第二音频数据的平均音量为第二音量,第二音量在第一输出音量范围内;播放第二音频数据。
根据第二方面,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:在电子设备播放第二音频数据时,接收到调节操作,调节操作用于调节第二音频数据的音量;在调节操作开始至结束过程中,按照第一周期时长,采集第二音频数据的音量;基于采集到的第二音频数据的音量,得到第二输出音量范围。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:获取调节操作开始至结束过程中采集到的第二音频数据的音量的平均音量;在调节操作用于指示调大第二音频数据的音量的情况下,若采集到的第二音频数据的音量的平均音量大于第一输出音量范围的最小值,第二输出音量范围的最小值为采集到的第二音频数据的音量的平均音量,第二输出音量范围的最大值为第一输出音量范围的最大值;若采集到的第二音频数据的音量的平均音量小于第一输出音量范围的最小值,第二输出音量范围等于第一输出音量范围;或者,在调节操作用于指示调小第二音频数据的音量的情况下,若采集到的第二音频数据的音量的平均音量小于第一输出音量范围的最大值,第二输出音量范围的最大值为采集到的第二音频数据的音量的平均音量,第二输出音量范围的最小值为第一输出音量范围的最小值;若采集到的第二音频数据的音量的平均音量大于第一输出音量范围的最大值,第二输出音量范围等于第一输出音量范围。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:在电子设备播放第二音频数据时,按照第二周期时长,采集第二音频数据的音量;第二周期时长大于第一周期时长;基于采集到的第二音频数据的音量,得到第二输出音量范围。
根据第二方面,或者以上第二方面的任意一种实现方式,若采集到的第二音频数据的音量大于第一输出音量范围的最大值,第二输出音量范围的最小值为第一输出音量范围的最小值,第二输出音量范围的最大值为采集到的第二音频数据的音量;或者,若采集到的第二音频数据的音量小于第一输出音量范围的最小值,第二输出音量范围的最大值为第一输出音量范围的最大值,第二输出音量范围的最小值为采集到的第二音频数据的音量;或者,若采集到的第二音频数据的音量大于或等于第一输出音量范围的最小值,且小于或等于第一输出音量范围的最大值,第二输出音量范围等于第一输出音量范围。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:获取第三音频数据,其中,第三音频数据的预设时长内的音频数据的平均音量为第三音量;检测到第三音量不满足第二输出音量范围,基于第三音量与第二输出音量范围,获取与第三音频数据对应的第二音量参数;基于第二音量参数对第三音频数据进行校正,得到第四音频数据;其中,第四音频数据的平均音量为第四音量,第四音量在第二输出音量范围内;播放第四音频数据。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:若第一音量大于第一输出音量范围的最大值,基于第一音量与第一输出音量范围的最大值,获取第一音量参数;或者,若第一音量小于第一输出音量范围的最小值,基于第一音量与第一输出音量范围的最小值,获取第一音量参数。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:基于第一音频数据、第一音量参数以及输出音量参数,得到第二音频数据;输出音量参数包括以下至少之一:音轨音量参数、流音量参数、主音量;音轨音量参数用于指示播放第二音频数据的应用的设置音量;流音量参数用于指示第一音频数据对应的音频流的设置音量;主音量用于指示电子设备的设置音量。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:获取第五音频数据,其中,第五音频数据的预设时长内的音频数据的平均音量为第五音量;检测到第五音量不满足第一输出音量范围,基于第五音量与第一输出音量范围,获取与第五音频数据对应的第三音量参数;基于第三音量参数对第五音频数据进行校正,得到第六音频数据;其中,第六音频数据的平均音量为第六音量,第六音量在第一输出音量范围内;向另一电子设备发送第六音频数据;电子设备与另一电子设备通过无线连接进行数据交互;检测到与另一电子设备的连接断开,电子设备获取第五音频数据中待播放的音频数据,其中,待播放的音频数据的预设时长内的音频数据的平均音量为第七音量;检测到第七音量不满足第一输出音量范围,基于第七音量与第一输出音量范围,获取与待播放的音频数据对应的第四音量参数;基于第四音量参数对待播放的音频数据进行校正,得到第七音频数据;其中,第七音频数据的平均音量为第八音量,第八音量在第一输出音量范围内;播放第七音频数据。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:获取第八音频数据,其中,第八音频数据的预设时长内的音频数据的平均音量为第九音量;第八音频数据与第一音频数据不同;第九音量与第一音量不同;检测到第九音量不满足第一输出音量范围,基于第九音量与第一输出音量范围,获取与第八音频数据对应的第五音量参数;第五音量参数与第一音量参数不同;基于第五音量参数对第八音频数据进行校正,得到第九音频数据;其中,第九音频数据的平均音量为第十音量,第十音量在第一输出音量范围内;播放第十音频数据。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:从目标应用获取第一音频数据;或者,接收第二电子设备发送的第一音频数据。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:通过扬声器播放第二音频数据;或者,通过与电子设备连接的耳机播放第二音频数据。
第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,本申请实施例提供一种音频处理方法。该方法包括:第一电子设备获取第一子音频数据与第一方位信息,第一方位信息用于指示第一电子设备与耳机之间的相对位置;第一电子设备与耳机之间通过无线连接进行数据交互;第一电子设备接收第二电子设备发送的第二子音频数据和第二方位信息,第二方位信息用于指示第二电子设备与耳机之间的相对位置;第一电子设备基于第一方位信息与第二方位信息,对第一子音频数据与第二子音频数据进行混音,得到第一音频数据;第一电子设备向耳机发送第一音频数据,以通过耳机播放第一音频数据。这样,电子设备可通过方位信息,对多个电子设备的音频数据进行混音,以实现耳机的立体声播放,使得用户在使用耳机时,能够听到多设备音频的立体声效果。
示例性的,无线连接可以是基于蓝牙协议维护的,也可以是基于Wi-Fi协议维护的。
根据第三方面,第一电子设备基于第一方位信息与第二方位信息,对第一子音频数据与第二子音频数据进行混音,包括:第一电子设备基于第一方位信息,获取第一子音频数据对应于耳机的第一声道的第三子音频数据,以及第一子音频数据对应于耳机的第二声道的第四子音频数据;第三子音频数据与第四子音频数据之间的相位、音色、声级和/或音频起始位置不同;第一电子设备基于第二方位信息,获取第二子音频数据对应于耳机的第一声道的第五子音频数据,以及第一子音频数据对应于耳机的第二声道的第六子音频数据;第五子音频数据与第六子音频数据之间的相位、音色、声级和/或音频起始位置不同;第一电子设备基于第三子音频数据与第五子音频数据,得到第七子音频数据;第一电子设备基于第四子音频数据与第六子音频数据,得到第八子音频数据;第一音频数据包括第七子音频数据和第八子音频数据;第一电子设备向耳机发送第七子音频数据与第八子音频数据,通过耳机的第一声道播放第七子音频数据,通过耳机的第二声道播放第八子音频数据。这样,电子设备可以基于方位信息,以确定耳机的双声道的音频的相位差、音色差、声级差以及时间差,从而实现耳机双声道的立体声音效。
示例性的,音频起始位置即为音频播放在耳机单声道中的播放时间。
根据第三方面,或者以上第三方面的任意一种实现方式,第一方位信息包括第一电子设备与耳机之间的距离信息和方向信息,第二方位信息包括第二电子设备与耳机之间的距离信息和方向信息。这样,电子设备可基于各设备与耳机之间的距离和方向,调节混音音频中各电子设备的音频,以实现立体声效果。
根据第三方面,或者以上第三方面的任意一种实现方式,第一电子设备与耳机之间的距离小于第二电子设备与耳机之间的距离。示例性的,第一电子设备为本申请实施例中的主设备,第二电子设备为本申请实施例中的从设备。主设备与耳机之间的通信质量优于从设备与耳机之间的通信质量。
根据第三方面,或者以上第三方面的任意一种实现方式,方法还包括:第一电子设备获取第三方位信息,第三方位信息用于指示第一电子设备与耳机之间的相对位置;第三方位信息与第一方位信息不同;第一电子设备接收第二电子设备发送的第四方位信息,第四方位信息用于指示第二电子设备与耳机之间的相对位置;第四方位信息与第二方位信息不同;第一电子设备基于第三方位信息与第四方位信息,对第一子音频数据与第二子音频数据进行混音,得到第二音频数据;第一电子设备向耳机发送第二音频数据,以通过耳机播放第二音频数据。这样,电子设备还可以基于各电子设备与耳机之间的实时位置,调整混音效果,以实现更加贴近实际的立体声效果。
根据第三方面,或者以上第三方面的任意一种实现方式,第一电子设备向耳机发送第一音频数据之前,还包括:电子设备检测到第一音量不满足第一输出音量范围,基于第一音量与第一输出音量范围,获取与第一音频数据对应的第一音量参数;第一输出音量范围为预先获取到的;第一音量为第一音频数据的预设时长内的音频数据的平均音量;
电子设备基于第一音量参数对第一音频数据进行校正,得到矫正后的第一音频数据;其中,矫正后的第一音频数据的平均音量为第二音量,第二音量在第一输出音量范围内。这样,电子设备可以对混音音频进行校正,以使得混音音频的输出音量保持在输出音量范围内,从而实现对音频数据的音量的自动调节,以有效提升用户使用体验。
根据第三方面,或者以上第三方面的任意一种实现方式,方法还包括:第一电子设备接收第一操作,第一操作用于指示将第一电子设备与第二电子设备的混音模式切换为单设备模式;第一电子设备响应于第一操作,向第二电子设备发送第一指示信息,第一指示信息用于指示第二电子设备停止发送第二子音频数据;第一电子设备向耳机发送第一子音频数据,以通过耳机播放第一子音频数据。这样,电子设备可在混音模式下,实现混音模式与单设备播放模式的切换。
示例性的,在单设备播放场景下,电子设备同样可对待播放的音频数据进行校正,以使得音频数据的音量保持在输出音量范围内。
第四方面,本申请实施例提供一种电子设备。该电子设备包括:一个或多个处理器、存储器;以及一个或多个计算机程序,其中一个或多个计算机程序存储在存储器上,当计算机程序被一个或多个处理器执行时,使得电子设备执行第三方面或第三方面的任意可能的实现方式中的方法的指令。
第五方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第六方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第三方面或第三方面的任意可能的实现方式中的方法的指令。
第七方面,本申请提供了一种计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第八方面,本申请提供了一种计算机程序,该计算机程序包括用于执行第三方面或第三方面的任意可能的实现方式中的方法的指令。
第九方面,本申请提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理电路通过内部连接通路互相通信,该处理电路执行第一方面或第一方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第十方面,本申请提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理电路通过内部连接通路互相通信,该处理电路执行第三方面或第三方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
附图说明
图1示出了电子设备的硬件结构示意图;
图2示出了电子设备的软件结构示意图;
图3为示例性示出的模块交互示意图;
图4为示例性示出的用户界面示意图;
图5为示例性示出的输出音量调节示意图;
图6为示例性示出的用户界面示意图;
图7为示例性示出的音量控制方法示意图;
图8为示例性示出的输出音量范围获取方式示意图;
图9a~图9b为示例性示出的音量控制方法的模块交互示意图;
图9c为示例性示出的输出音量调节示意图;
图10为示例性示出的多设备协同场景;
图11a~图11b为示例性示出的音量控制方法的模块交互示意图;
图12a~图12b为示例性示出的输出音量调节示意图;
图13a~图13b为示例性示出的混音场景的原理示意图;
图14为示例性示出的应用场景示意图;
图15为示例性示出的投票选举示意图;
图16为示例性示出的应用场景示意图;
图17为示例性示出的用户界面示意图;
图18为示例性示出的混音场景的模块交互示意图;
图19为示例性示出的混音流程示意图;
图20为示例性示出的混音场景的音频数据处理示意图;
图21a为示例性示出的混音场景的音频数据处理示意图;
图21b为示例性示出的混音场景的效果示意图;
图22为示例性示出的混音场景的音频数据处理示意图;
图23为示例性示出的混音场景的音频数据处理示意图;
图24为示例性示出的切换模式场景下的控制方法流程示意图;
图25为示例性示出的切换模式场景下的控制方法流程示意图;
图26为示例性示出的切换模式场景下的控制方法流程示意图;
图27为示例性示出的淡入淡出处理示意图;
图28为示例性示出的装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
图1示出了电子设备100的结构示意图。应该理解的是,图1所示电子设备100仅是电子设备的一个范例,并且电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图1中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。需要说明的是,在本申请实施例中以电子设备为手机为例进行说明。在其他实施例中,电子设备还可以是平板、音箱、可穿戴设备、智能家居设备等设备,本申请不做限定。
电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器 170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达 191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation, FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system, BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode, OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled, MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100 可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100 的软件结构。
图2是本申请实施例的电子设备100的软件结构框图。
电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,媒体管理器,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
媒体管理器,也可以称为媒体服务,用于管理音频数据和图像数据,例如控制音频数据和图像数据的数据流向以及将音频流和图像流写入MP4文件等处理。在本申请实施例中,媒体管理器可用于调整音频数据的输出音量,以及用于多设备音频输出场景的音频数据混音等。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,Wi-Fi驱动,蓝牙驱动,摄像头驱动,音频驱动,传感器驱动等。
可以理解的是,图2示出的部件并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
结合图2,图3为示例性示出的模块交互示意图。请参照图3,以手机播放视频应用的音频A为例进行说明。示例性的,视频应用向媒体管理器输出音频A(也可以称为音频数据A)的音频数据。在本申请实施例中,媒体管理器接收到其它应用输入的音频数据,可以称为输入音频数据(本申请表示为data_in)。需要说明的是,音频数据的大小,也可以理解为音频数据对应的振幅,即为音频的音量。因此,在本申请实施例中,data_in 可以用于表示输入音频数据,也可以用于表示音频的输入音量。
媒体管理器可基于音频A的输入音量,获取音频A的输出音量(也可以称为音频输出音量)。需要说明的是,媒体管理器向其它模块或应用输出的音频数据,可以称为输出音频数据,本申请实施例中表示为data_out。与输入音频数据类似,输出音频数据的振幅,即为输出音频的音量。因此,本申请实施例中,data_out可以用于表示输出音频数据,也可以用于表示音频的输出音量。进一步需要说明的是,本申请实施例中的方案主要是对音量的控制进行描述,因此,在本申请实施例中,data_in主要用于表示音频的输入音量, data_out主要用于表示音频的输出音量,下文中不再重复说明。
示例性的,媒体管理器可基于公式(1),获取音频A的输出音量(data_out):
data_out=data_in*master_volume*stream_volume*track_volume (1)
其中,data_in即为音频A的输入音量。例如视频应用生成的音频数据所对应的音量即为输入音量。
track_volume(音轨音量)表示应用的音量。例如,音乐应用中的音量调节选项可用于调节音乐应用正在播放的音乐的输出音量,但是该音量不影响其它媒体的音量,仅对音乐应用所播放的音频有效。
stream_volume(流音量)表示某一stream(流)的音量。示例性的,以Android系统为例,Android系统包括10种stream,例如包括但不限于:媒体流、通话流等。举例说明,如图4所示,手机的设置选项中的声音和振动选项界面401中包括音量选项402。音量选项402中包括但不限于:“来电、信息、通知”选项4021、“闹钟”选项4022、“音乐、视频、游戏”选项4023、“通话”选项4024以及“智慧语音”选项4025等。其中,“通话”选项4024对应通话stream,用于调整通话的输出音量。“闹钟”选项4022对应闹钟stream,用于调整闹钟的输出音量。示例性的,“来电、信息、通知”选项4021对应来电、信息、通知stream voloum alias(流音量别名)。stream voloum alias用于设置同一组stream的音量。例如通过调节“来电、信息、通知”选项4021的滑动条,以设置“来电、信息、通知” stream voloum alias的音量,可以理解为用于设置来电stream的音量(即来电提示音量)、信息stream的音量(即信息提示音量)以及通知stream的音量(即通知提示音量)。也就是说,来电提示音量、信息提示音量、通知提示音量度会相应调节,但是其它的stream,例如闹钟、通话音量不会被调节。再例如“音乐、视频、游戏”选项4023对应“音乐、视频、游戏”stream voloum alias,也可以称为媒体stream voloum alias,通过调节“音乐、视频、游戏”选项4023的滑动条,可设置媒体,即“音乐、视频、游戏”stream voloum alias 中的各stream(包括音乐stream、视频stream、游戏stream)的音量。
master_volume(主音量)用于设置所有的stream_volume和track_volume。该数值可以写入音响设备对应的设备文件(即声卡文件)中,以控制所有对象的音量。该数值也可以不写入声卡文件中,而是作为一个乘数因子,以影响所有对象的音量。
由公式(1)可知,影响输出音量的因子包括但不限于以下至少之一:输入音量、流音量、音轨音量、主音量。在本申请实施例中,除输入音量以外的因子(包括流音量、音轨音量、主音量)也可以称为输出音量参数,用户可通过调节输出音量参数中的任一参数,以调节输出音量。
仍参照图3,示例性的,媒体管理器将音频A的data_out(即音频A的输出音频数据)输出至音频驱动,音频驱动可通过播放设备(例如扬声器)播放音频A,且播放的音量即为data_out对应的音量,也可以理解为音频A的音频数据所对应的振幅。需要说明的是,媒体管理器可对音频A进行相应的编码等处理,具体处理方式可参照已有技术实施例,本申请不做详细说明,下文中不再重复说明。
请参照图5,以手机播放视频应用的音频A为例,视频应用响应于用户操作,将音频A切换为音频B。具体的,视频应用将音频B的输入音频数据(表示为data_in(B))输出给媒体管理器,媒体管理器基于公式(1),获取音频B的输出音频数据,也可以理解为获取音频B的输出音量(表示为data_out(B))。其中,在用户未调节输出音量参数(即流音量、音轨音量、主音量)之前,音频B的输出音量取决于音频B的输入音量的大小。假设音频B的输入音量远小于音频A的输入音量(data_in(A)),即data_in(B)<data_in(A),则在输出音量参数(即虚线框中的参数)相同的情况下,音频B的输出音量远小于音频 A的输出音量。用户可通过调节输出音量参数,以调大音频B的输出音量。例如,用户可通过音量键以调节媒体streamvoloum alias(包括音乐stream、视频stream、游戏stream) 的音量,以调大音频B的输出音量。举例说明,如图6所示,用户点击音量键,视频应用界面601的界面显示音量调节框602,音量调节框602中包括音量条,用于指示媒体音量大小。需要说明的是,本申请实施例中以音量键设置为调节媒体音量为例进行说明,在其他实施例中,也可以通过其它任一方式调节音量,本申请不做限定。
仍参照图5,示例性的,媒体管理器响应于接收到的用户操作,将输出音量参数中的 stream_volume的值调大,使得音频B的输出音量,即data_out(B)增大。当视频应用响应于接收到的用户操作切换回音频A,相应的,视频应用向媒体管理器输出音频A的音频数据(即输入音频数据)。媒体管理器基于当前的,即调节后的输出音量参数(其中 stream_volume的值已调大)得到音频A的输出音量。则,音频A的输出音量将会变得非常大,该现象可称为爆音,其将影响用户使用体验。
为解决音频播放场景中的音量控制问题,本申请实施例中提供一种音量控制方法,可将音频的输出音量控制在预设的范围内,并且该预设范围是根据用户需求设置的,从而能够解决音频切换时的爆音问题,有效提升用户使用体验。
图7为示例性示出的音量控制方法示意图,请参照图7,具体包括:
S701,手机订阅输出音量。
示例性的,手机在播放或者是向其它设备输出音频数据的场景下,手机可订阅输出音量,以获取输出音量。如上文所述,本申请实施例中的输出音量表示为“data_out”,手机中的媒体管理器可基于应用输入的音频(即输入音频数据)对应的输入音量,获取输出音频数据对应的输出音量。
媒体管理器可将音频数据输出给音频驱动,以通过扬声器等设备播放。媒体管理器也可以将音频数据输出Wi-Fi驱动或蓝牙驱动等,以传输给其它设备进行播放。也就是说,本申请实施例中的输出音量可以理解为手机播放音频时的音量,或者是手机向其它设备输出音频数据所对应的输出音量。
示例性的,手机可基于公式(2),获取输出音量:
data_out=data_in*master_volume*stream_volume*track_volume*volume_coefficient (2)
volume_coefficient(音量参数)用于影响输出音量,本申请实施例中通过设置适合的音量参数,以将输出音量控制在用户所需的范围内。可选地,在本申请实施例中,音量参数可由媒体管理器获取并保存,例如可以保存在内存中(也可以是其他位置,本申请不做限定),音频参数的具体获取方式将在下面的实施例中进行详细说明。可选地,媒体管理器可设置有默认音量参数,例如音量参数可以是0.5。该默认音量参数可用于媒体管理器在未基于下文所述的方式获取到音量参数之前,对音频进行处理。例如,在手机首次开机,并第一次播放音频时,媒体管理器可基于默认音量参数获取输出音量,以避免第一次播放出现爆音。可选地,若媒体控制器未设置默认音量参数,媒体控制器在第一次播放音频时,可基于公式(1)获取输出音量,本申请不做限定。
示例性的,由公式(2)可知,本申请实施例中,影响输出音量的因子包括但不限于以下至少之一:输入音量、流音量、音轨音量、主音量以及音量参数。在本申请实施例中,如上文所述,流音量(stream_volume)、音轨音量(track_volume)、主音量 (master_volume)可以称为输出音量参数,用户可通过调节输出音量参数中的任一参数,以调节输出音量。
在本申请实施例中,手机订阅输出音量,可以以预设的采样周期对输出音量进行采样,以获取输出音量。可选地,手机可设置两类采样周期,包括第一采样周期和第二采样周期,其中,第一采样周期也可以称为稀疏采样周期,第二采样周期也可以称为密集采样周期。第一采样周期的采样周期时长大于第二采样周期的周期时长。举例说明,第一采样周期的周期时长可以是秒级,第二采样周期的周期时长可以是毫秒级。
举例说明,以手机播放音频数据的场景为例,手机在播放音频数据时,手机可对用户行为进行检测,以检测是否发生调节输出音量的行为,也可以理解为检测是否发生调节上文所述的输出音量参数的行为。
一个示例中,当手机播放音频数据,且未检测到用户调节输出音量的情况下,手机以第一采样周期对输出音量进行采集。另一个示例中,当手机播放音频数据,且检测到用户调节输出音量的情况下,手机以第二采样周期对输出音量进行采集。
示例性的,上文所述的用户调节输出音量可以包括但不限于以下至少之一:点击音量键;点击或拖动设置界面中的各音量选项(例如图4中的各滑动条);点击遥控器的音量键;通过语音指令或手势调节音量等,本申请不做限定。
需要说明的是,手机中可设置音量控制智能调节选项,用户可通过该音量控制职能调节选项以指示手机在播放音频的过程中,执行本申请实施例中的音量控制方案。可选地,音量控制职能调节选项可以设置于下拉菜单中、控制中心中、负一屏、声音和振动设置界面中的至少一个,本申请不做限定。
S702,手机获取并保存输出音量范围。
在本申请实施例中,手机以第一采样周期采集输出音量的过程中,手机可获取输出音量范围。输出音量范围包括输出音量最大值和输出音量最小值,手机可基于公式(3)和公式(4)分别获取输出音量最大值(本申请表示为data_out_max)和输出音量最小值 (本申请表示为data_out_min),以获取输出音量范围。
data_out_max=Math.max(data_out_max,data_out) (3)
data_out_min=Math.min(data_out_min,data_out) (4)
也就是说,手机采集到输出音量后,将输出音量与已经保存的输出音量范围的最大值和最小值分别进行比较。
一个示例中,若采集到的输出音量大于已保存的输出音量范围的最大值,则采集到的输出音量即为新的输出音量范围的最大值,输出音量范围的最小值保持不变。即,手机将已经保存的输出音量范围进行更新,更新后的输出音量范围的最大值即为采集到的输出音量,最小值仍为前一次保存的输出音量范围的最小值。
另一个示例中,若采集到的输出音量小于已保存的输出音量范围的最大值,且大于已保存的输出音量范围的最小值,则更新的输出音量范围与前一次输出音量范围相同,即,更新的输出音量范围的最大值仍为前一次输出音量范围的最大值,更新的输出音量范围的最小值仍为前一次输出音量范围的最小值。
又一个示例中,若采集到的输出音量小于已保存的输出音量范围的最小值,则采集到的输出音量即为新的输出音量范围的最小值,输出音量范围的最大值保持不变。即,手机将已经保存的输出音量范围进行更新,更新后的输出音量范围的最大值即前一次保存的输出音量范围的最大值,更新后的输出音量范围的最小值即为采集到的输出音量。
可以理解为,在本申请实施例中,手机在每次稀疏采集(即按照第一采样周期采集) 后,根据采集到的输出音量更新输出音量范围,更新后的输出音量范围与前一次的输出音量范围可以相同,也可以不同。
在本申请实施例中,手机以第二采样周期采集输出音量的过程中,手机同样可获取输出音量范围。一个示例中,若手机(具体为媒体管理器)检测到用户调大输出音量,例如用户点击音量键,以调大媒体流参数(即stream_volume),则在用户调节音量的过程中,手机(具体为媒体管理器,下文中不再重复说明)以第二采样周期采集输出音量,并基于公式(5)和公式(6)获取输出音量范围的输出音量最小值(本申请表示为 data_out_min)。其中,输出音量范围的输出音量最大值仍为前一次获取到的输出音量范围的最大值。
data_out=Math.average(data_out1,data_out2,…) (5)
data_out_min=Math.max(data_out_min,data_out) (6)
请参照公式(5),如上文所述,手机在检测到用户调节输出音量(即调节上文所述的输出音量参数)时,在用户调大输出音量的过程中(即从检测到用户开始调节音量至调节结束),手机以第二采样周期采集输出音量。手机从用户开始调节音量至调节结束,以第二采样周期采集到n个输出音量,包括data_out1,data_out2……,手机基于采集到的 n个输出音量,获取平均输出音量。接着,手机基于公式(6),获取输出音量范围的最小值。具体的,手机将前一次保存的输出音量范围的最小值与本次获取到的平均输出音量进行比较。一个示例中,若平均输出音量大于前一次保存的输出音量范围的最小值,则平均输出音量作为新的输出音量范围的最小值,最大值仍为前一次获取到的输出音量范围的最大值。另一个示例中,若平均输出音量小于前一次保存的输出音量范围的最小值,则前一次保存的输出音量范围的最小值作为新的输出音量范围的最小值,最大值仍为前一次获取到的输出音量范围的最大值,也就是说,新的输出音量范围与前一次保存的输出音量范围是一致的。
另一个示例中,若手机(具体为媒体管理器)检测到用户调小输出音量,例如用户点击音量键,以调小媒体流参数(即stream_volume),则在用户调节音量的过程中,手机以第二采样周期采集输出音量,并基于公式(7)和公式(8)获取输出音量范围的输出音量最大值(本申请表示为data_out_max)。其中,输出音量范围的输出音量最小值仍为前一次获取到的输出音量范围的最小值。
data_out=Math.average(data_out1,data_out2,…) (7)
data_out_max=Math.min(data_out_max,data_out) (8)
请参照公式(7),手机在检测到用户调大输出音量的过程中(即从检测到用户开始调节音量至调节结束),手机以第二采样周期采集输出音量。手机从用户开始调节音量至调节结束,以第二采样周期采集到n个输出音量,包括data_out1,data_out2……,手机基于采集到的n个输出音量,获取平均输出音量。接着,手机基于公式(8),获取输出音量范围的最大值。具体的,手机将前一次保存的输出音量范围的最大值与本次获取到的平均输出音量进行比较。一个示例中,若平均输出音量小于前一次保存的输出音量范围的最大值,则平均输出音量作为新的输出音量范围的最大值,最小值仍为前一次获取到的输出音量范围的最小值。另一个示例中,若平均输出音量大于前一次保存的输出音量范围的最大值,则前一次保存的输出音量范围的最大值作为新的输出音量范围的最大值,最小值仍为前一次获取到的输出音量范围的最小值。也就是说,新的输出音量范围与前一次保存的输出音量范围是一致的。
举例说明,请参照图8,在手机播放音频的过程中,媒体传感器采集媒体传感器生成的输出音量,在t1时刻,假设媒体传感器当前未保存有输出音量范围,即,媒体传感器可能是第一次执行输出音量范围的获取步骤。示例性的,媒体传感器以稀疏采集周期进行采集,采集到输出音量为data_out1,该数值可以看做是最小值,也可以看做是最大值。在t2时刻,媒体传感器检测到到达采集周期,媒体传感器采集输出音量,例如,采集到的输出音量为data_out2。媒体传感器将data_out2与data_out1进行比较,假设data_out2 大于data_out1,则媒体传感器确定输出音量范围的最大值为data_out2,最小值为data_out1,即(data_out1,data_out2)。示例性的,在t3时刻,媒体传感器检测到到达采集周期,媒体传感器采集输出音量。例如,采集到的输出音量为data_out3。媒体传感器基于公式 (3)和公式(4),确定data_out3大于当前保存的输出音量范围的最大值(data_out2),媒体传感器更新输出音量范围,更新后的输出音量范围的最大值为data_out3,最小值仍为data_out1,即(data_out1,data_out3)。在t4时刻,媒体管理器检测到用户调小输出音量,则媒体管理器从t4时刻至用户调节结束(例如t7时刻)之间,以密集采集周期进行采集,并将采集到的多个输出音量取平均值,例如得到的平均值为data_out4。媒体管理器基于公式(7)和公式(8),获取输出音量范围的最大值。假设data_out4大于当前保存的输出音量范围的最大值(data_out3),则更新后的输出音量范围的最大值仍为 data_out3,即更新后的输出音量范围为(data_out1,data_out3)。需要说明的是图8中的采集间隔以及音量仅为示意性举例,本申请不做限定。进一步需要说明的是,图8中未示出,示例性的,在密集采集后(即t7时刻之后),媒体管理器将以稀疏采集周期继续采集,并更新输出音量范围。
示例性的,媒体管理器每次获取到新的输出音量范围后,保存新的输出音量范围。可选地,媒体管理器可以将前一次的输出音量范围覆盖,以节约内存占用,本申请不做限定。
S703,手机检测到音频变更,基于新的音频的输入音量与输出音量范围,获取音量参数。
示例性的,本申请实施例中音频变更可以包括但不限于:音源文件切换、音源设备切换以及输出设备切换等。其中,音源文件切换可选地为媒体管理器接收到的音频文件切换。例如,手机正在播放歌曲A,相应的,音乐应用向媒体管理器输出的音频为歌曲A 的音频数据。手机响应于用户操作切换播放歌曲B,相应的,音乐应用向媒体管理器输出的音频切换为音频B的音频数据,即为音源切换。示例性的,音源设备切换可选地为多设备场景下的音频投放业务时的音源设备的切换。例如,手机通过无线连接(可以是Wi- Fi连接,也可以是蓝牙连接,本申请不做限定,下文中不再重复说明)向车载设备投放歌曲A,车载设备接收并播放歌曲A。用户使用平板连接车载设备,并使用平板A向车载设备投放歌曲A,则对于车载设备而言,其音源设备从手机切换为平板。示例性的,输出设备切换可选地为多设备场景下的音频投放业务时的输出设备的切换。例如,手机通过无线连接向车载设备投放歌曲A,手机响应于接收到的用户操作,通过与平板之间的无线连接向平板投放歌曲A。相应的,对于手机而言,其输出设备从车载设备切换为平板设备,即为输出设备切换。
在本申请实施例中,手机检测到上述任一情况,即确定音频变更后,手机执行音量参数获取步骤。也就是说,在音频变更后,手机基于下文所述的方法,获取与该音频对应的音量参数。在该音频变更之前,手机无需再获取该音频的音量参数。
在本申请实施例中,手机(具体为媒体管理器)在检测到音频变更后,获取变更后的音频的输入音量(概念可参照上文,此处不再赘述)。手机可基于输入音量与输出音量范围的关系,获取对应的音量参数。其中,音量参数可用于调整音频的输出音量,本申请实施例中可通过针对不同的音频(即不同的输入音量)设置对应的音量参数,以将音频的输出音量调整至输出音量范围内。具体方法如下:
1)手机获取音频的平均输入音量。
示例性的,仍以手机播放音频场景为例,手机(具体为媒体管理器)检测到音频变更后,在播放变更后的音频之前,可获取该音频(即变更后的音频)的预设长度的音频数据对应的输入音量。预设长度例如可以是5秒,可基于实际需求设置,本申请不做限定。手机可对获取到的预设长度的音频数据的输入音量取平均值,以得到平均输入音量。
2)手机基于音频的平均输入音量与输出音量范围的关系,获取音频的音量参数。
一个示例中,若手机检测到音频的平均输入音量超出输出音量范围,且大于输出音量范围的最大值,则手机基于公式(9),获取该音频的音量参数(本申请中表示为volume_coefficient,概念可参照上文,此处不再赘述):
/>
其中,data_out_max即为上文所述的输出音量范围的最大值。data_in_average即为获取到的音频的平均输入音量。G_max为系统常量,可根据实际需求设置,例如在本申请实施例中,G_max为0.5,本申请不做限定。
另一个示例中,若手机检测音频的平均输入音量超出输出音量范围,且小于输出音量范围的最小值,则手机基于公式(10),获取该音频的音量参数:
其中,data_out_min即为上文所述的输出音量范围的最小值。data_in_average即为获取到的音频的平均输入音量。G_min为系统常量,可根据实际需求设置,例如在本申请实施例中,G_min为0.5,本申请不做限定。
又一个示例中,若手机检测音频的平均输入音量未超出输出音量范围,即音频的平均输入音量大于或等于输出音量范围的最小值,且小于或等于输出音量范围的最大值,则该音频的音量参数等于1。
S704,手机基于音量参数、输入音量和输出音量参数,得到新的音频的输出音量。
示例性的,手机获取到变更后的音频(即新的音频)的音频参数后,可基于公式(2)获取变更后的输出音量。具体描述可参照公式(2)的相关描述,此处不再赘述。需要说明的是,本申请实施例中所述的“新的音频”在音源变更场景中,即为与切换之前的音频不相同的音频数据。在音源设备切换与输出设备切换场景中,“新的音频”可以是与切换之前不相同的音频数据,也可能是与切换之前相同的音频数据,对于媒体管理器而言,均认为是新的音频。举例说明,在输出设备切换场景中,手机检测到输出设备切换。输出设备切换后,音乐应用可能会重新向媒体管理器输出音频数据,该音频数据可能与切换之前的音频数据相同或不同,本申请不做限定。
手机获取到音频的输出音量后,可将音频与音频的输出音量输出给音频驱动进行播放,也可以将音频与音频的输出音量通过通信模块输出至其他设备进行播放。
为使本领域人员更好的理解本申请实施例中的音频控制方法,下面以具体实施例对图7中的音频控制方法进行详细说明。
在本场景中,以手机播放音频的场景为例进行说明。请参照图9a,视频应用响应于接收到的用户操作,播放音频A。具体的,视频应用向媒体管理器输出音频A的输入音频数据,对应的输入音量可以表示为data_in(A)。可选地,视频应用可以将音频A分段划分,并逐段传输给媒体管理器,媒体管理器接收并缓存接收到的音频A,具体传输方式可参照已有技术实施例,本申请不做限定。
媒体管理器接收音频A的输入音频数据。媒体管理器可基于输入音频数据所对应的输入音量参数与当前保存(即最近一次保存的)的输出音量范围,获取音频A的音量参数。具体的,媒体管理器获取音频A的开头的预设长度(例如开头5秒)的音频数据的平均输入音量(data_in_average(A))。
媒体管理器将音频A的平均输入音量与输出音量范围比较。本实例中,以媒体管理器当前保存的输出音量范围为(data_out_min1,data_out_max1)为例说明。假设媒体管理器检测到音频A的平均输入音量(data_in_average(A))在输出音量范围内,即, data_out_min1≤data_in_average(A)≤data_out_max1,则媒体管理器确定音频A对应的音量参数(记为volume_coefficient(A))为1。
媒体管理器基于公式(2)获取音频A的输出音频数据对应的输出音量(记为data_out (A))。请参照图9a,媒体管理器获取到data_out(A)后,媒体管理器将音频A的输出音频数据输出至音频驱动。音频驱动通过手机的扬声器播放音频A的输出音频数据,播放音量即为data_out(A)对应的数值。
仍参照图9a,手机在播放音频A的过程中,媒体管理器以第一采样周期(即上文所述的稀疏采样周期)对音频A的输出音量(即媒体管理器生成的输出音量)进行采集,并基于采集到的输出音量,更新输出音量范围。具体采集与获取方式可参照S701和S702 中的描述,此处不再赘述。
请参照图9b,示例性的,视频应用响应于接收到的用户操作,更换播放的音频,将音频A切换为音频B。视频应用向媒体管理器输出音频B的输入音频数据,对应的输入音量表示为data_in(B)。
媒体管理器响应于接收到音频B的输入音频数据,确定音源变更。相应的,媒体管理器确定音源变更后,将重新执行音量参数获取流程,即媒体管理器获取音频B的音量参数。具体的,媒体管理器获取音频B的开头的预设长度(例如开头5秒)的音频数据的平均输入音量(data_in_average(B))。
媒体管理器将音频B的平均输入音量与输出音量范围比较。本实例中,仍以媒体管理器当前保存的输出音量范围为(data_out_min1,data_out_max1)为例说明。也就是说,媒体播放器在播放音频A的过程中所获取到的输出音量范围未更改。
本实例中,假设媒体管理器检测到音频B的平均输入音量(data_in_average(B))超出输出音量范围,且小于输出音量范围的最小值data_out_min1。媒体管理器可基于公式(10)获取音频B的音量参数(记为volume_coefficient(B))。
接着,媒体管理器可基于公式(2)获取音频B的音频数据对应的输出音量(记为data_out(B))。请参照图9b,媒体管理器获取到data_out(B)后,媒体管理器将音频 B的音频数据输出至音频驱动。音频驱动通过手机的扬声器播放音频B的输出音频数据,播放音量为data_out(B)对应的数值。
需要说明的是,上文中仅以音频B的平均输入音量大于输出音量范围的最大值为例进行说明,若音频B的平均输入音量小于输出音量范围的最小值,则媒体管理器可基于公式(10)获取音频B的音量参数,其他部分的步骤相同,此处不再重复举例说明。
进一步需要说明的是,如图9b所示,手机在播放音频B的过程中,媒体管理器以第一采样周期(即上文所述的稀疏采样周期)对音频B的输出音量进行采集,并基于采集到的输出音量,更新输出音量范围。具体采集与获取方式可参照S701和S702中的描述,此处不再赘述。需要说明的是,如上文所述,媒体管理器在检测到音频变更后,才会执行音量参数的获取流程,因此,音频播放过程中所获取到的输出音量范围不会影响当前播放的音频,该音频播放结束或者是切换其他音频之前,均基于以获取到的音量参数,计算输出音量。而在播放过程中更新的输出音量范围,则将用于音频变更后的获取音量参数的步骤中。
在本实例中,视频应用响应于接收到的用户操作,将音频B切换回音频A。则媒体播放器按照图9a中的流程重复执行。具体的,视频应用将音频A的输入音频数据输出至媒体管理器,其中音频A的输入音频数据对应的输入音量为data_in(A)。媒体管理器响应于接收到的音频A的输入音频数据,确定音源变更。媒体管理器将重新执行音量参数获取流程。示例性的,媒体管理器获取音频A的平均输入音量(data_in_average(A))。媒体管理器将音频A的平均输入音量与输出音量范围进行比较。本实例中,仍以当前保存的输出音量范围为(data_out_min1,data_out_max1)为例说明。媒体管理器检测到音频A的平均输入音量在输出音量范围内,媒体管理器可确定音频A对应的音量参数 (volume_coefficient(A))为1,并基于音频A的音量参数、音频A的输入音量以及输出音量参数,获取音频A的输出音量。未描述细节可参照图9a,此处不再赘述。
请参照图9c,在本申请实施例中,音频A在播放过程中,其对应的音量参数为volume_coefficient(A)。在音频A切换到音频B,即音源变更后,手机可基于音频B的输入音量,获取与音频B对应的音量参数,从而在输出音量参数(即虚线框中的参数,包括流音量(stream_volume)、音轨音量(track_volume)、主音量(master_volume)) 不变,即与切换到音频B之前的输出音量参数相同的情况下,手机可通过音量参数将音频B的输出音量调整到输出音量范围内(需要说明的是,由于音频B的输入音量可能会出现波动,相应的,可能有部分音频的输出音量未在输出范围内,但是其输出音量与输出音量范围的差值较小,可忽略不计)。也就是说,在音频B的输入音量小于音频A的输入音量的情况下(也可以是音频B的输入音量大于音频A的输入音量,其原理类似,此处不再重复说明),用户无需手动调节音量。即如图9c所示,在输出音量参数相同的情况下,手机可通过获取适当的音量参数,以使得音频B的输出音量落入根据用户的听觉习惯获取到的输出音量范围内。仍参照图9c,当手机再次将音频切换回音频A,媒体管理器可基于切换后的音频重新获取对应的音量参数。在输出音量参数相同的情况下,通过设置适当的音量参数,可使得音频A的输出音量同样落入根据用户的听觉习惯获取到的输出音量范围内。也就是说,在本申请实施例中,即使切换后的音频的输入音量小于切换前的音频的输入音量,通过设置对应的音量参数,可使得用户无需将音量调大。相应的,当音频切换回之前的音频后,由于输出音量参数并未改变,因此不会出现爆音的问题。通过本申请实施例中的音量控制方法,用户无需反复调节音量,且不会在调节音量后出现爆音的现象,有效提升用户使用体验。需要说明的是,本申请实施例中所述的音频的输出音量在输出音量范围内可以理解为是音频的平均音量在输出音量范围内,或者可以理解为音频数据的大部分音量在输出音量范围内。也就是说,由于音频数据的高低频变换,可能有少部分音频的音量大于或小于输出音量范围。进一步需要说明的是,如上文所述,在播放音频的过程中,电子设备可更新输出音量范围,相应的,如果音频数据的全部音频数据对应的输出音量均在输出音量范围内,则在该音频数据播放过程中,输出音量始终保持在输出音量范围内。示例性的,如果音频数据的部分音频数据对应的输出音量未在输出音量范围内,则电子设备可在采集到不满足输出音量范围的音量时,对输出音量范围进行更新。
需要说明的是,上文中的场景是以输出音量范围保持不变的场景说明的,在一种可能的实现方式中,若手机在播放音频A的过程中,用户调节音量(例如调大音量),则媒体管理器在检测到用户调大音量后,在用户调大音量的过程中,以第二采样周期(即密集采样周期)采集输出音量。并且,媒体管理器可基于采集到的输出音量,更新输出音量范围。具体获取方式可参照上文,此处不再赘述。在其他实施例中,输出音量范围也可能是在稀疏采集周期内发生变换,本申请不再逐一举例说明。可选地,更新后的输出音量范围可能与之前的输出音量范围相同或不同,本申请不做限定。相应的,在手机切换音频B之后,媒体管理器可基于更新后的输出音量范围获取音频B对应的音量参数。当然,若在手机播放音频B的过程中,用户调节音量,则媒体管理器按照上文所述方式,以密集采集周期进行采集,并更新输出音量范围。在手机切换到音频A之后,媒体管理器可基于当前保存(即最近一次更新)的输出音量范围,即最近一次更新的输出音量范围,获取音频A对应的音量参数。
进一步需要说明的是,上文中的场景是以音频B切换回音频A为例进行说明,在另一种可能的实现方式中,视频应用响应于接收到的用户操作,也可以是切换为其它音频,其具体方式与切换到音频A是一致的,本申请不再逐一举例说明。还需要说明的是,上文中切换回音频A可选地为播放的音频与切换到音频B之前的音频是相同的。在其他实施例中,视频应用也可以采用断点续播的方式。例如,切换到音频B之前播放的是音频 A1,则媒体管理器可获取音频A1所对应的音量参数,并获取到对应的输出音量。视频应用将音频B切换回音频A后,可选地播放的是音频A中的音频A2,音频A2与音频 A1的数据不同,输入音量可以相同,也可以不同。媒体管理器可基于音频A2的输入音量,获取对应的音量参数,并得到音频A2的输出音量。具体实施方式与图9a和图9b中的类似,此处不再赘述。
进一步需要说明的是,本申请实施例中所述的音频切换(或变更),可能是在播放音频A的过程中,响应于接收到的用户操作,将正在播放的音频A切换到音频B。在其他实施例中,也可以是音频A播放结束后(例如可以是间隔一段时间),再播放音频B,本申请不做限定。
进一步需要说明的是,在用户调节输出音量参数,以调节音频的输出音量的过程中,媒体管理器在获取输出音量范围时,可将新获取到的输出音量范围的最大值与前一次获取到的输出音量范围的最大值取平均值,以作为更新的输出音量范围的最大值。相应的,媒体管理器将新获取到的输出音量范围的最小值与前一次获取到的输出音量范围的最小值取平均值,以作为更新的输出音量范围的最小值,从而防止用户调节音量,导致输出音量范围波动过大。
本申请实施例中的音量控制方法除应用于上文所述的手机播放音频的场景(也可以理解为单设备场景)中,还可以应用于多设备协同场景中。图10为示例性示出的多设备协同场景,请参照图10,手机通过与电视之间的无线连接,向电视输出音频A的音频数据,电视接收并播放音频A的音频数据。需要说明的是,图10中的设备类型与设备数量仅为示意性举例。例如,在其他实施例中,场景可以是手机A分别与电视和平板无线连接,并将音频A的音频数据分别输出给电视和平板,电视和平板均可播放音频A的音频数据,其处理方式与图10中的场景的各设备的处理方式相同,本申请不再逐一举例说明。进一步需要说明的是,本申请实施例中所述的无线连接可以是基于蓝牙协议或Wi-Fi协议等维护的,本申请不做限定。本实例中以无线连接为Wi-Fi连接为例进行说明,无线连接的具体建立过程可参照已有技术实施例,本申请不再赘述。
请参照图11a,示例性的,手机的视频应用响应于接收到的用户操作,确定播放音频 A。手机的视频应用向手机的媒体管理器输出音频A的输入音频数据A1,对应的输入音量记为data_in(A1)。
手机的媒体管理器接收音频A的输入音频数据,并获取音频A的音量参数。具体的,手机的媒体管理器获取音频A的平均输入音量(data_in_average(A1))。媒体管理器将音频A的平均输入音量与当前保存的输出音量范围比较,并获取对应的音量参数 (volume_coefficient(A1))。具体细节可参照图9a中的相关内容,此处不再赘述。
手机的媒体管理器可基于音频A的输入音量、音量参数以及当前的输出音量参数(包括流音量(stream_volume)、音轨音量(track_volume)、主音量(master_volume)),获取音频A的输出音量data_out(A1)。
仍参照图11a,手机的媒体管理器可采集音频A的输出音量,并基于采集到的输出音量,更新输出音量范围。具体方式可参照上文,此处不再赘述。
示例性的,手机的媒体管理器将音频A的输出音频数据A1输出至Wi-Fi驱动,其中,输出音频数据A1对应的输出音量为data_out(A1)。手机的Wi-Fi驱动将音频A的输出音频数据A1输出至电视的Wi-Fi驱动。电视的Wi-Fi驱动可选地将音频A的输出音频数据A1输出至电视的投屏应用(也可以是其它协同类应用,本申请不做限定)。
示例性的,投屏应用将音频A的输出音频数据A1输出至电视的媒体管理器。需要说明的是,在本申请实施例中,对于媒体管理器而言,其接收到的音频数据均记为输入音频数据,则媒体管理器接收到的音频A的音频数据表示为音频A的输入音频数据A2,对应的输入音量为data_in(A2)。其中,data_in(A2)等于data_out(A1)。
示例性的,电视的媒体管理器基于接收到的音频A的输入音量data_in(A2),获取音频A在电视侧的音量参数。电视的媒体管理器可基于音频A的输入音量data_in(A2),获取音频A的平均输入音量(data_in_average(A2))。需要说明的是,该平均输入音量是基于电视侧的音频A的输入音量,也就是说,手机侧的音频A的输出音量获取到的, data_in_average(A2)与data_in_average(A1)相同或不同,本申请不做限定。
示例性的,电视的媒体管理器将音频A的平均输入音量(data_in_average(A2))与电视侧当前保存的输出音量范围比较。其中,电视侧的输出音量范围与手机侧的输出音量范围相同或不同,本申请不做限定。
电视的媒体管理器可基于比较结果,获取音频A在电视侧的音量参数 (volume_coefficient(A2))。音量参数(volume_coefficient(A2))与音量参数 (volume_coefficient(A1))相同或不同,本申请不做限定。
示例性的,电视的媒体管理器可基于音频A的输入音量data_in(A2)、音量参数(volume_coefficient(A1))以及电视侧的输出音量参数(与手机侧的相同或不同),得到音频A在电视侧的输出音量data_out(A2)。需要说明的是,获取各参数的具体细节可参照上文实施例中的相关内容,此处不再重复说明。
电视的媒体管理器可将音频A的音频数据A2输出至音频驱动,对应的输出音量为data_out(A2)。音频驱动控制扬声器(也可以是其他播放设备)播放音频A的音频数据,播放的音量即为data_out(A2)。
需要说明的是,如图11a所示,电视的媒体管理器同样可对音频A的输出音量进行采集,并更新输出音量范围。具体实现方式可参照上文实施例中的相关内容,此处不再赘述。
在本申请实施例中,多设备协同场景中,电视可通过与音频对应的音量参数,将音频的输出音量调节至用户在电视侧习惯的试听音量范围,即电视侧的输出音量范围。在电视获取到的音频的输入音量(即手机侧的输出音量)较大或较小的情况下,均可以通过获取适当的音量参数,以将音频在电视侧的输出音量调节至输出音量范围内。
在本申请实施例中,电视播放音频A的过程中,用户可通过电视的遥控器调节电视的输出音量。例如,电视的媒体管理器响应于接收到的用户操作,将电视侧的输出音量参数(包括流音量(stream_volume)、音轨音量(track_volume)、主音量(master_volume)) 调大。则相应改变的是电视侧的输出音量,以及电视侧的输出音量范围,而不会改变手机侧的输出音量和输出音量范围。因此,如图11b所示,当手机取消与电视的音频传输 (无线连接可能保持,也可能断开,本申请不做限定)后,若手机在手机侧继续播放音频 A,则手机可基于图9a中的流程获取音频A的输出音量。其中,手机取消与电视的音频传输后,手机侧的媒体管理器检测到音频变更(即输出设备变更),手机在获取音频A 的输出音量时,需要重新基于图9a中的方式获取音频A的音量参数,并基于新的音量参数(即音量参数A3),得到音频A的输出音量。其中,音量参数A3与音量参数A1相同或不同。手机可通过手机的音频驱动播放音频A,播放的音量即为手机基于手机侧的输出音量范围以及音量参数获取到的输出音量。对于电视侧,其与手机取消音频传输后,若电视侧播放音频(例如音频B),电视侧所播放的音频B的输出音量,即为基于电视侧更新的输出音量范围与对应的音量参数获取到的。
下面以图12a与图12b具体分析本申请的音量控制方案在多设备场景中的效果。请参照图12a,对于未引入本申请实施例中的音量控制方案的多设备场景。设备A基于公式(1)获取到音频A的输出音频数据(其中,对应的输出音量为data_out(A))后,将音频A的音频数据传输给设备B。设备B基于接收到的音频A的输出音量(data_out(A)) 以及设备B侧的输出音量参数,按照公式(1)获取音频A在设备B侧的输出音量 (data_out(B))。示例性的,假设设备B侧的输出音量较小,已有技术中通常是通过将设备A侧的输出音量调大,即调大设备A侧的输出音量参数,也就是说,将输入设备B的音量调大,以增加设备B侧的输出音量。当设备A与设备B断开后(也可以是取消设备间协同,本申请不做限定),设备A继续播放音频A。由于设备A侧的输出音量参数已被调大,则设备A在播放音频A时,将继续调大后的输出音量参数获取音频A的输出音量,将导致设备A在播放音频A时可能出现爆音。
请参照图12b,对于本申请实施例中的音量控制方案的多设备场景,设备A与设备B在获取输出音量时,均是基于各自的输出音量范围、输出音量参数以及获取到的音量参数得到的。也就是说,即使设备A向设备B输出的音量较大或较小,设备B同样可通过获取到适当的音量参数,以通过音量参数将音频A在设备B侧的输出音量,调节至设备B侧的输出音量范围内。也就是说,用户无需调节设备A或设备B侧的输出音量参数,设备B侧通过音量参数,即可将设备B侧的音频A的输出音量调节至输出音量范围内,以满足用户的听觉习惯。并且,设备A与设备B的输出音量参数与音量参数,即影响各自的输出音量的因子相互独立,互不影响,因此,设备A与设备B断开后,设备A 或设备B播放其他音频时,设备A或设备B均会重新为播放的音频获取对应的音量参数,以将新的音频的输出音量,调节至各自设备的输出音量范围内,不会出现爆音的问题,有效提升用户使用体验。
此外,在本申请实施例中,用户可通过设备A和/或设备B以调节设备B侧的输出音量。一个示例中,用户可通过调节设备A侧的输出音量参数,以调节音频A在设备B 侧的输出音量(原理可参照上文,此处不再赘述)。当设备A与设备B断开后,当设备 A播放音频时,设备A可基于调节音量后所获取到的输出音量范围,获取对应的音量参数,并进一步得到输出音量。对于设备B,其输出音量参数未受影响,与设备A断开后,仍可按照已保存的输出音量参数与输出音量范围,获取到对应的音量参数,并得到输出音量。另一个示例中,用户可通过调节设备B侧的输出音量参数,以调节音频A在设备 B侧的输出音量。请参照图12b,当设备A与设备B断开后,对于设备A侧,其在播放音频时,由于其输出音量参数与输出音量范围未受影响(即虚线框中的参数相同),因此,设备A在播放音频时,其播放的输出音量仍然在输出音量范围内,可有效避免设备切换后出现的爆音问题。
本申请实施例中的音量控制方案还可以应用于多设备播放的混音场景中,以实现在混音场景中的音量自适应调节。图13a与图13b为示例性示出的原理示意图,请参照图13a,场景中包括手机、耳机、平板和电视等设备。需要说明的是,图13a中的设备数量以及类型仅为示意性举例,本申请不做限定。示例性的,手机作为中心设备,可获取到各从设备发送的音频数据,例如手机可以通过与平板和电视之间的无线连接(例如Wi-Fi连接,也可以是其它连接方式,本申请不做限定)接收到平板发送的音频A的音频数据以及电视发送的音频B的音频数据。其中,音频A的音频数据对应的输入音量为data_in(A),音频B的音频数据对应的输入音量为data_in(B)。手机作为中心设备可将手机的音频(例如音频C)、电视的音频(音频B)以及平板的音频(音频C)进行混音,以得到混音音频数据,混音音频对应的输出音量为data_out(X)。手机可将混音音频的音频数据输出至耳机,以通过耳机播放混音音频,播放音量为data_out(X)。在该场景中,各设备发送的音频的输入音量是基于上文所述的音量控制方法调节后的音量。并且,手机在混音过程中,同样基于本申请中的音量控制方法对混音音频的输出音量进行调节,从而使得混音音频的输出音量控制在手机侧的输出音量范围内。
请参照图13b,本申请实施例中的中心设备在混音过程中,可基于各设备与耳机之间的相对位置(包括距离和/或角度),以得到混音音频,从而可以在耳机侧实现立体声效果。可以理解为,本申请实施例中,用户通过耳机可听到组网中的各设备(包括手机、平板与电视)的音频,并且,各音频的声音效果与用户不使用耳机时的听觉效果是接近的,即,耳机中播放的声音可实现声音的远近与方位的空间听觉效果。
示例性的,中心设备可选地用于与从设备连接并进行数据交互,以向各从设备发布指令,并获取从设备的音频数据。中心设备还用于与耳机连接并进行数据交互,以从耳机获取指令,并向耳机传输音频数据。从设备即为组网中除中心设备以外的设备。需要说明的是,组网可以是Wi-Fi组网,也可以蓝牙组网,还可以是Wi-Fi与蓝牙的混合组网,例如,手机与电视之间的连接可以是Wi-Fi连接,手机与平板之间的连接可以是蓝牙连接,本申请不做限定。可选地,本申请实施例中的组网中的各设备是具有相同的账号。中心设备与从设备的具体确定方式将在下面的实施例中详细说明。
下面以具体实施例对图13a与图13b中的混音场景进行详细说明。图14为示例性示出的场景示意图。请参照图14,本申请实施例中以手机、电视与平板之间组成Wi-Fi组网为例进行说明,即组网中的各设备的无线连接是基于Wi-Fi协议维护的。举例说明,用户家中的电视与平板开机后,可自动发现并进行连接(也可以手动连接,此处不再赘述),以组成家庭组网。当然,家庭组网中还可以包括其它设备,例如可以包括蓝牙音箱等其它智能家居设备等,本申请不做限定。仍参照图14,示例性的,用户携带手机回家后,手机执行Wi-Fi发现流程,并在发现Wi-Fi组网中的各设备(包括电视和平板),自动与各设备进行连接,以加入Wi-Fi组网。本申请实施例中仅简单说明组网的结构与建立过程,具体连接过程可参照已有技术实施例,本申请不做限定。
请继续参照图14,用户打开耳机外壳后,耳机可自动连接电子设备。本申请实施例中以耳机自动连接上一次连接的设备(例如平板)为例进行说明。在其他实施例中,耳机也可以选择距离最近的设备进行连接,本申请不做限定。
示例性的,耳机与平板建立蓝牙连接。具体建立过程可参照已有技术实施例,本申请不再赘述。在本申请实施例中,耳机与平板连接后,也就是说,耳机与组网中的设备连接后,组网内的各设备可发起投票选取流程,以选出中心设备与从设备。图15为示例性示出的投票选举示意图,请参照图15,组网内的各设备(包括手机、平板、电视)向组网内的其它设备发送(例如可以是发送广播消息)选票信息。选票信息中包括设备信息、设备的能力信息和位置信息。其中,设备信息包括但不限于:设备型号、设备名称、设备地址等信息。设备的能力信息包括但不限于:设备支持的通信类型、是否支持混音功能等。位置信息可选地为设备与耳机之间的距离信息。可选地,距离信息可以通过蓝牙测距、超宽带(Ultra WideBand,UWB)等方式进行测量,本申请不做限定。可选地,在本申请实施例中,设备在选举阶段,也可以称为候选设备,或备选设备,本申请不做限定。
示例性的,组网中的各设备均可以接收到其它设备发送的选票信息。以手机为例,手机向电视与平板发送选票信息,选票信息中包括手机的相关信息。手机还会接收到电视发送的选票信息和平板发送的选票信息,电视发送的选票信息中包括电视的相关信息,平板发送的选票信息包括平板的相关信息。
示例性的,组网中的各设备可预设投票规则,投票规则可根据实际需求设置,例如可以是基于各选票中的位置信息,选择距离耳机最近的设备,本申请不做限定。本实例中,以各设备根据预设投票规则,选择手机为中心设备为例进行说明。仍以手机为例,手机基于自身的设备信息、位置信息等,以及接收到的电视的选票信息和平板的选票信息,根据预设投票规则,选择手机自身作为中心设备。对于其他设备,例如平板,其预设规则与手机相同,且获取到的选票信息也相同,因此,组网中的各设备选出的中心设备是一致的,例如均是选择手机作为中心设备。示例性的,组网中的非中心设备的其它候选设备,则作为从设备。
本申请实施例中,选择出中心设备之后,耳机可切换到中心设备,即断开与平板之间的连接,并与手机(即中心设备)建立蓝牙连接。
需要说明的是,本申请实施例中以平板非中心设备为例进行说明,在其他实施例中,耳机当前连接的设备可能是中心设备,也可能不是,本申请不做限定。
进一步需要说明的是,中心设备选出后,中心设备与各设备之间周期性地执行握手流程,即中心设备与各从设备在每个周期(例如可以5s,可根据实际需求设置,本申请不做限定)触发时刻,进行探测信息交互,以检测中心设备的状态是否正常。若中心设备状态异常,例如中心设备离线,则从设备在周期触发时刻,未接收到中心设备的探测信息(或者是中心设备回复的探测响应信息),从设备可确定中心设备状态异常,组网内的各设备重新执行投票流程,重新投票后的中心设备与之前的中心设备不同。
进一步需要说明的是,中心设备切换后,耳机将连接到新的中心设备,并由新的中心设备继续执行下文实施例中所述的各步骤,例如混音步骤等。
示例性的,投票流程结束,即选出中心设备之后,各设备可获取与耳机之间的相对位置信息。可选地,相对位置信息包括与耳机之间的距离信息和/或角度信息。举例说明,请参照图16,手机通过测量,获取到与耳机之间的相对位置为:距离A、角度A。电视通过测量,获取到与耳机之间的相对位置为:距离B、角度B。平板通过测量,获取到与耳机之间的相对位置为:距离C,角度C。可选地,各设备可基于到达角度(Angle of Arrival, AOA)算法或离开角度(Angle of Departure,AOD)算法、UWB等测量方法获取到角度信息,本申请不做限定。具体测量方式可参照已有技术实施例,本申请不再赘述。
示例性的,组网中的各从设备(例如电视和平板)将获取到的相对位置信息发送给中心设备。可选地,各设备可以周期性的获取相对位置信息,并且,各从设备将每个周期获取到的相对位置信息发送给中心设备。
图17为示例性示出的用户界面示意图,请参照图17的(1),声音和振动设置界面1701中包括混音设置选项框1702,用户可点击该选项,以启动手机的混音功能。需要说明的是,平板或电视也可以具备混音功能。在选举出中心设备之后,电视或平板中的混音功能可以提示中心设备为手机,以提示用户在手机上进行操作。当然,在其他实施例中,中心设备也可以将相关信息同步给从设备,以使得从设备上也可以实现用户在手机上的操作,并向中心设备发送响应于接收到的用户操作所生成的指令,以使得中心设备在组网内发布相关控制指令。
仍参照图17的(1),手机响应于接收到的用户操作,启动混音功能。手机可基于最近一次获取到的手机与耳机的相对位置信息,以及最近一次获取到的其它各从设备发送的与耳机之间的相对位置信息,计算组网中的所有设备以及耳机之间的相对方位。可选地,手机可以将用户正在操作的焦点设备方位作为用户的正前方,也可以以耳机的正朝向方位作为用户的正前方,本申请不做限定。
请参照图17的(2),示例性的,手机在混音设置选项框1702中显示获取到的所有设备与耳机之间的相对方位。需要说明的是,图17的(2)中仅为示意性举例,在其他实施例中,图中可标识出各设备与耳机之间的距离以及方位,还可以显示各设备的图标等信息,本申请不做限定。
可选地,用户可以通过图17的(2)中提供的界面,手动调节各设备与耳机之间的相对位置。例如,可能由于测量误差等问题,界面中显示的相对位置不准确,用户可以通过拖动对应的设备图标,以调整与耳机之间的相对位置。以平板为例,用户可拖动平板的图标,增大平板与耳机之间的夹角,手机响应于接收到的用户操作,计算出拖动后的平板图标与耳机图标之间的夹角,并保存平板的新的相对位置信息,即为平板之前发送的距离信息与更新后的夹角信息。手机可将平板的新的相对位置信息发送给平板。
在一种可能的实现方式中,用户可通过图17的(2)中的界面移除设备。举例说明,在混音播放过程中(也可以是在混音播放之前的任意时刻),若用户拖动平板的图标,并将平板的图标滑动到屏幕外。在其他实施例中也可以是其他操作,例如可以是长按后,手机响应于接收到的用户长按操作,显示选项框,选项框中可包括删除选项,用户可以点击删除选项,以删除平板。示例性的,手机响应于接收到的操作,确定将平板从混音场景中移除,手机取消平板图标在混音设置选项框1702中的显示。并且,手机在后续的混音过程中,将不会接收平板所发送的音频。可选地,也可以是手机向平板发送指示信息,以指示平板停止发送相对位置、音频等信息,平板停止向手机发送音频等信息。也就是说,混音音频中不包括平板对应的音频。需要说明的是,该移除方案仅是将平板的音频从混音中剔除,平板仍然在组网中。可选地,若用户需要将平板的音频重新加入到混音音频中,则用户可通过重新开启混音功能,以触发各设备重新执行上文所述的相对位置获取流程。
在一种可能的实现方式中,手机(也可以是平板等其它设备)可以在接收到用户点击混音设置选项的操作后,向组网中的各设备发送触发信息,以触发组网中的各设备执行上文所述的投票流程,并在投票流程结束后,耳机连接至中心设备。接着,组网中的各设备执行上文所述的相对位置获取流程。
在另一种可能的实现方式中,在选出中心设备后,可不作其他处理。手机(也可以是平板等其它设备)在接收到用户点击混音设置选项的操作后,可向各从设备发送触发信息,以触发各从设备获取与耳机之间的相对位置。各从设备将获取到的相对位置信息反馈给手机,手机基于自身与耳机之间的相对位置信息和接收到的相对位置信息,计算组网中的各设备的相对位置,并在混音设置选项框中显示,这样可以有效节约各设备的计算负担,且减少数据交互。但是,该方式较之上文中所述的方式实时性较低,可能需要等待几秒才会在显示框中显示各设备的相对位置。
在又一种可能的实现方式中,在选出中心设备后,耳机可以继续连接平板。手机接收到用户点击混音选项操作后,手机与耳机建立连接。可选地,耳机与平板之间的连接可以保持,也可以断开,本申请不做限定。
示例性的,中心设备确定各设备的方位之后,可在组网中的设备播放音频的过程中,执行混音流程,从而实现图13b所示的效果。
示例性的,以用户使用手机玩游戏(即手机中播放游戏音频),平板中播放视频,且电视中播放音乐为例进行说明。在用户未佩戴耳机之前,用户人耳可听到手机的游戏音频、平板的视频音频以及电视的音乐音频。当用户带上耳机后,耳机可向手机发送佩戴指示信息。手机(即中心设备)响应于接收到的佩戴指示信息,确定用户佩戴耳机,手机向从设备(平板和电视)发送混音触发指示信息,用于指示各设备停止播放音频,并将音频数据输出至手机,以通过手机进行混音,并输出至耳机进行播放,即如图13a中所示。
具体的,在本申请实施例中,手机与各从设备可执行软时钟同步,软时钟同步可选地为手机与各从设备之间的系统时间进行同步,以避免网络延迟所导致的音频不同步的问题。手机与平板、电视进行软时钟同步之后,各设备之间的系统时间是一致的。需要说明的是,本申请实施例中仅以软时钟同步的是系统时间为例进行说明,本申请不做限定。进一步需要说明的是,该软时钟同步步骤可以在中心设备选举之后,且在手机进行混音之前的任意时刻执行,本申请不做限定。
下面以平板与手机之间的交互流程为例进行说明,电视侧与手机的处理流程和交互流程是相同的,此处不再赘述。请参照图18,示例性的,平板在接收到混音触发指示信息之前,平板通过自身的音频设备(例如扬声器)播放音频A。平板在播放音频A的过程中,其内部处理流程遵循上文所述的音量控制方法,即平板中的媒体管理器通过音量参数对输出音量进行调节,具体细节可参照上文,此处不再赘述。平板接收到混音触发指示信息后,确定音频变更,即输出设备切换,也就是说输出设备从平板的音频设备变更为手机。
继续参照图18,示例性的,平板中的视频应用向媒体管理器输出音频A的输入音频数据,对应的输入音量为data_in(A)。如上文所述,媒体管理器在确定音频变更后,将重新执行音量参数获取流程。示例性的,媒体管理器可基于音频A的输入音量以及平板当前保存的输出音量范围,确定音频A的音量参数。接着,媒体管理器基于音频A的输入音量、音量参数以及输出音量参数,获取音频A的输出音量(data_out(A)),具体细节可参照上文实施例,此处不再赘述。
接着,在混音场景中,平板的媒体管理器将音频A的输出音频数据中加入软时钟信息。其中,软时钟信息即为上文所述的软时钟同步后的时间信息。软时钟信息的具体添加方式可参照已有技术实施例,本申请不再赘述。
示例性的,平板的媒体管理器将加入软时钟信息后的音频A的输出音频数据输出至 Wi-Fi驱动。其中,音频A的输出音频数据对应的输出音量为(data_out(A))。平板的 Wi-Fi驱动将音频A(已加入时钟信息,下文中不再重复说明)的输出音频数据传输至手机。
仍参照图18,示例性的,手机的Wi-Fi驱动接收到音频A的输出音频数据。手机的Wi-Fi驱动将音频A的输出音频数据输出至媒体管理器。需要说明的是,与上文类似,媒体管理器接收到的音频A的音频数据,对于媒体管理器而言,即为音频A的输入音频数据。为方便描述,下文中仍以音频A的输出音频数据进行描述,不再替换为音频A的输入音频数据。
示例性的,在手机侧,手机侧在发送混音触发指示信息之前,手机侧通过扬声器播放游戏音频。手机侧检测到用户佩戴耳机后,可确定输出设备切换为耳机,即音频变更。手机侧同样将手机侧需要播放的音频重新执行上文所述输出音量获取流程。具体的,请参照图18,游戏应用将音频C的输入音频数据输出至手机的媒体管理器,其中,音频C 的输入音频数据对应的输入音量为data_in(C)。
示例性的,手机的媒体管理器可获取音频C的输出音量。具体的,手机的媒体管理器可基于音频C的输入音量(data_in(C))以及手机当前保存的输出音量范围,确定音频 C的音量参数。接着,媒体管理器基于音频C的输入音量、音量参数以及输出音量参数,获取音频C的输出音量(data_out(C)),具体细节可参照上文实施例,此处不再赘述。
接着,手机可基于手机的音频C的输出音频数据、接收到的平板发送的音频A的输出音频数据,以及电视发送的音频B的输出音频数据,执行混音流程,以获取混音音频的音频数据。
图19为示例性示出的混音流程示意图,请参照图19,具体包括:
S1901,音频软时钟对齐。
示例性的,手机可基于自身的软时钟,以及接收到的音频A中的软时钟,和音频B中的软时钟,将音频A、音频B以及音频C对齐,以使得音频A、音频B和音频C的音频起始点同步。具体对齐方式可参照已有技术实施例,本申请不再赘述。
S1902,根据设备方位,分别计算双声道音频数据。
本申请实施例中,手机的媒体管理器可基于各设备(包括手机、电视和平板)的相对位置信息,计算各音频之间的时间差、声级差、相位差以及音色差等,从而实现不同设备音频的混音后的立体声效。
示例性的,时间差可选地为声音到达用户两耳(也可以是两个耳机播放的)之间的时间差。其中,当时间差到达0.6ms左右时,用户可以感到声音完全来自某一侧。也就是说,通过调整两个耳机输出的音频之间的时间差,可以使得用户感知到音频的音源向某个方位偏移。
示例性的,声级差可选地为靠近声源一侧的声级较大,而另外一侧较小。其中,当音源在用户的某一侧时,用户两耳听到(或者是两个耳机播放的)的音频的声级差可达到25dB左右。在本申请实施例中,可通过调整音频在两个耳机的声级差,例如可以是将耳机的其中一个声道的音频的声级增大,另一个音频的声级不变或者减小,从而使得用户感知到音频的音源向某个方位偏移。
示例性的,相位差可选地为两个耳机接收到的音频之间的相位差。需要说明的是,即使两个耳机接收到的声音声级以及时间相同,若调整两个耳机接收到的音频之间的相位,同样可使得用户感知到音频的音源向某个方位偏移。
示例性的,音色差可选地为两个耳机接收到的音频之间的音色(即频率)之差。其中,音频的频率越高,绕过头部到达另一只耳朵时的衰减越大。相应的,本申请实施例中,可通过调整两个耳机接收到的音频的音色,以使得用户感知到音频的音源向某个方位偏移。
下面以基于相对位置中的方向信息,通过调整输出至耳机的左右声道的音频的时间差为例,对本申请实施例中的混音流程进行详细说明。请参照图20,示例性的,手机的媒体管理器获取到的音频A的输出音频数据、音频B的输出音频数据与音频C的输出音频数据如图20所示,其中,每个数字为4位,即4个比特(bit)。每个采样周期为16 位,即图20中占两个格子长度,即16位。需要说明的是,图20中所示的音频数据仅为示意性举例,本申请不做限定。
手机的媒体管理器可基于手机与耳机之间的方位(即相对位置信息中的角度信息),获取各音频在耳机的左右声道的时间差,并通过调整音频在左右声道的时间差,以虚拟出音源在用户听觉中的相对位置,虚拟的音源向某个方向偏移,以接近实际音源(例如平板)与手机之间的相对位置。
举例说明,以图16中的各设备与耳机之间的方位为例,平板在耳机的右前方,且与耳机之间的夹角为角度C。请参照图21a的(1),对于平板的音频A,可将输出至左声道的音频延后3个采样周期的时长。也就是说,右声道的音频的起始点与左声道的音频的起始点相差3个采样周期的时长。可以理解为,耳机的右声道先播放音频A,在3个采样周期时长后,左声道播放音频A,从而实现音频A在耳机的左声道与右声道之间的时间差。如图21b所示,由于左右声道接收到的音频存在时间差,可实现音源的调整,使得用户在听觉上感知音频A的音源,即虚拟出的声源在用户的右前方,接近平板与耳机之间的实际方位。电视与手机的音频的时间差调整原理同样可参照图21b,下文中不再重复说明。
参照图21a的(2),示例性的,仍以图16中的方位为例,电视在耳机的正前方,即,其与耳机之间夹角(即夹角B)为90度。相应的,音频B输出至耳机的左声道的音频与输出至耳机的右声道的音频一致,以使得虚拟出的音源在用户听觉感知的正前方。
参照图21a的(3),示例性的,仍以图16中的方位为例,手机在耳机的左前方,且与耳机之间的夹角为角度A。手机的媒体管理器可将输出至右声道的音频延后3个采样周期。也就是说,左声道的音频的起始点与右声道的音频的起始点相差3个采样周期。可以理解为,耳机的左声道先播放音频C,在3个采样周期时长后,左声道播放音频C,从而实现音频C在耳机的左声道与右声道之间的时间差。由于左右声道接收到的音频存在时间差,可实现音源的调整,使得用户在听觉上感知音频C的音源,即虚拟出的声源在用户的左前方。
需要说明的是,本实例中仅以是以基于方位信息,调节时间差,也就是说,是以媒体管理器通过调节左右声道的音频的时延,以实现虚拟音源方向的偏移为例进行说明。在一种可能的实现方式中,如上文所述,组网中的各设备对应的相对位置信息中可包括距离信息和/或角度信息。若相对位置信息中包括距离信息和角度信息的场景下,中心设备 (即手机)的媒体管理器还可以进一步基于距离信息对各音频进行调节。示例性的,仍以图16中所示的场景为例,手机的媒体管理器可基于手机与耳机之间的距离信息(即距离A),获取手机的音频C的距离衰减值。媒体管理器可基于接收到的电视与耳机之间的距离信息(即距离B),获取电视的音频C的距离衰减值。以及,媒体管理器基于接收到的平板与耳机之间的距离信息(即距离C),获取平板的音频A的距离衰减值。示例性的,媒体管理器可基于公式(11),获取距离衰减值:
Lp=20lg(D/D_min) (11)
其中,D即为设备与耳机之间的距离值,D_min即为各设备与耳机之间的距离值之中的最小距离值,也就是说,本申请实施例中媒体管理器距离最小的设备的距离为基准,计算其他设备的音量衰减值,该计算方式仅为示意性举例,本申请不做限定。
示例性的,媒体管理器可在执行图21a所示的步骤之前,或者是执行图21a所示的步骤之后,将各音频的音频数据加上距离信息对应的衰减值。举例说明,在执行图21a所示的步骤之前,媒体管理器可将图20中所示的音频A的音频数据加上音频A对应的距离衰减值、媒体管理器将音频B的音频数据加上音频B对应的距离衰减值,以及,媒体管理器将音频C的音频数据加上音频C对应的距离衰减值。其中,由于电视对应的距离信息为设备的距离信息中最小的,相应的,如上文所述,音频B对应的距离衰减值可选地为0。媒体管理器可基于得到的各音频对应的结果,继续执行图21a中的流程。
另一个示例中,媒体管理器可执行图21a之后,即获取到各音频对应的左右声道的音频数据后,媒体管理器可对各音频的左右声道的音频数据分别加上衰减值。以音频A 为例,媒体管理器可将左声道的音频数据加上音频A对应的距离衰减值,得到左声道的输出音频数据,以及,媒体管理器将右声道的音频数据加上音频A对应的距离衰减值,得到右声道的输出音频数据。媒体管理器依次对各音频的左右声道的音频数据进行处理,并基于处理后的结果,继续执行图22中的流程。
S1903,将多设备的双声道音频数据分别进行线性混音。
示例性的,请参照图22,手机的媒体管理器将右声道对应的音频A的输出音频数据、音频B的音频数据与音频C的输出音频数据进行叠加,以得到右声道的混音音频。并且,媒体管理器将左声道对应的音频A的输出音频数据、音频B的输出音频数据与音频C的输出音频数据进行叠加,以得到左声道的混音音频。可选地,为了防止叠加后的音频数据溢出,媒体管理器可将左右声道叠加后的音频数据取平均值,以得到左右声道各自的混音音频的输出音频数据,对应的输出音量为data_out(X1)。
需要说明的是,本申请实施例中仅以调整左右声道的时间差,以实现虚拟声源方位变换。在其他实施例中,媒体管理器还可以通过调整音色差、相位差和/或声级差等以实现立体声效,本申请不再逐一举例说明。
进一步需要说明的是,本申请实施例中的延后采样点以实现时间差的方式仅为示意性举例。在其他实施例中,媒体管理器也可以基于HRTF(Head-Related TransferFunction,头相关传输函数)算法以获取立体声音效,本申请不做限定。
请继续参照图18,示例性的,手机的媒体管理器获取到左右声道的混音音频的输出音频数据后,媒体管理器可对混音音频的输出音量(data_out(X1))进行音量参数调节,以将混音音频的输出音量(data_out(X1))调节至手机的输出音量范围内。
可选地,如图23所示,媒体管理器可将图22中基于获取到的左声道的音频的输出音量与输出音量范围,获取左声道的音频的音量参数。具体获取方式可参照上文的音量参数获取方式,此处不再赘述。媒体管理器将左声道的音频数据乘以输出音量参数和音量参数(即如上文中的公式(2)所示),得到左声道的输出音频数据,对应的输出音量为data_out(X2)。以实现输出音量的优化,将左声道输出的音频的输出音量调节至输出音量范围内。示例性的,由于左右声道的音频数据之间的关系是延迟的,但是其输出音量实际上是一样的,因此,右声道的音频对应的音量参数与左声道相同,媒体管理器可将右声道的输出音量乘以输出音量参数和音量参数,得到右声道的输出音频数据,对应的输出音量为data_out(X2),以实现输出音量的优化,将右声道输出的音频的输出音量调节至输出音量范围内。需要说明的是,在其他实施例中,也可以仅将左右声道的音频数据乘以音量参数,以调节输出音量,本申请不做限定。
请继续参照图18,示例性的,媒体管理器将获取到的混音音频的输出音频数据(包括左声道和右声道的输出音频数据)输出至蓝牙驱动。其中,混音音频的输出音量为 data_out(X2)。蓝牙驱动可将混音音频的输出音频数据通过蓝牙连接输出至耳机。具体的,耳机的左声道播放上文中的左声道对应的混音音频的输出音频数据(图23中所示的左声道的音频数据),对应的播放音量为data_out(X2)。耳机的右声道播放上文中的右声道对应的混音音频的输出音频数据(图23中所示的右声道的音频数据),对应的播放音量为 data_out(X2)。
需要说明的是,上文实施例中,手机基于获取到的相对位置信息,对音频进行混音处理过程中,手机始终是基于以获取到的相对位置进行计算的。也就是说,在该场景中,耳机播放的立体声所体现的音源的位置可选地如图16中所示,即音源的位置保持不变。在一种可能的实现方式中,组网中的各设备交互音频数据的过程中,可以周期性地获取与耳机之间的相对位置,从设备可周期性(可基于实际需求设置,本申请不做限定)地向中心设备发送相对位置信息。手机可以在获取到相对位置信息后,基于新获取到的相对位置信息,对各设备的音频进行混音,混音的具体方式与上文相同,此处不再赘述。这样,本申请实施例中,中心设备可基于实时获取到的相对位置信息,对混音音频的混音效果进行调整,以调整各虚拟音源与耳机之间的相对位置。例如,用户佩戴耳机在房间中行走的过程中,手机可基于各设备与耳机之间的相对位置的转换,调节各音频在耳机左右声道对应的衰减值以及时间差(也可以是音色差等,本申请不做限定),从而实现虚拟的音源位置变换,得到更贴合实际的立体声效,提升用户使用体验。
在本申请实施例中还提供一种控制方法,以支持多设备播放的混音场景中的音频变更场景。在多设备播放的混音场景中,音频变更包括但不限于:切换模式、切换设备以及切换音源。示例性的,切换模式可选地为多设备混音模式与单设备模式的切换。切换设备可选地为在单设备模式下的音源设备的切换。切换音源可选地为将多设备混音模式中的至少一个设备,或者是单设备模式下的音源设备播放的音源进行切换。
下面以具体实施例对上述切换场景进行逐一说明,图24为示例性示出的切换模式场景下的控制方法流程示意图,请参照图24,具体包括:
S2401,耳机向手机发送切换模式指示信息。
示例性的,本申请实施例中的耳机可提供与上文所述的各种切换功能对应的控制方案,例如,用户可通过捏合耳机,以指示切换模式。可选地,本申请实施例中所述的用户操作还可以是用户的语音输入,例如用户对准耳机拾音装置(例如话筒)说出指定的语音指令,耳机可检测到用户指令,并将指令输出给手机,手机可对语音指令进行识别。需要说明的是,本申请实施例中的各用户操作仅为示意性举例,本申请不做限定,下文中不再重复说明。
示例性的,耳机接收到用户操作,可向中心设备(即手机)发送切换模式指示信息。在本实施例中,以组网当前的模式为混音模式,即图13a与图13b中所示的模式为例进行说明,相应的,手机接收到切换模式指示信息,可确定将当前的模式,即混音模式切换为单设备模式。当然,如果组网中的当前模式为单设备模式,则手机接收到切换模式指示信息,可确定将当前的模式,即单设备模式切换为混音模式,具体方案将在 S2404~S2407的步骤中说明。
需要说明的是,本申请中所述的用户操作以及手势等仅为示意性举例,例如用户可以通过敲击耳机,以指示切换模式,本申请不做限定。
S2402a,手机向电视发送暂停播放指示信息。
S2402b,手机向平板发送暂停播放指示信息。
示例性的,手机响应于接收到的切换模式指示信息,确定将当前的模式,即混音模式切换为单设备模式后,手机可分别向电视与平板发送暂停播放指示信息,以指示电视与平板暂停播放音频。电视与平板响应于接收到的暂停播放指示信息,停止向中心设备 (即手机)传输音频数据,并且,电视与平板也不会在自身的设备上播放音频。
S2403,手机向耳机输出音频C。
示例性的,手机向耳机输出音频C的输出音频数据。一个示例中,手机仍然可以对手机的音频C进行音频调整,例如上文所述的左右声道的音频的时间差调整,以实现模拟真实的音源方位。具体的,手机的媒体管理器可基于音频C对应的音量参数(音量参数的获取可参照上文,此处不再赘述),调整音频C的输出音量。媒体管理器再基于手机与耳机的相对位置信息,调整音频C在左右声道的音频的时间差(也可以是音色差等,本申请不做限定)以及输出音量衰减等。另一个示例中,手机在单设备模式下,也可以不进行音频源方位的调整,即直接按照图9a中的流程输出音频数据,也就是说,耳机播放的左右声道的音频数据及其对应的输出音量均是一样的,本申请不做限定。
需要说明的是,在本申请实施例中,混音模式切换到单设备模式后,默认为切换后的单设备模式为中心设备。在其他实施例中,用户还可以通过耳机或中心设备(即手机) 控制单设备模式下的音源设备切换,具体实现将在图25中说明。
S2404,耳机向手机输出切换模式指示信息。
示例性的,用户可再次通过捏合耳机(也可以是其他操作,本申请不做限定),以指示切换模式。耳机响应于接收到的用户操作,向中心设备(即手机)发送切换模式指示信息。手机接收到切换模式指示信息,确定将当前的模式,即单设备模式切换到混音模式。需要说明的是,本实例中均是以用户通过耳机进行控制为例,在其他实施例中,用户也可以在中心设备上进行控制,本申请不做限定。
S2405a,手机向电视发送继续播放指示信息。
S2405b,手机向平板发送继续播放指示信息。
示例性的,手机确定将单设备模式切换到混音模式后,分别向电视与平板发送继续播放指示信息,以指示电视与平板继续向手机传输对应的音频。
S2406a,电视向手机输出音频B。
S2406b,平板向手机输出音频A。
示例性的,电视响应于接收到的手机发送的继续播放指示信息,执行断点续传,即,电视将暂停播放之后的音频继续发送至手机。平板同理,此处不再赘述。
S2407,手机向耳机输出混音音频。
示例性的,手机基于本机对应的音频A的音频数据以及接收到的电视的音频B的音频数据和平板的音频C的音频数据,执行上文所述的混音流程,具体实现可参照上文,此处不再赘述。
图25为示例性示出的切换模式场景下的控制方法流程示意图,请参照图25,具体包括:
S2501,耳机向手机发送切换设备指示信息。
示例性的,在单设备模式下,耳机响应于接收到的用户操作(例如可以是敲击三下等,本申请不做限定),向手机发送切换设备指示信息,以指示切换音源设备。
需要说明的是,图25中的流程是在单设备模式下实现的,也就是说,组网需要先将模式切换到单设备模式,才能实现图25中的流程。如上文所述,混音模式切换到单设备模式后,可选地默认的音源设备为中心设备(即手机),用户可在单设备模式下,指示中心设备将当前的音源设备切换为指定的设备,例如电视。
S2502,手机向电视发送继续播放指示信息。
示例性的,手机响应于接收到的切换设备指示信息,确定将音源设备切换为电视。需要说明的是,若用户通过耳机控制,则手机可以响应于接收到的切换设备指示信息,按照顺序依次切换音源设备。顺序可以是基于与耳机的距离,也可以是基于其他规则设置,本申请不做限定。举例说明,手机接收到切换设备指示信息后,可将音源设备按照顺序,切换到电视。若手机再次接收到切换设备指示信息,则可按照顺序,将音源设备切换为平板。当然,用户也可以在手机中控制音源设备切换为指定的设备,本申请不做限定,下文中不再重复说明。
示例性的,在本实施例中,手机响应于接收到的切换设备指示,将停止向耳机传输手机的音频。并且,平板仍然处于暂停播放状态。如上文所述,混音模式转换为单设备模式后,电视与平板均暂停播放音频。示例性的,手机可向电视发送继续播放指示,以指示电视播放音频。
S2503,电视向手机输出音频B。
示例性的,电视响应于接收到的继续播放指示信息,继续向手机发送音频B。需要说明的是,电视可以输出的音频B可以是暂停播放时刻之后的音频,即断电续播。也可以是重新输出音频B,本申请不做限定。
S2504,手机向耳机输出音频B。
示例性的,手机接收耳机发送的音频B的音频数据,对音频数据进行处理后,向耳机输出音频B对应的输出音频数据。一个示例中,手机可以基于图17中的跨设备传输方案进行处理,具体实现可参照图17中的描述,此处不再赘述。另一个示例中,手机可以基于混音方案,对音频B进行处理,处理方式与S2403中的描述类似,此处不再赘述。
S2505,耳机向手机发送切换设备指示信息。
示例性的,如上文所述,用户可通过多次控制耳机,以在单设备模式下顺序切换音源设备。耳机响应于接收到的用户操作,向手机发送切换设备指示信息。
S2506,手机向电视发送暂停播放指示信息。
S2507,手机向平板发送继续播放指示信息。
S2508,平板向手机输出音频A。
示例性的,手机响应于接收到的切换设备指示信息,确定需要将音源设备从电视B切换到平板。相应的,手机向电视发送暂停播放指示信息,以指示电视B暂停播放音频。并且,手机向平板发送继续播放指示信息,以指示平板继续播放音频。
示例性的,电视响应于接收到的暂停播放指示信息,暂停播放音频,即不再向手机传输音频数据。平板响应于接收到的继续播放指示信息,向手机发送暂停后的音频数据。
S2509,手机向耳机输出音频A。
具体描述与S2504类似,此处不再赘述。
需要说明的是,在图24~26中虽未描述,但是在各方案中,各设备输出音频数据之前,均需要按照本申请实施例中的音量控制方案对音频数据进行处理,以对音频数据的输出音量进行调节,具体实现方式可参照上文,此处不再赘述。
图26为示例性示出的切换模式场景下的控制方法流程示意图,请参照图26,具体包括:
S2601,耳机向手机发送切换音源指示信息。
示例性的,耳机接收到用户操作(用户操作可根据实际需求设置,本申请不做限定),该用户操作用于指示切换音源。耳机响应于接收到的用户操作,向手机发送音源切换指示信息。
S2602,手机向电视发送切换音源指示信息。
示例性的,手机响应于接收到的音源切换指示信息,向电视发送切换音源指示信息。
S2603a,电视向手机输出音频D。
示例性的,电视响应于接收到的切换音源指示信息,切换输出的音源,例如将音频A 切换为音频D,并向手机输出音频D对应的音频数据。需要说明的是,对于电视而言,电视检测到音频变更(即音源切换)后,在电视侧将重新执行音量参数获取流程,并对音频D进行输出音量调节,以得到音频D的输出音量。具体细节可参照上文,此处不再赘述。
S2603b,平板向手机输出音频A。
示例性的,本实例中电视切换音源,平板未接收到切换音源的指示,相应的,平板继续向手机输出音频A对应的音频数据。
S2604,手机向耳机输出混音音频。
示例性的,手机将执行上文所述的混音流程。需要说明的是,对于手机而言,其同样检测到音源切换,即电视输入的音源发生切换。相应的,手机侧在混音时,同样需要重新执行音量参数获取流程。手机获取到混音音频的音频数据后,将音频数据输出至耳机,耳机播放混音音频的音频数据。
在一种可能的实现方式中,在单设备模式下,同样可实现音源切换,其原理与图26中类似,同样是由中心设备向当前的音源设备发送音源切换指示信息,可以理解为,本申请实施例中的组网中的控制信息均是由中心设备下发给各从设备的,具体实现可参照上文,此处不再赘述。
在另一种可能的实现方式中,在混音模式下,手机响应于接收到的音源切换指示信息,可以向组网中的各设备发送音源切换指示信息。组网中的各从设备以及手机切换音源,其具体实现与图26中类似,此处不再赘述。
需要说明的是,图24~图26中的未描述部分,均可参照上文实施例中的相关内容,此处不再重复说明。
在一种可能的实现方式中,本申请各实施例中的音频变更场景,即包括音源切换、输出设备切换、音源设备切换(包括多设备协同场景中的音源设备切换以及混音场景中的音源设备切换)等。示例性的,在音频变更后,设备播放的音频会存在几秒钟的过渡时间,导致音频不连贯,影响用户视听体验。本申请实施例中还提供一种音频变更过渡方案,可使得音频变更后平滑过渡,避免音频变更导致的断点问题。具体的,仍以手机为音频输出设备为例进行说明,手机(具体为媒体管理器)在检测到音频变更后,可以使用汉宁窗实现音频切换的淡入淡出。举例说明,如图27所示,以手机切换音源前播放的音频为音频A,切换后播放的音频为音频B为例进行说明。媒体管理器取音频A切换时间点前的预设时长(例如3s)的音频数据(即图中所示的淡出部分),且取音频B开头的预设时长(即3s)的音频数据(即图中所示的淡入部分)。媒体管理器设置汉宁窗,汉宁窗的长度即为预设时长,例如3s。如图27所示,汉宁窗可包括第一子窗口(即前半段) 和第二子窗口(即后半段)。第一子窗口的长度与第二子窗口长度相同。媒体管理器基于第一子窗口对切换后的音频,即音频B的预设时长的音频数据进行处理,以使得淡入部分的音频数据的输出音量逐渐增大。媒体管理器基于第二子窗口对切换前的音频,即音频A的预设时长的音频数据进行处理,以使得淡出部分的音频数据的输出音量逐渐减小。具体的,媒体管理器可基于如下公式获取淡入效果的音频数据与淡出效果的音频数据:
淡入音频数据=淡入音频数据*第一子窗口窗函数 (12)
淡出音频数据=淡出音频数据*第二子窗口窗函数 (13)
由公式(12)和公式(13),媒体管理器可将音频B的淡入部分对应的音频数据乘以汉宁窗的第一子窗口(即窗函数前半段),以得到淡入部分的音频数据(简称淡入音频数据)。以及,媒体管理器将音频A的淡出部分对应的音频数据乘以汉宁窗的第二子窗口(即窗函数后半段),以得到淡出部分的音频数据。
媒体管理器可将获取到的淡入音频数据与淡出音频数据叠加,以获取音频变更所播放的音频数据。举例说明,仍参照图27,示例性的,以手机播放音频A的过程中,切换为音频B为例进行说明。媒体管理器已上文所述的方式,获取音频A的淡出音频数据,并获取音频B的淡入音频数据。媒体管理器可将淡入音频数据与淡出音频数据进行叠加,以得到淡入淡出音频数据,从而在保持原有音频长度的情况下,实现音频的平滑过渡。相应的,媒体管理器向音频驱动传输的音频数据即为图27中所示的叠加后的音频,音频切换过程中,耳机中播放的即为淡入淡出部分。相应的,用户听到的音频即为淡入淡出部分中,音频A的音频数据逐渐减小,音频B的音频数据逐渐增加。并且,在淡入淡出部分播放结束后,继续播放音频B的音频数据。
可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/ 或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。
一个示例中,图28示出了本申请实施例的一种装置2800的示意性框图装置2800可包括:处理器2801和收发器/收发管脚2802,可选地,还包括存储器2803。
装置2800的各个组件通过总线2804耦合在一起,其中总线2804除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都称为总线2804。
可选地,存储器2803可以用于前述方法实施例中的指令。该处理器2801可用于执行存储器2803中的指令,并控制接收管脚接收信号,以及控制发送管脚发送信号。
装置2800可以是上述方法实施例中的电子设备或电子设备的芯片。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的方法。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (27)

1.一种音量控制方法,其特征在于,包括:
电子设备获取第一音频数据;
所述电子设备检测到所述第一音频数据的第一音量不满足第一输出音量范围,基于所述第一音量与所述第一输出音量范围,获取与所述第一音频数据对应的第一音量参数;其中,所述第一音量为所述第一音频数据的预设时长内的音频数据的平均音量,所述第一输出音量范围为预先获取到的;
所述电子设备基于所述第一音量参数对所述第一音频数据进行校正,得到第二音频数据;其中,所述第二音频数据的平均音量为第二音量,所述第二音量在所述第一输出音量范围内;
所述电子设备播放所述第二音频数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述电子设备播放所述第二音频数据时,接收到调节操作,所述调节操作用于调节所述第二音频数据的音量;
在所述调节操作开始至结束过程中,所述电子设备按照第一周期时长,采集所述第二音频数据的音量;
所述电子设备基于采集到的所述第二音频数据的音量,得到第二输出音量范围。
3.根据权利要求2所述的方法,其特征在于,所述电子设备基于采集到的所述第二音频数据的音量,得到第二输出音量范围,包括:
获取所述调节操作开始至结束过程中采集到的所述第二音频数据的音量的平均音量;
在所述调节操作用于指示调大所述第二音频数据的音量的情况下,若采集到的所述第二音频数据的音量的平均音量大于所述第一输出音量范围的最小值,所述第二输出音量范围的最小值为采集到的所述第二音频数据的音量的平均音量,所述第二输出音量范围的最大值为所述第一输出音量范围的最大值;若采集到的所述第二音频数据的音量的平均音量小于所述第一输出音量范围的最小值,所述第二输出音量范围等于所述第一输出音量范围;
或者,
在所述调节操作用于指示调小所述第二音频数据的音量的情况下,若采集到的所述第二音频数据的音量的平均音量小于所述第一输出音量范围的最大值,所述第二输出音量范围的最大值为采集到的所述第二音频数据的音量的平均音量,所述第二输出音量范围的最小值为所述第一输出音量范围的最小值;若采集到的所述第二音频数据的音量的平均音量大于所述第一输出音量范围的最大值,所述第二输出音量范围等于所述第一输出音量范围。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述电子设备播放所述第二音频数据时,所述电子设备按照第二周期时长,采集所述第二音频数据的音量;所述第二周期时长大于所述第一周期时长;
所述电子设备基于采集到的所述第二音频数据的音量,得到第二输出音量范围。
5.根据权利要求4所述的方法,其特征在于,
若采集到的所述第二音频数据的音量大于所述第一输出音量范围的最大值,所述第二输出音量范围的最小值为所述第一输出音量范围的最小值,所述第二输出音量范围的最大值为采集到的所述第二音频数据的音量;或者,
若采集到的所述第二音频数据的音量小于所述第一输出音量范围的最小值,所述第二输出音量范围的最大值为所述第一输出音量范围的最大值,所述第二输出音量范围的最小值为采集到的所述第二音频数据的音量;或者,
若采集到的所述第二音频数据的音量大于或等于所述第一输出音量范围的最小值,且小于或等于所述第一输出音量范围的最大值,所述第二输出音量范围等于所述第一输出音量范围。
6.根据权利要求2至5任一项所述的方法,其特征在于,所述方法还包括:
所述电子设备获取第三音频数据,其中,所述第三音频数据的预设时长内的音频数据的平均音量为第三音量;
所述电子设备检测到所述第三音量不满足所述第二输出音量范围,基于所述第三音量与所述第二输出音量范围,获取与所述第三音频数据对应的第二音量参数;
所述电子设备基于所述第二音量参数对所述第三音频数据进行校正,得到第四音频数据;其中,所述第四音频数据的平均音量为第四音量,所述第四音量在所述第二输出音量范围内;
所述电子设备播放所述第四音频数据。
7.根据权利要求1所述的方法,其特征在于,所述电子设备检测到所述第一音量不满足第一输出音量范围,基于所述第一音量与所述第一输出音量范围,获取与所述第一音频数据对应的第一音量参数,包括:
若所述第一音量大于所述第一输出音量范围的最大值,所述电子设备基于所述第一音量与所述第一输出音量范围的最大值,获取所述第一音量参数;或者,
若所述第一音量小于所述第一输出音量范围的最小值,所述电子设备基于所述第一音量与所述第一输出音量范围的最小值,获取所述第一音量参数。
8.根据权利要求1所述的方法,其特征在于,所述电子设备基于所述第一音量参数对所述第一音频数据进行校正,得到第二音频数据,包括:
所述电子设备基于所述第一音频数据、所述第一音量参数以及输出音量参数,得到所述第二音频数据;
所述输出音量参数包括以下至少之一:音轨音量参数、流音量参数、主音量;
所述音轨音量参数用于指示播放所述第二音频数据的应用的设置音量;
所述流音量参数用于指示所述第一音频数据对应的音频流的设置音量;
所述主音量用于指示所述电子设备的设置音量。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述电子设备获取第五音频数据,其中,所述第五音频数据的预设时长内的音频数据的平均音量为第五音量;
所述电子设备检测到所述第五音量不满足所述第一输出音量范围,基于所述第五音量与所述第一输出音量范围,获取与所述第五音频数据对应的第三音量参数;
所述电子设备基于所述第三音量参数对所述第五音频数据进行校正,得到第六音频数据;其中,所述第六音频数据的平均音量为第六音量,所述第六音量在所述第一输出音量范围内;
所述电子设备向另一电子设备发送所述第六音频数据;所述电子设备与所述另一电子设备通过无线连接进行数据交互;
所述电子设备检测到与所述另一电子设备的连接断开,所述电子设备获取所述第五音频数据中待播放的音频数据,其中,所述待播放的音频数据的预设时长内的音频数据的平均音量为第七音量;
所述电子设备检测到所述第七音量不满足所述第一输出音量范围,基于所述第七音量与所述第一输出音量范围,获取与所述待播放的音频数据对应的第四音量参数;
所述电子设备基于所述第四音量参数对所述待播放的音频数据进行校正,得到第七音频数据;其中,所述第七音频数据的平均音量为第八音量,所述第八音量在所述第一输出音量范围内;
所述电子设备播放所述第七音频数据。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述电子设备获取第八音频数据,其中,所述第八音频数据的预设时长内的音频数据的平均音量为第九音量;所述第八音频数据与所述第一音频数据不同;所述第九音量与所述第一音量不同;
所述电子设备检测到所述第九音量不满足所述第一输出音量范围,基于所述第九音量与所述第一输出音量范围,获取与所述第八音频数据对应的第五音量参数;所述第五音量参数与所述第一音量参数不同;
所述电子设备基于所述第五音量参数对所述第八音频数据进行校正,得到第九音频数据;其中,所述第九音频数据的平均音量为第十音量,所述第十音量在所述第一输出音量范围内;
所述电子设备播放所述第十音频数据。
11.根据权利要求1所述的方法,其特征在于,所述电子设备获取第一音频数据,包括:
所述电子设备从目标应用获取所述第一音频数据;或者,
所述电子设备接收第二电子设备发送的所述第一音频数据。
12.根据权利要求1所述的方法,其特征在于,所述电子设备播放所述第二音频数据,包括:
所述电子设备通过扬声器播放所述第二音频数据;或者,
所述电子设备通过与所述电子设备连接的耳机播放所述第二音频数据。
13.一种电子设备,其特征在于,包括:
一个或多个处理器、存储器;
以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述存储器上,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
获取第一音频数据;
检测到所述第一音频数据的第一音量不满足第一输出音量范围,基于所述第一音量与所述第一输出音量范围,获取与所述第一音频数据对应的第一音量参数;其中,所述第一音量为所述第一音频数据的预设时长内的音频数据的平均音量,所述第一输出音量范围为预先获取到的;
基于所述第一音量参数对所述第一音频数据进行校正,得到第二音频数据;其中,所述第二音频数据的平均音量为第二音量,所述第二音量在所述第一输出音量范围内;
播放所述第二音频数据。
14.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
在所述电子设备播放所述第二音频数据时,接收到调节操作,所述调节操作用于调节所述第二音频数据的音量;
在所述调节操作开始至结束过程中,按照第一周期时长,采集所述第二音频数据的音量;
基于采集到的所述第二音频数据的音量,得到第二输出音量范围。
15.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
获取所述调节操作开始至结束过程中采集到的所述第二音频数据的音量的平均音量;
在所述调节操作用于指示调大所述第二音频数据的音量的情况下,若采集到的所述第二音频数据的音量的平均音量大于所述第一输出音量范围的最小值,所述第二输出音量范围的最小值为采集到的所述第二音频数据的音量的平均音量,所述第二输出音量范围的最大值为所述第一输出音量范围的最大值;若采集到的所述第二音频数据的音量的平均音量小于所述第一输出音量范围的最小值,所述第二输出音量范围等于所述第一输出音量范围;
或者,
在所述调节操作用于指示调小所述第二音频数据的音量的情况下,若采集到的所述第二音频数据的音量的平均音量小于所述第一输出音量范围的最大值,所述第二输出音量范围的最大值为采集到的所述第二音频数据的音量的平均音量,所述第二输出音量范围的最小值为所述第一输出音量范围的最小值;若采集到的所述第二音频数据的音量的平均音量大于所述第一输出音量范围的最大值,所述第二输出音量范围等于所述第一输出音量范围。
16.根据权利要求14所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
在所述电子设备播放所述第二音频数据时,按照第二周期时长,采集所述第二音频数据的音量;所述第二周期时长大于所述第一周期时长;
基于采集到的所述第二音频数据的音量,得到第二输出音量范围。
17.根据权利要求16所述的电子设备,其特征在于,
若采集到的所述第二音频数据的音量大于所述第一输出音量范围的最大值,所述第二输出音量范围的最小值为所述第一输出音量范围的最小值,所述第二输出音量范围的最大值为采集到的所述第二音频数据的音量;或者,
若采集到的所述第二音频数据的音量小于所述第一输出音量范围的最小值,所述第二输出音量范围的最大值为所述第一输出音量范围的最大值,所述第二输出音量范围的最小值为采集到的所述第二音频数据的音量;或者,
若采集到的所述第二音频数据的音量大于或等于所述第一输出音量范围的最小值,且小于或等于所述第一输出音量范围的最大值,所述第二输出音量范围等于所述第一输出音量范围。
18.根据权利要求14至17任一项所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
获取第三音频数据,其中,所述第三音频数据的预设时长内的音频数据的平均音量为第三音量;
检测到所述第三音量不满足所述第二输出音量范围,基于所述第三音量与所述第二输出音量范围,获取与所述第三音频数据对应的第二音量参数;
基于所述第二音量参数对所述第三音频数据进行校正,得到第四音频数据;其中,所述第四音频数据的平均音量为第四音量,所述第四音量在所述第二输出音量范围内;
播放所述第四音频数据。
19.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
若所述第一音量大于所述第一输出音量范围的最大值,基于所述第一音量与所述第一输出音量范围的最大值,获取所述第一音量参数;或者,
若所述第一音量小于所述第一输出音量范围的最小值,基于所述第一音量与所述第一输出音量范围的最小值,获取所述第一音量参数。
20.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
基于所述第一音频数据、所述第一音量参数以及输出音量参数,得到所述第二音频数据;
所述输出音量参数包括以下至少之一:音轨音量参数、流音量参数、主音量;
所述音轨音量参数用于指示播放所述第二音频数据的应用的设置音量;
所述流音量参数用于指示所述第一音频数据对应的音频流的设置音量;
所述主音量用于指示所述电子设备的设置音量。
21.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
获取第五音频数据,其中,所述第五音频数据的预设时长内的音频数据的平均音量为第五音量;
检测到所述第五音量不满足所述第一输出音量范围,基于所述第五音量与所述第一输出音量范围,获取与所述第五音频数据对应的第三音量参数;
基于所述第三音量参数对所述第五音频数据进行校正,得到第六音频数据;其中,所述第六音频数据的平均音量为第六音量,所述第六音量在所述第一输出音量范围内;
向另一电子设备发送所述第六音频数据;所述电子设备与所述另一电子设备通过无线连接进行数据交互;
检测到与所述另一电子设备的连接断开,所述电子设备获取所述第五音频数据中待播放的音频数据,其中,所述待播放的音频数据的预设时长内的音频数据的平均音量为第七音量;
检测到所述第七音量不满足所述第一输出音量范围,基于所述第七音量与所述第一输出音量范围,获取与所述待播放的音频数据对应的第四音量参数;
基于所述第四音量参数对所述待播放的音频数据进行校正,得到第七音频数据;其中,所述第七音频数据的平均音量为第八音量,所述第八音量在所述第一输出音量范围内;
播放所述第七音频数据。
22.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
获取第八音频数据,其中,所述第八音频数据的预设时长内的音频数据的平均音量为第九音量;所述第八音频数据与所述第一音频数据不同;所述第九音量与所述第一音量不同;
检测到所述第九音量不满足所述第一输出音量范围,基于所述第九音量与所述第一输出音量范围,获取与所述第八音频数据对应的第五音量参数;所述第五音量参数与所述第一音量参数不同;
基于所述第五音量参数对所述第八音频数据进行校正,得到第九音频数据;其中,所述第九音频数据的平均音量为第十音量,所述第十音量在所述第一输出音量范围内;
播放所述第十音频数据。
23.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
从目标应用获取所述第一音频数据;或者,
接收第二电子设备发送的所述第一音频数据。
24.根据权利要求13所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
通过扬声器播放所述第二音频数据;或者,
通过与所述电子设备连接的耳机播放所述第二音频数据。
25.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-12任一项所述的方法。
26.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-12任一项所述的方法。
27.一种芯片,其特征在于,包括一个或多个接口电路和一个或多个处理器;所述接口电路用于从电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,使得所述电子设备执行权利要求1-12任一项所述的方法。
CN202210310062.7A 2022-03-28 2022-03-28 音量控制方法及电子设备 Pending CN116866472A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210310062.7A CN116866472A (zh) 2022-03-28 2022-03-28 音量控制方法及电子设备
PCT/CN2023/083111 WO2023185589A1 (zh) 2022-03-28 2023-03-22 音量控制方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210310062.7A CN116866472A (zh) 2022-03-28 2022-03-28 音量控制方法及电子设备

Publications (1)

Publication Number Publication Date
CN116866472A true CN116866472A (zh) 2023-10-10

Family

ID=88199196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210310062.7A Pending CN116866472A (zh) 2022-03-28 2022-03-28 音量控制方法及电子设备

Country Status (2)

Country Link
CN (1) CN116866472A (zh)
WO (1) WO2023185589A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9936156B2 (en) * 2015-09-24 2018-04-03 Samantha WESTERN Volume adjusting apparatus and method
CN109996143B (zh) * 2019-03-07 2021-07-23 上海蔚来汽车有限公司 音量调节方法、装置、系统及音频播放设备和车辆
CN111258532A (zh) * 2020-02-19 2020-06-09 西安闻泰电子科技有限公司 音量自适应调节方法、装置、存储介质及电子设备
CN113676595B (zh) * 2021-07-12 2023-07-21 杭州逗酷软件科技有限公司 音量调节方法、终端设备以及计算机可读存储介质
CN113824835A (zh) * 2021-10-25 2021-12-21 Oppo广东移动通信有限公司 音量控制方法及装置、电子设备及存储介质

Also Published As

Publication number Publication date
WO2023185589A1 (zh) 2023-10-05

Similar Documents

Publication Publication Date Title
WO2021008614A1 (zh) 一种建立通信连接的方法及可穿戴设备
US20100048133A1 (en) Audio data flow input/output method and system
CN113169760B (zh) 无线短距离音频共享方法及电子设备
WO2020253844A1 (zh) 多媒体信息的处理方法、装置和存储介质
WO2019090726A1 (zh) 选择蓝牙设备的方法、终端和系统
US10827455B1 (en) Method and apparatus for sending a notification to a short-range wireless communication audio output device
CN113890932A (zh) 一种音频控制方法、系统及电子设备
CN115002934B (zh) 音频业务处理系统、电子设备及蓝牙耳机
CN110830970A (zh) 蓝牙设备间的音频传输方法、装置、设备及存储介质
CN111556439A (zh) 一种终端的连接控制方法、终端及计算机存储介质
WO2022242528A1 (zh) 一种音量调节方法及终端设备
WO2022213689A1 (zh) 一种音频设备间语音互通的方法及设备
CN115278625A (zh) 蓝牙多媒体包的传输方法、装置、设备和系统
CN112771828B (zh) 一种音频数据的通信方法及电子设备
US20240147128A1 (en) Mode control method, device for bluetooth headset, and computer readable storage medium
CN114513571A (zh) 设备连接方法、装置、电子设备及可读储存介质
CN116137639A (zh) 一种跨设备音频数据传输的方法和电子设备
CN115175159B (zh) 一种蓝牙耳机播放方法及设备
EP4287681A1 (en) Stereo networking method and system, and related apparatus
WO2023185589A1 (zh) 音量控制方法及电子设备
CN114667744B (zh) 实时通信方法、装置和系统
CN113407076A (zh) 启动应用的方法及电子设备
CN113613230B (zh) 一种扫描参数的确定方法及电子设备
WO2022002218A1 (zh) 一种音频控制方法、系统及电子设备
CN116744215B (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