public final class AudioTimestamp
extends Object
java.lang.Object | |
↳ | android.media.AudioTimestamp |
以帧为单位对假定音频流进行分组的位置,以及该帧进入或离开该设备上音频处理管道的估计时间。 这可以用来协调事件和与外部环境的交互。
时间是基于实施尽最大努力,使用系统可用的任何知识,但不能解释执行未知的任何延迟。
Constants |
|
---|---|
int |
TIMEBASE_BOOTTIME 时钟单调,包括系统中的暂停时间或其等效值,与 |
int |
TIMEBASE_MONOTONIC 系统中的时钟单调或等效,与 |
Fields |
|
---|---|
public long |
framePosition 相对于假定音频流开始的位置。 |
public long |
nanoTime 与音频管道中的帧关联的时间。 |
Public constructors |
|
---|---|
AudioTimestamp() |
Inherited methods |
|
---|---|
From class java.lang.Object
|
int TIMEBASE_BOOTTIME
时钟单调,包括系统中的暂停时间或等效时间,与 elapsedRealtimeNanos()
单位和时间 elapsedRealtimeNanos()
相同。
常数值:1(0x00000001)
int TIMEBASE_MONOTONIC
系统上的时钟单调或等效,与 nanoTime()
单位和时基相同。
常量值:0(0x00000000)
long framePosition
相对于假定音频流开始的位置。
当通过 AudioRecord.getTimestamp(AudioTimestamp, int)
获得时,所有64位的位都是有效的。
当通过 AudioTrack.getTimestamp(AudioTimestamp)
获得时,位置的低位32位以与 AudioTrack.getPlaybackHeadPosition()
类似的包装帧单位。
long nanoTime
与音频管道中的帧关联的时间。
当通过AudioRecord.getTimestamp(AudioTimestamp, int)
获得时,这是以framePosition
所指的帧被捕获时的估计时间(以纳秒为framePosition
)。 时基为TIMEBASE_MONOTONIC
或TIMEBASE_BOOTTIME
,具体取决于AudioRecord.getTimestamp(AudioTimestamp, int)
使用的时基参数。
当通过 AudioTrack.getTimestamp(AudioTimestamp)
获得时,这是帧被呈现或承诺呈现的估计时间,其时基为 TIMEBASE_MONOTONIC
。