title: AudioRecord: start() status -38
body: <p>I have the following problem:
  I use SpeechRecognizer to identify a few words.
  I use the</p>
  
  <pre><code>public void onResults
  </code></pre>
  
  <p>method to destroy the SpeechRecognizer.</p>
  
  <p>Right after the destruction I initialize an AudioRecord and start recording from the mic. 
  This leads to the following error in my logcat:</p>
  
  <pre><code>12-09 00:44:01.976: E/AudioRecord(21185): start() status -38
  </code></pre>
  
  <p>No exception is thrown in my code. The AudioRecord just does not start properly.
  I am assuming that the SpeechRecognizer does not release the microphone quickly enough,
  because if I add a Thread.sleep(200) in front of the initialization of the AudioRecord, I
  do not experience this issue.</p>
  
  <p>This solution is very bad for obvious reasons. Thus, I have the following question:</p>
  
  <p>How do I check whether the AudioRecord is initialized properly? (I do not get an exception in my code.)</p>
  
  <pre><code>_audioRecord.getState() == AudioRecord.STATE_UNINITIALIZED
  </code></pre>
  
  <p>is false as well.</p>
  
  <p>Or how do I check whether SpeechRecognizer released the microphone properly?</p>
  
  <p>Thanks a lot!</p>