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()
. Это также может быть немного изменено по внутренним причинам. Если буферSizeInFrames меньше нуля, #ERROR_BAD_VALUE
возвращается.
Этот метод поддерживается для звука PCM на всех уровнях API. Сжатый звук поддерживается на уровнях API 33 и более поздних версий. Для сжатых потоков размер кадра считается ровно одним байтом.
Документация по Java для android.media.AudioTrack.setBufferSizeInFrames(int)
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.