Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android.

Ähnliche Präsentationen


Präsentation zum Thema: "Www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android."—  Präsentation transkript:

1 Wien Fotos, Audio und Video Multimedia in Android

2 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 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 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 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 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 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 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 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 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 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 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 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 Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 14 Demonstration

15 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 Wien Fotos, Audio und Video Multimedia in Android Name des Vortragenden, Seite 16 Zusammenfassung


Herunterladen ppt "Www.wifiwien.atWIFI Wien Fotos, Audio und Video Multimedia in Android."

Ähnliche Präsentationen


Google-Anzeigen