AudioTrack.SetBufferSizeInFrames(Int32) 方法

定义

限制应用程序写入的 AudioTrack 缓冲区的有效大小。

[Android.Runtime.Register("setBufferSizeInFrames", "(I)I", "GetSetBufferSizeInFrames_IHandler", ApiSince=24)]
public virtual int SetBufferSizeInFrames (int bufferSizeInFrames);
[<Android.Runtime.Register("setBufferSizeInFrames", "(I)I", "GetSetBufferSizeInFrames_IHandler", ApiSince=24)>]
abstract member SetBufferSizeInFrames : int -> int
override this.SetBufferSizeInFrames : int -> int

参数

bufferSizeInFrames
Int32

帧中请求的缓冲区大小

返回

帧或错误代码中的实际缓冲区大小, #ERROR_BAD_VALUE#ERROR_INVALID_OPERATION

属性

注解

限制应用程序写入的 AudioTrack 缓冲区的有效大小。

写入此 AudioTrack 不会填充超出此限制的缓冲区。 如果使用阻止写入,则写入将阻止,直到数据可以符合此限制。

更改此限制会修改与此跟踪的缓冲区关联的延迟。较小的大小会降低延迟,但由于缓冲区不足,可能会出现更多的故障。

使用的实际大小可能不等于此请求的大小。 限制为最大 #getBufferCapacityInFrames()有效范围。 也可能因内部原因略有调整。 如果 bufferSizeInFrames 小于零, #ERROR_BAD_VALUE 则将返回。

所有 API 级别的 PCM 音频都支持此方法。 API 级别 33 及更高版本中支持压缩音频。 对于压缩流,帧的大小被视为正好是一个字节。

适用于 . 的 android.media.AudioTrack.setBufferSizeInFrames(int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于