Domanda

Sto scrivendo un'applicazione che utilizza MediaRecorder per la registrazione audio. (Io uso Android 2.1)

  1. Prima di iniziare la registrazione voglio sapere lo stato del microfono (è occupato o no)?
  2. Se il microfono occupato, posso ottenere l'accesso esclusivo ad esso?

Grazie in anticipo!

È stato utile?

Soluzione

Risposta a 1 domanda: Dopo aver letto molti articoli mi sono reso conto che era impossibile.

Altri suggerimenti

E 'una vecchia domanda, ma mostrare il mio modo di risolvere questo problema. Forse qualcuno avrà bisogno di questo aiuto. Nota:. È un modo sporco, ma ha funzionato per me

Puoi try / catch MediaRecorderObject.start (). Si otterrà un'eccezione se il microfono è occupato

MediaRecorder myAudioRecorder = new MediaRecorder();
myAudioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
myAudioRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
myAudioRecorder.setAudioEncoder(MediaRecorder.OutputFormat.AMR_NB);
myAudioRecorder.setOutputFile(outputFile);

try {
        myAudioRecorder.prepare();
        myAudioRecorder.start();

    }
    catch (Exception exception) {
        Toast.makeText(getApplicationContext(), "Mic in use", Toast.LENGTH_LONG).show();

    }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top