Me gustaría reproducir el clip de sonido del obturador de la cámara nativa en la captura de vista previa de la cámara. Me refiero al clip de sonido que se reproduce cuando se llama al takePicture()
.
¿Cómo podría eso? ¿Alguien puede guiarme por los pasos?Cómo reproducir el sonido de la cámara nativa en Android
Respuesta
Este recurso explica cómo reproducir archivos de audio: https://developer.android.com/guide/topics/media/index.html
Es probable que tenga que proporcionar su propio efecto de sonido del obturador.
Es posible que desee utilizar soundpool
SoundPool soundPool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 0);
int shutterSound = soundPool.load(this, R.raw.camera_click, 0);
y luego reproducir el sonido
soundPool.play(shutterSound, 1f, 1f, 0, 0, 1);
Salida http://developer.android.com/reference/android/media/SoundPool.html para entender los parámetros.
Necesitará un archivo multimedia llamado camera_click.ogg en su proyecto en res/raw. Debería poder usar el sonido predeterminado de Android que puede obtenerse del proyecto de código abierto de Android en la siguiente ubicación (frameworks/base/data/sounds/effects/camera_click.ogg) si su proyecto tiene licencia bajo la licencia de Apache. Si su proyecto no tiene licencia bajo la licencia de Apache, no tengo idea de si puede usarlo o no. Yo no soy un abogado.
Si el archivo de sistema es ahí, se puede utilizar de esta manera:
public void shootSound()
{
AudioManager meng = (AudioManager) getContext().getSystemService(Context.AUDIO_SERVICE);
int volume = meng.getStreamVolume(AudioManager.STREAM_NOTIFICATION);
if (volume != 0)
{
if (_shootMP == null)
_shootMP = MediaPlayer.create(getContext(), Uri.parse("file:///system/media/audio/ui/camera_click.ogg"));
if (_shootMP != null)
_shootMP.start();
}
}
Agregar al principio del código: MediaPlayer _shootMP = null; – Derzu
@Derzu: '_sootMP' en mi caso era un miembro de la clase de la actividad de la cámara. No hay necesidad de volver a crearlo para cada captura. –
En su caso es genial, pero los lectores aún necesitan saber de qué se trata. –
Usted puede utilizar la clase MediaActionSound (disponible de API 16). Por ejemplo:
MediaActionSound sound = new MediaActionSound();
sound.play(MediaActionSound.SHUTTER_CLICK);
No hay volumen para este método? Esto dispara el sonido del obturador a todo volumen, sin importar el volumen configurado en el dispositivo. – Hashman
- 1. ¿Grabar sonido y reproducir sonido modulado en Android?
- 2. Notificación de Android para reproducir sonido solo
- 3. Cómo reproducir tono de llamada/sonido de alarma en Android
- 4. Cómo reproducir un efecto de sonido en Android
- 5. Reproducir sonido con SoundPool
- 6. Cómo reproducir un sonido de notificación de Android
- 7. Cómo reproducir sonido con Qt
- 8. Cómo silenciar el sonido del obturador de la cámara en el teléfono Android
- 9. ¿Cómo puedo reproducir sonido en Java?
- 10. Cómo reproducir un sonido en C#, .NET
- 11. ¿Cómo puedo reproducir un sonido en WinForms?
- 12. ¿Cómo reproducir un sonido de Windows estándar?
- 13. Iniciar la cámara nativa sin mostrar el selector
- 14. Cómo reproducir un archivo de sonido
- 15. Reproducir un sonido cuando se hace clic en Android
- 16. Reproducir (y reproducir) un sonido en safari mobile
- 17. Mala calidad de sonido al grabar/reproducir sonidos - Android SDK
- 18. ¿Cómo grabar y reproducir sonido en la aplicación iPhone?
- 19. Qt - cómo grabar y reproducir sonido simultáneamente
- 20. ¿Hay alguna manera de reemplazar o silenciar el sonido del obturador de la cámara en Android?
- 21. reproducir un sonido cada N milisegundos
- 22. cómo reproducir el sonido del micrófono al altavoz directamente en android?
- 23. ¿Establecer ToggleButton para reproducir el sonido predeterminado al hacer clic?
- 24. Cómo reproducir canciones en Android - phonegap
- 25. ¿Cómo hago para reproducir un sonido de alarma en Python?
- 26. Uso de la actividad de la cámara en Android
- 27. Android - reproducir sonido al hacer clic en el botón - excepción de puntero nulo
- 28. Reproducir sonido múltiple al mismo tiempo
- 29. ¿Cómo realizar operaciones al reproducir sonido en iPhone?
- 30. Cómo capturar una imagen y almacenarla con la cámara Android nativa
De los documentos: "campo de prioridad: la prioridad del sonido. Actualmente no tiene ningún efecto. Use un valor de 1 para compatibilidad futura". – greg7gkb
La licencia de Apache es muy permisiva; puedes usar sus recursos en cualquier proyecto. Por otro lado, es posible buscar el sonido ya disponible en el dispositivo. –