Android AudioRecord artefacto
Cuando uso Androids AudioRecord para grabar desde el micrófono, consigo este artefacto molesto
- Cómo hacer nuestra propia pantalla de bloqueo en Android en lugar de la pantalla de bloqueo predeterminado
- Botón androide con doble borde y degradado
- Diseño de la interfaz de usuario de las aplicaciones de Android para que se vea el mismo en todos los modelos de teléfono?
- Mostrar siempre el título del marcador de mapa en Android
- Sincronización de contactos con mi propia aplicación como skype o whatsapp
¿Hay una manera de evitar o quitar esto? ¿Qué es? ¿O lo hago porque hice algo incorrecto en la configuración (pero todo funciona bien).
Aquí está mi configuración de AudioRecord:
sampleRateInHz = 44100; channelConfigRec = AudioFormat.CHANNEL_IN_MONO; audioFormat = AudioFormat.ENCODING_PCM_16BIT; bufferSizeInBytesRec = AudioRecord.getMinBufferSize(sampleRateInHz, channelConfigRec, audioFormat); audioSource = AudioSource.MIC;
Estoy bastante seguro de que mi código es correcto, porque puedo grabar todo bien, pero hay un clic al principio.
- Prueba de NaN en Java
- Android eclipse button Evento OnClick
- Android Alert Dialog no puede encontrar la vista
- ¿Es posible llamar a una función de extensión Java de Xalan en Android?
- ¿Cuáles son las implicaciones de portabilidad de usar el NDK?
- Transmitir audio desde un dispositivo Android a un servidor
- Anotación @Override en Android
- Android FragmentManager BackStackRecord.run lanzando NullPointerException
Pruebe a configurar el audioSource como AudioSource.VOICE_RECOGNITION. En algunos dispositivos, en particular los dispositivos HTC, he descubierto que hay menos filtración en curso con esa fuente. Y con ICS y después de eso es la forma oficial de las cosas se supone que sea.En el documento de compatibilidad de Android 4.0 dispositivo se formaliza:
Cuando una aplicación ha comenzado a grabar una secuencia de audio usando la fuente de audio android.media.MediaRecorder.AudioSource.VOICE_RECOGNITION:
- El procesamiento de reducción de ruido, si está presente, DEBE estar desactivado.
- El control automático de ganancia, si está presente, DEBE ser desactivado.
Creo que el artefacto que se muestra es el efecto secundario de un filtro digital que se está utilizando para procesar el audio grabado. Cada filtro digital tiene un cierto retardo. Por ejemplo, si el filtro tiene N coeficientes, su retraso es N / 2. Esencialmente, eso significa que el filtro va a comenzar a comportarse normal después de que primero N / 2 muestras de la señal audio hayan pasado a través de él. Esta debe ser la razón para el artefacto que está teniendo. Espero que esto ayude.