2015-07-13 4 views
0

Я использую функцию аудиозаписи в своем приложении. Через класс Media Recorder у нас может быть опция SetMaxDuration (миллисекунды), где, как и в классе Audio Recorder, я не могу найти время ограничения для записи аудио. Пожалуйста, помогите мне сделать это.Как установить лимит для записи звука С помощью класса звукового рекордера?

+0

Чтобы остановить запись с помощью класса звукозаписывающего устройства, вы можете использовать поток со временем ожидания 1000 мс и получить счетчик в том, который имеет некоторый максимальный предел, и когда это ограничение достигнуто, вы можете остановить запись в потоке. –

ответ

0

Вы можете попробовать это:

handler=new Handler(); 
Runnable r=new Runnable() 
{ 
public void run() 
{ 
    recorder.stop(); 
    recorder.release(); 
    } 

}; 
handler.postDelayed(r, 60000); 
0

Пожалуйста, попробуйте следующий код для установленного максимального предела.

recorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); 
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
recorder.setOutputFile(outputFile.getAbsolutePath()); 

recorder.setMaxDuration(60000); 
recorder.prepare(); 
recorder.start(); 

Надеюсь, он отлично работает для вас.