Como evitar o controle automático de ganho com o AudioRecord?

Como posso fazer gravações de áudio usandoandroid.media.AudioRecord sem nenhum processamento sofisticado de sinal dependente de fabricante como o controle automático de ganho (AGC) e / ou equalização, supressão de ruído, cancelamento de eco, ... apenas o sinal de microfone puro?

fundo

MediaRecorder.AudioSource fornece nove constantes,

DEFAULT eMIC inicialmente estando lá,VOICE_UPLINK, VOICE_DOWNLINKeVOICE_CALL adicionado no nível 4 da API,CAMCORDER eVOICE_RECOGNITION adicionado na API 7,VOICE_COMMUNICATION adicionado na API 11,REMOTE_SUBMIX adicionado na API 19, mas não disponível para aplicativos de terceiros.

Mas nenhum deles faz um trabalho limpo em todos os smartphones. Em vez disso, eu tenho que descobrir o que parece, qual dispositivo usa quais combinações de blocos de processamento de sinal para os quaisMediaRecorder.AudioSource constante.

Seria bom ter uma décima constante comoPURE_MIC adicionado no nível 20 da API.

Mas enquanto isso não estiver disponível, o que posso fazer em vez disso?

questionAnswers(4)

yourAnswerToTheQuestion