音频设备类别
本节中表达的要求适用于音频设备
音频设备电源状态定义
表 A-3:音频设备电源状态定义
| 状态 | 状态 | 定义 |
|---|---|---|
| D0 | 必需 | 电源开启。设备正在运行。 |
| D1 | 可选 | 功耗低于 D0 状态。设备必须能够在 100 ms 内在 D0 和 D1 状态之间转换。进入和离开此状态时不得丢失任何音频采样。 |
| D2 | 必需 | 功耗低于 D0 状态。设备必须能够在 100 ms 内在 D0 和 D2 状态之间转换。进入和离开此状态时可能会丢失音频采样。 |
| D3 | 必需 | 设备完全关闭或仅消耗极少电力。例如,立体声音响将处于关闭状态,但发光二极管 (LED) 可能保持点亮,并且立体声音响可能正在侦听 IR 命令。 |
如果设备处于 D1 或 D2 状态,则它必须在 100 ms 内恢复。处于 D3 状态的设备可以根据其上电需要花费任意长的时间。策略所有者有责任向系统声明设备上电所需的时间。
所有音频设备都必须能够支持 D0、D2 和 D3 状态。音频设备最好能够支持 D1 状态。D1 和 D2 的区别在于,支持 D1 的设备可以在低功耗模式下保持完整的状态信息。对于支持 D2 的设备,策略所有者或其他软件必须保存所有状态。从 D2 状态切入和切出时,可能会丢失一些音频采样。
请注意,增加 D1 状态是为了让配备数字信号处理器 (DSP) 的音频硬件能够利用 DSP 中的低功耗模式。例如,DSP 可用于实现 Dolby AC-3 解码。暂停时它会停止播放音频,但 DSP 中可能包含数千字节的状态信息。如果 DSP 支持低功耗状态,它就可以关闭,并在之后从其暂停时的精确音频采样位置恢复,而不会丢失状态信息。
音频设备电源管理策略
为实现以下状态转换策略,定义了以下设备特定的运行状态:
播放中。正在播放音频。
录音中:
前台。普通应用程序正在录音。除非被明确指定为低优先级,否则录音被视为前台。
后台。语音识别或语音活动检测正在运行。录音可能会被前台录音或播放抢占。任何音频录音都可以被指定为后台。
全双工。设备同时进行播放和录音。
暂停。文件句柄处于打开状态。只有正在播放、前台录音或处于全双工操作中的设备才可以暂停。后台录音不能暂停。状态是静态的,且绝不会丢失。暂停状态假定设备必须快速转换到恢复状态。播放或录音必须在 100 ms 内恢复。设备从暂停到之后恢复之间不得丢失任何音频采样。
关闭。没有文件句柄处于打开状态。
表 A-4:音频设备电源管理策略
| 当前状态 | 下一状态 | 原因 |
|---|---|---|
| D3 | D0 | 当音频设备接收到恢复命令时,音频设备从关闭状态转换为打开状态,或从暂停状态恢复。 |
| D0 | D1 | 音频设备接收到暂停命令。如果设备支持 D1,则优先进入该状态。否则,设备驱动程序将保存上下文,并将设备置于 D2。 |
| D2/D1 | D0 | 音频设备接收到恢复命令。 |
| D0 | D2 | 音频设备被关闭。音频空闲定时器启动。 |
| D2 | D3 | 音频空闲定时器到期。 |
| D0 | D3 | 音频设备处于后台录音模式并接收到断电命令。 |
当音频设备处于 D0 状态时,除非它处于后台录音模式,否则它将拒绝系统将其转换到 D3 状态的请求。当音频设备处于暂停状态(D1 或 D2)并接收到转换到 D3 状态的请求时,它将保存音频设备的状态并转换到 D3 状态。
由于多媒体应用程序经常快速连续地打开和关闭音频文件,因此建议策略所有者采用空闲定时器,以防止音频硬件发生不必要的关闭(D3 转换)。例如,频繁的电源循环可能会损坏由真空管供电的音频设备。
音频设备唤醒事件
音频设备可以是唤醒设备。例如,面向安全应用设计的 USB 麦克风可能会使用 USB 唤醒机制来指示报警条件。
音频设备最低电源能力
所有音频设备都必须能够支持 D0、D2 和 D3 电源状态。如果设备能够在低功耗状态下保持上下文,则它应声明支持 D1。D2 状态的转换延迟必须小于 100 ms。对于 D3 转换没有延迟限制,但策略所有者应声明所需的时间量。