Je voudrais jouer le clip sonore de l'obturateur de caméra natif sur la capture d'aperçu de la caméra. Je parle du clip audio joué quand takePicture()
est appelé.
Comment pourrais-je cela? Quelqu'un peut-il me promener à travers les étapes?Comment jouer le son de la caméra native sur Android
Répondre
Cette ressource explique comment lire des fichiers audio: https://developer.android.com/guide/topics/media/index.html
Vous aurez probablement à fournir votre propre effet sonore de l'obturateur.
Vous pouvez utiliser SOUNDPOOL
SoundPool soundPool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 0);
int shutterSound = soundPool.load(this, R.raw.camera_click, 0);
puis jouer le son
soundPool.play(shutterSound, 1f, 1f, 0, 0, 1);
Découvrez http://developer.android.com/reference/android/media/SoundPool.html de comprendre les paramètres.
Vous aurez besoin d'un fichier multimédia appelé camera_click.ogg dans votre projet sur res/raw. Vous devriez être en mesure d'utiliser le son par défaut Android qui peut être obtenu à partir du projet open source Android à l'emplacement suivant (frameworks/base/données/sons/effets/camera_click.ogg) si votre projet est sous licence Apache. Si votre projet n'est pas sous licence Apache, je ne sais pas si vous pouvez l'utiliser ou non. Je ne suis pas avocat.
Si le fichier système est là, vous pouvez l'utiliser comme ceci:
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();
}
}
Ajouter au début du code: MediaPlayer _shootMP = null; – Derzu
@Derzu: '_sootMP' dans mon cas était un membre de la classe de l'activité de la caméra. Il n'est pas nécessaire de le recréer pour chaque capture. –
Dans votre cas c'est génial, mais les lecteurs ont encore besoin de savoir ce que c'est. –
Vous pouvez utiliser la classe MediaActionSound (disponible à partir de l'API 16). Par exemple:
MediaActionSound sound = new MediaActionSound();
sound.play(MediaActionSound.SHUTTER_CLICK);
Il n'y a pas de volume pour cette méthode? Cela fait exploser le son de l'obturateur à plein volume, quel que soit le volume réglé sur l'appareil. – Hashman
- 1. Jouer le son sur l'iPhone sans ressources
- 2. Jouer le son sur un événement tactile?
- 3. Comment jouer un son sur l'iPhone
- 4. Jouer le son d'une fréquence particulière en android
- 5. Jouer le son sans onClickListener
- 6. Jouer du son sur tous les boutons (Android =
- 7. Jouer le son Javascript/Jquery
- 8. Arrêt rapide de la caméra sur Android
- 9. Essayer de jouer son sur l'iPhone
- 10. arrêter la caméra cliquez sur le son par programmation dans android
- 11. Comment jouer iPhone Tap son?
- 12. Intégrer la vidéo et jouer sur Android
- 13. Empêcher la capture de caméra sur le téléphone Android
- 14. Comment répondre automatiquement appel et jouer son pré-enregistrée sur l'appelant et DTMF sur Android
- 15. Comment jouer la chanson dans Android - phonegap
- 16. Jouer le son qu'une oscillation/vibration ferait
- 17. Jouer le son dans un navigateur mobile?
- 18. Comment jouer son et animations dans MVVM
- 19. Aperçu de la caméra Superposition de l'interface utilisateur sur Android?
- 20. iPhone - Comment jouer un son sur un bouton tactile?
- 21. Jouer simultanément son en C#
- 22. Android - la fonctionnalité de la caméra howto
- 23. Intentions de caméra Android
- 24. Comment jouer un son en C#, .NET
- 25. Détection de caméra Android
- 26. Forcer la résolution de la caméra Android
- 27. Android Reporter à la caméra
- 28. Jouer la vidéo et le son avec HTML5
- 29. Jouer du son avec OpenAL
- 30. Jouer du son en C++
De la docs: "champ prioritaire: la priorité du son n'a actuellement aucun effet.Utilisez la valeur 1 pour une compatibilité future." – greg7gkb
La licence Apache est très permissive; vous pouvez utiliser ses ressources dans n'importe quel projet. D'autre part, il est possible de rechercher le son déjà disponible sur l'appareil. –