java.lang.RuntimeException в android.media.MediaRecorder.stop [duplicate]

Для вложенных словарей и списков я собрал пару идей, чтобы сделать это: https://gist.github.com/NullVoxPopuli/f95baaa48b4e9854dcfe (слишком много кода для отправки здесь) ~ 100 строк

25
задан DigCamara 25 April 2013 в 19:31
поделиться

2 ответа

Посмотрите документацию :

Обратите внимание, что исключение RuntimeException намеренно бросается в приложение, если не были получены достоверные аудио / видео данные, когда stop () называется. Это происходит, если stop () вызывается сразу после start (). Неисправность позволяет приложению предпринять соответствующие действия для очистки выходного файла (например, удалить выходной файл), поскольку выходной файл неправильно сконфигурирован, когда это произойдет.

Другими словами : Dalvik специально делает исключение. Вы должны обработать его для очистки после своего приложения. Вам придется обрабатывать его следующим образом:

private void stopRecording() {
    try{
        recorder.stop();
    }catch(RuntimeException stopException){
        //handle cleanup here
    }
    camera.lock();
}
47
ответ дан DigCamara 15 August 2018 в 20:13
поделиться
  • 1
    есть ли другой способ сделать это? – bhavesh kaila 7 January 2016 в 08:34
  • 2
    в моем случае это не немедленный старт / остановка, или медиапреследование с помощью mediarecorder просто не работает? stackoverflow.com/a/34986043/4548520 Я не понимаю, почему эта проблема возникает, когда я останавливаю запись на экране – user25 29 July 2017 в 20:12

У меня была аналогичная ошибка -1007, когда я записывал звук с помощью AMR_WB, но оказалось, что проблема в том, что я забыл установить частоту дискретизации.

mediaRecorder.setAudioSamplingRate(16000);
1
ответ дан soshial 15 August 2018 в 20:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: