AudioTrack.Play 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
开始播放 AudioTrack。
[Android.Runtime.Register("play", "()V", "GetPlayHandler")]
public virtual void Play ();
[<Android.Runtime.Register("play", "()V", "GetPlayHandler")>]
abstract member Play : unit -> unit
override this.Play : unit -> unit
- 属性
例外
如果轨迹未正确初始化,则为
注解
开始播放 AudioTrack。
如果 track 的创建模式为 #MODE_STATIC
,则必须在 play () 之前 (#write(byte[], int, int)
、#write(byte[], int, int, int)
、#write(short[], int, int)
、#write(short[], int, int, int)
#write(float[], int, int, int)
、 或 #write(ByteBuffer, int, int)
) 调用其中一个写入方法。
如果模式为 #MODE_STREAM
,则可以选择在调用 play () 之前对数据路径进行定基,方法是从构造函数) 写入 bufferSizeInBytes
(。 如果不先调用 write () ,或者调用 write () 但数据量不足,则曲目将在播放时处于运行不足状态 () 。 在这种情况下,在数据路径填充到特定于设备的最低级别之前,播放不会实际开始播放。 在调用 stop () 后恢复音频播放时,将路径填充到最低级别时,此要求也成立。 同样,由于无法使用足够数据及时调用 write () ,在跟踪中断后,需要再次填满缓冲区。 为了便于移植,应用程序应将数据路径设置为写入数据所允许的最大值,直到 write () 方法返回较短的传输计数。 这允许 play () 立即启动,并减少运行不足的可能性。
android.os.Build.VERSION_CODES#S
在开始播放的最低级别中,可以使用 获取#getStartThresholdInFrames()
并使用 进行设置#setStartThresholdInFrames(int)
。
的 android.media.AudioTrack.play()
Java 文档。
此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。