studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones android camera

para - manual de programacion android pdf



Cómo reproducir el sonido nativo de la cámara en Android (4)

Me gustaría reproducir el clip de sonido del obturador de cámara nativo en la captura de vista previa de la cámara. Me refiero al clip de sonido que se reproduce cuando se llama a takePicture() .
¿Cómo podría eso? ¿Alguien me puede guiar a través de los pasos?


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 a reproducir el sonido

soundPool.play(shutterSound, 1f, 1f, 0, 0, 1);

Echa un vistazo a http://developer.android.com/reference/android/media/SoundPool.html para comprender 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 de Apache. Si su proyecto no tiene licencia bajo la licencia de Apache, no tengo idea si puede usarlo o no. Yo no soy un abogado.



Puede usar la clase MediaActionSound (disponible en API 16). Por ejemplo:

MediaActionSound sound = new MediaActionSound(); sound.play(MediaActionSound.SHUTTER_CLICK);


Si el archivo del sistema está ahí, puedes usarlo así:

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(); } }