Quiero desarrollar una pequeña aplicación de Android para medir el nivel de ruido actual (probablemente en dB). Pero no tengo idea de qué buscar en las libs. No quiero grabar el ruido. ¿Alguien puede darme un puntero a qué clases mirar?Nivel de ruido de consulta en Android
8
A
Respuesta
4
recomiendo mirar en estas clases:
android.media.AudioFormat
android.media.AudioManager
android.media.AudioTrack
que usamos en el Blinkendroid audio package hace poco tiempo.
0
El siguiente fragmento de código muestra cómo obtuvimos el nivel de ruido en el pasado. Lamentablemente, la documentación no indica qué unidad devuelve #getMaxAmplitude().
// Start recording but don't store data
MediaRecorder mediaRecorder = new MediaRecorder();
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mediaRecorder.setOutputFile("/dev/null");
mediaRecorder.prepare();
mediaRecorder.start();
// Obtain maximum amplitude since last call of getMaxAmplitude()
while(someCondition) {
int amplitude = mediaRecorder.getMaxAmplitude();
}
// Don't forget to release
mediaRecorder.reset();
mediaRecorder.release();
1
Para mí 'maxAmplitude
' no fue útil. Después de un día de investigación, finalmente alcancé mi objetivo. Puede encontrar mi solución aquí: Android: AudioRecord Class Problem: Callback is never called
Cuestiones relacionadas
- 1. Android algoritmo de ruido de brújula
- 2. Android: takePicture() no hace ruido
- 3. Efecto de ruido en el fondo de Android
- 4. Estimación de ruido/medición de ruido en la imagen
- 5. ¿Deshabilita la cancelación de ruido para micrófono en Android (1.5)?
- 6. Perlin nivel de detalle de ruido. ¿Cómo hacer zoom en un paisaje?
- 7. Redes de nivel de paquetes en Android
- 8. Tasa de bloqueo de la aplicación iOS: nivel de ruido de fondo?
- 9. Algoritmo de ruido Perlin
- 10. Cancelación de ruido activo
- 11. Filtro de datos del acelerómetro ruido
- 12. JavaScript ruido
- 13. Detección de ruido de viento
- 14. variables de ámbito Android nivel de aplicación
- 15. Eclipse Android Nivel de API de cambio
- 16. Mongo: consulta por clave un nivel profundo
- 17. Inhabilitar cancelación de ruido HTC
- 18. Android: Nivel API VS. Android versión
- 19. android: theme = "@ android: style/Theme.NoTitleBar.Fullscreen" funciona en el nivel de aplicación pero no en el nivel de actividad. ¿Cualquier pista?
- 20. Ruido marrón en el cacao
- 21. CAML Consulta para seleccionar carpetas de nivel superior solo
- 22. obtener nivel de batería en el widget de Android
- 23. Android: Uso de PopupMenu en el nivel de API 9
- 24. Sqlite Suprimir sintaxis de consulta en Android
- 25. Nivel de batería en Phonegap
- 26. Valgrind 'ruido', ¿qué significa?
- 27. Alisar ruido de perlas de baja octava
- 28. Función de gradiente de ruido Perlin
- 29. Obtener nivel de batería y estado en Android
- 30. Reduce el interbloqueo en el nivel de PAGE en la consulta de actualización en MS SQL
He echado un vistazo a esas, me parece que tendría que grabar un archivo, procesar inmediatamente ese archivo para obtener el nivel de ruido, repito, lo cual sería extremadamente ineficiente. No hay acceso directo al micrófono allí ... – fredley
Quizás estas tres clases en el repositorio puedan ayudarlo allí: http://code.google.com/p/blinkendroid/source/browse/trunk/blinkendroid/src/org/cbase/blinkendroid/audio /? r = 96 Hemos grabado, procesado y visualizado audio en este proyecto, pero lo dejamos caer otra vez. – keyboardsurfer
Tenía la esperanza de hacerlo sin grabar, pero lo comprobaré. – Sebi