Ich möchte native Kamera Auslöser Tonclip auf Kamera Vorschau erfassen spielen. Ich beziehe mich auf den Soundclip, der gespielt wird, wenn takePicture()
aufgerufen wird.
Wie könnte ich das? Kann mich jemand durch die Stufen gehen?Wie native Kamera Sound auf Android spielen
Antwort
Diese Ressource wird erklärt, wie Audio-Dateien abspielen: https://developer.android.com/guide/topics/media/index.html
Sie werden wahrscheinlich Ihre eigenen Blendenverschlußton Wirkung zur Verfügung zu stellen.
Sie möchten Soundpool verwenden
SoundPool soundPool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 0);
int shutterSound = soundPool.load(this, R.raw.camera_click, 0);
und dann den Sound
soundPool.play(shutterSound, 1f, 1f, 0, 0, 1);
Check out http://developer.android.com/reference/android/media/SoundPool.html zu verstehen, um die Parameter zu spielen.
Sie benötigen eine Mediendatei namens camera_click.ogg in Ihrem Projekt bei res/raw. Sie sollten in der Lage sein, den Android-Standardsound zu verwenden, der von dem Android-Open-Source-Projekt an folgendem Speicherort (frameworks/base/data/sounds/effects/camera_click.ogg) abgerufen werden kann, wenn Ihr Projekt unter der Apache-Lizenz lizenziert ist. Wenn Ihr Projekt nicht unter der Apache-Lizenz lizenziert ist, habe ich keine Ahnung, ob Sie es verwenden können oder nicht. Ich bin kein Anwalt.
Wenn die Systemdatei ist, können Sie es wie folgt verwenden:
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();
}
}
Fügen Sie am Anfang des Codes hinzu: MediaPlayer _shootMP = null; – Derzu
@Derzu: '_sootMP' war in meinem Fall ein Mitglied der Kamera Aktivität. Es muss nicht für jede Aufnahme neu erstellt werden. –
In Ihrem Fall ist großartig, aber Leser müssen immer noch wissen, was es ist. –
können Sie verwenden, um die MediaActionSound Klasse (erhältlich von API 16). Zum Beispiel:
Es gibt kein Volumen für diese Methode? Dadurch wird der Auslöseton bei voller Lautstärke ausgelöst, unabhängig davon, welche Lautstärke am Gerät eingestellt ist. – Hashman
- 1. Android: Stop-Sound-Dateien auf einmal spielen
- 2. Android - spielen verschiedene Sound auf je Sekunde
- 3. Wie System-Tastenklick Sound auf iPad spielen?
- 4. Sound Spielen nach jquery
- 5. Windows Phone Sound spielen
- 6. spielen Sound ausgelöst durch Klick auf Formularsteuerung
- 7. Android Push-Benachrichtigung, wie Standard-Sound zu spielen
- 8. Swift - AVAudioPlayer nicht spielen Sound
- 9. System Sound mit Sounds spielen
- 10. reagieren nativer Bei Ereignis Sound spielen
- 11. So spielen Sie einen Sound-Effekt in Android
- 12. Die bequemste Art, in iOS-Spielen Sound zu spielen?
- 13. Android Studio: Sound-Benachrichtigung auf Build Erfolg
- 14. Videostream auf Android spielen
- 15. Nicht in der Lage Sound auf iPhone mit JavaScript zu spielen, aber in der Lage, auf Android zu spielen
- 16. einen System-Sound in tvos Spielen [swift]
- 17. Android Play Hintergrund Sound
- 18. Wie Sound auf Klick EditText
- 19. Bluetooth-Sound-Ausgabe auf Android
- 20. Android - Sound auf Knopf klicken - Nullzeiger Ausnahme
- 21. Objekterkennung auf Android-Kamera
- 22. Android Sound: seekTo und setPlaybackRate
- 23. Wie pausieren/spielen kann Sound in AS3 Flash einbetten
- 24. Start Native Kamera ohne Anzeige der Auswahl
- 25. Öffnen Sie die native Android-Kamera mit OpenCV
- 26. Native App: Android löschen Kamera erfasst Bild durch meine App
- 27. Woher weiß ich, ob ein Sound auf Android beendet ist?
- 28. Instabile Kamera Verhalten auf Android
- 29. android Mediaplayer nicht zu schnell spielen
- 30. Android, wie für jedes Element in Recyclerview verschiedenen Sound zu spielen
Aus dem Dokument: "Prioritätsfeld: die Priorität des Sounds. Derzeit hat keinen Effekt. Verwenden Sie einen Wert von 1 für die zukünftige Kompatibilität." – greg7gkb
Apache-Lizenz ist sehr freizügig; Sie können ihre Ressourcen in jedem Projekt verwenden. Auf der anderen Seite ist es möglich, nach dem Ton zu suchen, der bereits auf dem Gerät verfügbar ist. –