Bilal Rabbani
Bilal Rabbani

Reputation: 1286

MediaRecorder.AudioSource.VOICE_RECOGNITION is available or not

I'm working on a project in which I have to use an Android Development Board, just like following, to record audio via MIC, specifically speech.

For my audio, from MIC, I want it to be filtered with background noise. I know I can apply some noise suppression algorithms to filter it but I want to use the built-in feature VOICE_RECOGNITION as audio source, this, to filter background noise.

AudioRecord audioRecord = new AudioRecord(AudioSource.MIC, SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT, minBufSize);
AudioRecord audioRecord = new AudioRecord(AudioSource.VOICE_RECOGNITION, SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT, minBufSize);

This, VOICE_RECOGNITION says:

Microphone audio source tuned for voice recognition if available, behaves like DEFAULT otherwise.

It says 'if available', it make sense that this feature is not available in all devices neither it is an Android OS part because if it is a part of OS, it should be available in all devices. It means, it is something related to hardware and all the manufacturer probably are not providing this feature.

My questions:

  1. How I can know whether this feature is available or not before I go for purchase?
  2. Is this feature is really related to hardware, as I assumed?
  3. If this feature is not available in my respective device, How I can bring it on ?

NOTE: All the Android Development Boards, defined above, can run Android JellyBean 4.2.2.

NOTE: I have Samsung Galaxy S2 and this feature is available in it. Tested, works fine.

Any extra details would be appreciated. Thanks

Upvotes: 3

Views: 6289

Answers (2)

codekitty
codekitty

Reputation: 1438

VOICE_RECOGNITION has the least (often no) pre-processing. The default MIC input has the built-in processing.

Upvotes: 1

tbdx
tbdx

Reputation: 21

My understanding is the noise cancellation is achieved by utilising a 2nd dedicated mic which captures the ambient noise seperately. I believe the hardware related requirement is the presence of this dedicated mic.

Looking at tech specs for the Galaxy S2 you can see the feature noted as:

Active noise cancellation with dedicated mic

source: http://www.gsmarena.com/samsung_i9100_galaxy_s_ii-3621.php

As another example, the Nexus 5 mentions in the tech specs:

Dual microphones

source: https://www.google.com.au/nexus/5/

Thanks

Upvotes: 2

Related Questions