MediaRecorder.SetMaxDuration(Int32) Метод

Определение

Задает максимальную длительность (в мс) сеанса записи.

[Android.Runtime.Register("setMaxDuration", "(I)V", "GetSetMaxDuration_IHandler")]
public virtual void SetMaxDuration (int max_duration_ms);
[<Android.Runtime.Register("setMaxDuration", "(I)V", "GetSetMaxDuration_IHandler")>]
abstract member SetMaxDuration : int -> unit
override this.SetMaxDuration : int -> unit

Параметры

max_duration_ms
Int32

максимальная длительность в мс (если она равна нулю или отрицательному значению, отключает ограничение длительности).

Атрибуты

Исключения

Комментарии

Задает максимальную длительность (в мс) сеанса записи. Вызовите его после setOutputFormat(), но перед подготовкой(). После того как запись достигнет указанной длительности, на объект будет отправлено android.media.MediaRecorder.OnInfoListener уведомление с кодом #MEDIA_RECORDER_INFO_MAX_DURATION_REACHED what и запись будет остановлена. Остановка происходит асинхронно. Нет никакой гарантии, что средство записи остановится к моменту уведомления прослушивателя.

При использовании контейнера MPEG-4 (#setOutputFormat(int) с OutputFormat#MPEG_4) рекомендуется задать максимальную длительность, которая соответствует варианту использования. Установка больше требуемой длительности может привести к созданию выходного файла большего размера, чем требуется, из-за того, что место, зарезервированное для поля MOOV, ожидающего большие данные о фильмах в этом сеансе записи. Неиспользуемое пространство поля MOOV преобразуется в поле FREE в выходном файле.

Документация по Java для android.media.MediaRecorder.setMaxDuration(int).

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Применяется к