Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Annegret Otto Geändert vor über 8 Jahren
1
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android
2
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 2 Wozu Multimedia Möglichkeit neben Text mit Benutzern zu interagieren Fotografieren zum Festhalten von Beobachtungen, Fehlermeldungen, Ideen, Möglichkeiten Abspielen von Multimedia-Content (Audio/Video) zur Erhöhung der Attraktivität einer App Augmented Reality - Kombination von Realität und dargestellten Informationen
3
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Mögliche Zugänge zur Aufzeichnung von Multimedia in Android Einsatz des MediaRecorders Für Audio Einsatz von bestehender Kamera-App für Fotos und Video Name des Vortragenden, Seite 3
4
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Abspielen von Multimedia-Dateien Unter Einsatz der Klasse MediaPlayer MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setDataSource(getApplicationContext(), myUri); mediaPlayer.prepare(); mediaPlayer.start(); ImageView VideoView Name des Vortragenden, Seite 4
5
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Speichern von Multimedia-Dateien Multimedia-Dateien sollten in einem von zwei Standard-Speicherorten abgelegt werden. Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) das ist ein öffentlicher Bereich, der sämtlichen Apps gemeinsam zur Verfügung steht. In diesen Bereich kann jede App zugreifen. Deinstallieren der eigenen App führt NICHT zum Löschen der gespeicherten Dateien Context.getExternalFilesDir(Environment.DIRECTORY_PICTURES) das ist ein Bereich der nur der jeweiligen App zur Verfügung steht. Deinstallieren der App führt zum Löschen der gespeicherten Dateien Name des Vortragenden, Seite 5
6
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Audio in Android 1/2 Um Audio aufzunehmen verwendet man eine Instanz von MediaRecorder Folgende Eigenschaften sind dann zu setzen setAudioSouce() – fast immer MIC (Mikrophon) setOutputFormat() – in welchem Format speichern setOutputFile() – wohin speichern setAudioEncoder() - das Encoding der Audio-Datei Für die Aufnahme werden dann die Methoden prepare() und danach start() aufgerufen Danach wird mit stop() beendet, mit release() der MediaRecorder freigegeben Name des Vortragenden, Seite 6
7
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Audio in Android 2/2 Aufzeichnen mRecorder = new MediaRecorder(); mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); mRecorder.setOutputFile(mFileName); mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); try { mRecorder.prepare(); } catch (IOException e) {} mRecorder.start(); Beenden mRecorder.stop(); mRecorder.release(); Name des Vortragenden, Seite 7
8
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Fotos + Videos in Android Benötigt Gerät mit Kamera Setzt im Manifest folgendes voraus “required = true”, wenn Zugriff auf Cam für die App notwendig ist, “false” wenn optional Bei “true” taucht diese App im Play Store für Geräte ohne Kamera nicht auf Zum Speichern von Fotos Zur Laufzeit auf Kamera prüfen mittels getPackageManager.hasSystemFeature(PackageManager.FEATURE_CAMERA) Name des Vortragenden, Seite 8
9
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Foto aufnehmen 1/2 Um ein Foto mit der installierten Kamera-App aufzunehmen Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(getPackageManager()) != null) { startActivityForResult(takePictureIntent, 1);} („if“ notwendig um einen Absturz des Programms zu vermeiden, wenn keine Kamera-App vorhanden ist) Dieser Intent liefert in den Extras unter „data“ eine kleine Bitmap als Ergebnis, auf diese kleine Version des aufgenommen Fotos kann direkt zugegriffen werden Bundle extras = data.getExtras(); Bitmap imageBitmap = (Bitmap) extras.get("data"); mImageView.setImageBitmap(imageBitmap); Name des Vortragenden, Seite 9
10
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Foto aufnehmen 2/2 Zum Speichern des Fotos UNBEDINGT einen eindeutigen Dateinamen wählen File directory= Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_PICTURES); File image = File.createTempFile(imageFileName,".jpg", directory); takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(image)); startActivityForResult(takePictureIntent, 1); Name des Vortragenden, Seite 10
11
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Video aufnehmen 1/2 Um ein Video mit der installierten Kamera-App aufzunehmen Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); if (takeVideoIntent.resolveActivity(getPackageManager()) != null) { startActivityForResult(takeVideoIntent, 1); } Dieser Intent liefert in den eine URI als Data zurück protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 1 && resultCode == RESULT_OK) { Uri videoUri = intent.getData(); mVideoView.setVideoURI(videoUri); } Name des Vortragenden, Seite 11
12
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Video aufnehmen 2/2 Wichtige Parameter für die Video-Aufnahme MediaStore.EXTRA_OUTPUT – URI mit Pfad und Dateiname. Wenn nicht übergeben, werden Dateiname und –ort im Standard gespeichert takeVideoIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); MediaStore.EXTRA_VIDEO_QUALITY – 0 oder 1 für niedrige/hohe Qualität MediaStore.EXTRA_DURATION_LIMIT – Begrenzung der Video-Dauer in Sekunden MediaStore.EXTRA_SIZE_LIMIT – Begrenzung des Videos in Bytes Name des Vortragenden, Seite 12
13
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 13 Wichtige Befehle android.media.MediaRecorder hasSystemFeature(PackageManager.FEATURE_CAMERA) Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE) takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(image));
14
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 14 Demonstration
15
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 15 Üben Erstellen Sie eine App mit folgenden Buttons, [Video aufnehmen], [Foto aufnehmen], [Audio aufnehmen], einem EditText der mit [Dateiname:] beschriftet ist und einer Checkbox [privat] speichern Jeder dieser Buttons soll die Funktion erfüllen, die sein Name vorgibt. Die Checkbox [privat] entscheidet dabei darüber, ob die aufgenommene Datei im für alle Apps zugänglichen Bereich gespeichert wird oder im für die App-eigenen privaten Bereich Ergänzen Sie die App um die Möglichkeit, mittels ListActivity aus den aufgenommenen Audio-Dateien auszuwählen und die ausgewählte Datei abzuspielen Ergänzen Sie die App um die Möglichkeit, mittels ListView aus den aufgenommenen Fotos auszuwählen und die ausgewählte Datei darzustellen
16
www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 16 Zusammenfassung
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.