Chciałbym odtworzyć natywny klip dźwiękowy migawki aparatu na przechwytywanie podglądu kamery. Mam na myśli klip dźwiękowy odtwarzany po wywołaniu takePicture()
.
Jak mogłem to zrobić? Czy ktoś może przejść przez schody?Jak odtwarzać dźwięk z natywnego aparatu na Androidzie
Odpowiedz
Ten zasób wyjaśniono, jak odtwarzać pliki audio: https://developer.android.com/guide/topics/media/index.html
Prawdopodobnie będziesz musiał dostarczyć swój własny efekt dźwiękowy migawki.
Możesz użyć SoundPool
SoundPool soundPool = new SoundPool(1, AudioManager.STREAM_NOTIFICATION, 0);
int shutterSound = soundPool.load(this, R.raw.camera_click, 0);
a następnie odtwarzać dźwięk
soundPool.play(shutterSound, 1f, 1f, 0, 0, 1);
Check out http://developer.android.com/reference/android/media/SoundPool.html zrozumieć parametry.
Będziesz potrzebował pliku multimedialnego o nazwie camera_click.ogg w swoim projekcie na res/raw. Powinieneś być w stanie użyć dźwięku domyślnego Androida, który można uzyskać z projektu open source Android w następującej lokalizacji (frameworks/base/data/sounds/effects/camera_click.ogg), jeśli twój projekt jest licencjonowany na podstawie licencji Apache. Jeśli twój projekt nie jest objęty licencją Apache, nie mam pojęcia, czy możesz go użyć, czy nie. Nie jestem prawnikiem.
Jeżeli plik systemowy jest tam, można go używać tak:
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();
}
}
Dodaj na początku kodu: MediaPlayer _shootMP = null; – Derzu
@Derzu: '_sootMP' w moim przypadku był członkiem klasy aktywności kamery. Nie ma potrzeby, aby odtwarzać go dla każdego przechwytywania. –
W twoim przypadku jest świetny, ale czytelnicy wciąż muszą wiedzieć, co to jest. –
Można użyć klasy MediaActionSound (dostępnym API 16). Na przykład:
MediaActionSound sound = new MediaActionSound();
sound.play(MediaActionSound.SHUTTER_CLICK);
Nie ma woluminu dla tej metody? Rozbrzmiewa dźwięk migawki przy pełnej głośności, bez względu na to, jaką głośność ustawiono na urządzeniu. – Hashman
- 1. jak odtwarzać dźwięk z mikrofonu do głośnika bezpośrednio na Androidzie?
- 2. Jak odtwarzać dźwięk jak najszybciej?
- 3. Jak odtwarzać dźwięk z biblioteki w AS3?
- 4. Jak odtwarzać dźwięk powiadomienia z Androidem
- 5. Zatrzymaj kliknięcie aparatu kliknij dźwięk programowo w Androidzie
- 6. Android: Programowo programuje dźwięk migawki aparatu fotograficznego
- 7. Jak wyciszyć dźwięk migawki aparatu na telefonie z Androidem
- 8. iOS - Jak odczytać dźwięk ze strumienia i odtwarzać dźwięk
- 9. Jak odtwarzać dźwięk w Qt5 (migracja Qt4)?
- 10. Jak odtwarzać dźwięk (alert) w aplikacji java?
- 11. Qt - jak nagrywać i odtwarzać dźwięk jednocześnie
- 12. Jak odtwarzać dźwięk w tle Swift?
- 13. Jak mogę odtwarzać dźwięk w WinForms?
- 14. Jak mogę odtwarzać dźwięk w rozszerzeniu chrome
- 15. Jak odtwarzać dźwięk, jeśli przekazujemy NSData?
- 16. Jak odtwarzać dźwięk kliknięcia przycisku systemowego na iPadzie?
- 17. Odtwarzaj dźwięk ze strumienia w Androidzie
- 18. Jak odtwarzać dźwięk podczas połączenia telefonicznego z systemem Android?
- 19. Wygląd aparatu na Androidzie wygląda dziwnie
- 20. Lista wszystkich zdjęć z aparatu w Androidzie
- 21. Powracanie jbyteArray z natywnego c w Androidzie
- 22. Orientacja aparatu/obrazu w Androidzie
- 23. Safari 6.1 nie będzie odtwarzać dźwięk z wbudowanego widżetu Soundcloud
- 24. Jak odtwarzać dźwięk w systemie Linux za pomocą C?
- 25. Jak odtwarzać dźwięk po uruchomieniu testów jednostkowych w Visual Studio
- 26. Jak odtwarzać dźwięki w określonych odstępach czasu na różnych urządzeniach w Androidzie
- 27. AVFoundation: Obsługa wideo w OpenGL - Jak odtwarzać i synchronizować dźwięk?
- 28. Jak odtwarzać dźwięk, gdy aktualny czas jest równy określonemu czasowi?
- 29. Jak odtwarzać dźwięk ze strumienia w czasie rzeczywistym?
- 30. Jak odtwarzać dźwięk przez głośniki, a nie przez słabsze głośniki?
Od docs „priorytetowej dziedzinie. Priorytetu dźwięku Obecnie nie ma żadnego wpływu Użyj wartość 1 dla przyszłej kompatybilności.”. – greg7gkb
Licencja Apache jest bardzo permisywna; możesz użyć jego zasobów w dowolnym projekcie. Z drugiej strony można wyszukać dźwięk już dostępny na urządzeniu. –