2013-09-26 3 views
3

Я хочу записывать видео разной длины, и я не могу записать очень короткий.Android MediaRecorder - как записывать очень короткое видео (остановка завершается с ошибкой RuntimeException)

Когда я получаю видео под одну секунду длины, MediaRecorder.stop начинает терпеть неудачу (остановка не удалось) и бросить RuntimeException.

Я знаю, что это документированное поведение, но есть ли какое-либо обходное решение?

Я бы не хотел входить в НДК (а также не знаю, поможет ли это).

Я также подумал о записи длинного видео, а затем разрезаю его. Но может быть проблема с резкой вне I-кадров.

ответ

0

Работа, которую я видел, заключалась в записи как минимум двух секунд.

Если пользователь прекращает запись до этого, запрос задерживается, и остановка выполняется перед тем, как будут записаны две секунды.

+0

Я думал об этом, но потом мне нужно было как-то отрезать видео. Также он не будет работать, если пользователь записывает два коротких видео в последовательности. – David

+0

Вы просто вызываете MediaRecorder.stop до двух секунд позже, после чего пользователь на самом деле нажал клавишу остановки. Видео будет слишком длинным для этого количества времени. Каковы последствия этой ситуации в ваших приложениях? Может быть, это просто терпимо? – jboi

+0

Мне просто нужно иметь возможность записывать видеоролики секунд с минимальной задержкой. В принципе, если бы я быстро нажал кнопку запуска/остановки, он должен создать набор очень коротких видеороликов. – David

 Смежные вопросы

  • Нет связанных вопросов^_^