26
Oliver Lietz – Mobile Software Embedded Systems Embedded Systems Ausgewählte Themen (ES-M) Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Beuth-Hochschule WS 2010 Oliver Lietz Oliver Lietz Dipl.-Ing. Dipl.-Ing.

Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Embed Size (px)

Citation preview

Page 1: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software

Embedded SystemsEmbedded SystemsAusgewählte Themen (ES-M)Ausgewählte Themen (ES-M)

Beuth-Hochschule WS 2010Beuth-Hochschule WS 2010

Oliver LietzOliver LietzDipl.-Ing.Dipl.-Ing.

Page 2: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

ÜberblickÜberblick

Themenvorschlag „Virtuelles Studio“Themenvorschlag „Virtuelles Studio“

Mobile PlattformenMobile Plattformen

Page 3: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

ÜbersichtÜbersicht

Themenvorschlag „Virtuelles Studio“Themenvorschlag „Virtuelles Studio“

PC-basiertes AufzeichnungsgerätPC-basiertes AufzeichnungsgerätVideo-Video-Einführung AndroidEinführung Android– Einführung iPhoneEinführung iPhone

Blog: Blog: http://bht.mobilecoders.dehttp://bht.mobilecoders.deInteressante AppsInteressante AppsProjektvorschlägeProjektvorschläge

Weitere PlattformenWeitere PlattformenEinrichtung EntwicklungsumgebungenEinrichtung Entwicklungsumgebungen

Page 4: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Virtuelles Video-StudioVirtuelles Video-Studio

Aufzeichnung und Streaming von Live-VideoAufzeichnung und Streaming von Live-Video

KameraKamera PC-Workstation PC-Workstation AndroidAndroidUSB, HDMI, SDIUSB, HDMI, SDI iPhoneiPhone

PC/FlashPC/Flash

ErfassungErfassung Aufzeichnung/VerarbeitungAufzeichnung/Verarbeitung Streaming Streaming (Capture) (Capture) CodierungCodierung Server (IP) PlayoutServer (IP) Playout

Streaming.BoxStreaming.Box

Page 5: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Anbindung Beuth.BoxAnbindung Beuth.Box

Video-Aufzeichnung für Video-CMS / PortalVideo-Aufzeichnung für Video-CMS / Portal

KameraKamera PC-Workstation PC-Workstation

ErfassungErfassung Streaming.Box Streaming.Box Beuth.Box Beuth.Box (Capture)(Capture)

Page 6: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Virtuelles StudioVirtuelles Studio

Color Key / Blue-Screen (Green Screen)Color Key / Blue-Screen (Green Screen)

http://tv.newtek.com/player.php?recordID=32

Page 7: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

3D-Video-Streaming3D-Video-Streaming

Video-Aufzeichnung für Video-CMS / PortalVideo-Aufzeichnung für Video-CMS / Portal

ErfassungErfassung Aufzeichnung/VerarbeitungAufzeichnung/Verarbeitung 3D-Ausgabe 3D-Ausgabe (Capture)(Capture) CodierungCodierung

Page 8: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

http://www.grassvalley.com/solutions/workflows/live-production

Page 9: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

ProduktionsstreckeProduktionsstrecke

TechnischTechnisch

Inhaltlich (Semantisch): MetadatenInhaltlich (Semantisch): Metadaten

Video

Übertragung

Audio

Wiedergabe /Playback

Codierung

Codierung

Aufzeichnung /Speicherung

Beschreibung / Content Description

Meta-Daten Anzeige

Page 10: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Video-Aufzeichnung (Capture)Video-Aufzeichnung (Capture)Eingabe-Gerät (Capture Device): Video/Audio getrenntEingabe-Gerät (Capture Device): Video/Audio getrennt

Codierung (Encoder): Video/Audio getrenntCodierung (Encoder): Video/Audio getrennt

Multiplex: Video/Audio kombiniertMultiplex: Video/Audio kombiniert

Ziel (Datei oder IP-Stream / Socket)Ziel (Datei oder IP-Stream / Socket)

uncompressed uncompressed ↑↑ compressed compressed ↑↑

Page 11: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Video-WiedergabeVideo-Wiedergabe

Hilfsmittel (Tool): „GraphEdit“ (Microsoft) / „GraphStudio“ (OpenSource)Hilfsmittel (Tool): „GraphEdit“ (Microsoft) / „GraphStudio“ (OpenSource)

Beispiel Beispiel DirectShowDirectShow: „Filter“ über „Pins“ verbunden„Filter“ über „Pins“ verbunden

Datenfluss durch den „Filter-Graphen“Datenfluss durch den „Filter-Graphen“

Datenfluss: Datenfluss:

Datei oder IP-Stream, Splitter, Decoder A/V getrenntDatei oder IP-Stream, Splitter, Decoder A/V getrennt

Page 12: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Web-Streaming Web-Streaming Adobe Flash Media Live EncoderAdobe Flash Media Live Encoder

Page 13: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

nanoStream Live Video EncodernanoStream Live Video EncoderLive Encoding/Streaming Live Encoding/Streaming aus dem aus dem BrowserBrowser

Aufzeichnung, Encoding, StreamingAufzeichnung, Encoding, Streaming– Webcam oder Profi-KameraWebcam oder Profi-Kamera

Flash-kompatibel (RTMP-Protokoll)Flash-kompatibel (RTMP-Protokoll)

3D-Video (Stereoskopie)3D-Video (Stereoskopie)

Plugin-Basiert fürPlugin-Basiert fürInternet Explorer, Firefox, …Internet Explorer, Firefox, …

3D-Video (Stereoskopie)3D-Video (Stereoskopie)

Javascript-APIJavascript-API

Page 14: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Live Playback mit FlashLive Playback mit Flash

Encoder spielt auf Encoder spielt auf

Media ServerMedia Server

Player (Flash) holt von Player (Flash) holt von

Media ServerMedia Server

Flash Media ServerFlash Media Server

Wowza Media ServerWowza Media ServerPhoto © Rob WatkinsPhoto © Rob Watkins

Page 15: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Live Streaming - BrowserbasiertLive Streaming - Browserbasiert

Live EncoderLive Encoder Wowza/Flash Media Server Flash Player Wowza/Flash Media Server Flash Player

Page 16: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Mobile PlattformenMobile Plattformen

AndroidAndroid

iPhoneiPhone

WindowsMobile 6 / WindowsPhone 7WindowsMobile 6 / WindowsPhone 7

Nokia / Symbian / Maemo / MeeGoNokia / Symbian / Maemo / MeeGo

(Samsung Bada, Palm, …)(Samsung Bada, Palm, …)

Page 17: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Plattformen: AndroidPlattformen: Android

Android SDK: Android SDK: http://developer.android.comhttp://developer.android.com

Eclipse: Java DevelopmentEclipse: Java Development

Android PlatformAndroid Platform– Versionen 1.0 (alt), 1.5, 1.6, 2.0, 2.1, 2.2Versionen 1.0 (alt), 1.5, 1.6, 2.0, 2.1, 2.2

Native Developer Kit (NDK): C/C++Native Developer Kit (NDK): C/C++

Web Apps?Web Apps?

Verteilung der Anwendung / AppStore?Verteilung der Anwendung / AppStore?

Page 18: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Plattformen: iPhonePlattformen: iPhone

Entwicklung nur auf MacOS-X möglichEntwicklung nur auf MacOS-X möglich

IDE: XcodeIDE: Xcode

iPhone-SDK: Emulator+XcodeiPhone-SDK: Emulator+Xcode

Objective-CObjective-C

Verteilung nur über AppStoreVerteilung nur über AppStore

Deployment nur mit Apple-IDDeployment nur mit Apple-ID

Weitere Möglichkeiten (Weitere Möglichkeiten (mögliche LV-Themenmögliche LV-Themen))– WebAppsWebApps

DashCode: HTML+JScriptDashCode: HTML+JScript

– Flash CS5: AS-Cross-Compiler für AppsFlash CS5: AS-Cross-Compiler für Apps– XMLVM: Java-Cross-Compiler, PhoneGapXMLVM: Java-Cross-Compiler, PhoneGap

Page 19: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

PlatformsPlatforms

iPhone / iPodiPhone / iPodAndroidAndroidWindowsMobileWindowsMobileSymbian (Nokia u.a.)Symbian (Nokia u.a.)Maemo / Moblin / Meego (Nokia)Maemo / Moblin / Meego (Nokia)BlackberryBlackberryJavaMEJavaMEPalmPalm……

Page 20: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Themen für KurzvorträgeThemen für Kurzvorträge

PlattformenPlattformen– iPhone / iPodiPhone / iPod– AndroidAndroid– WindowsMobileWindowsMobile– Symbian (Nokia u.a.)Symbian (Nokia u.a.)– Maemo / Moblin / Meego (Nokia)Maemo / Moblin / Meego (Nokia)– BlackberryBlackberry– JavaMEJavaME– PalmPalm

ThemenThemen– StreamingStreaming– Localisation / GPSLocalisation / GPS– Besondere FeaturesBesondere Features

Gerne auch spezielle Themen !Gerne auch spezielle Themen !

SoftwareSoftware– iPhone: Objective-C, Cocoa, iPhone: Objective-C, Cocoa,

Apps/Signing/Appstore, Apps/Signing/Appstore, Dashcode: Web-WidgetsDashcode: Web-Widgets

– Android: SDK/API, Java, CAndroid: SDK/API, Java, C– Symbian: C++, Nokia-SDKs, Symbian: C++, Nokia-SDKs,

Java2ME, Qt, ggf. PythonJava2ME, Qt, ggf. Python– Maemo/Moblin/MeegoMaemo/Moblin/Meego– WindowsMobile: .NET WindowsMobile: .NET

CompactFramework, C#, C++, CompactFramework, C#, C++, MFC, VBMFC, VB

– Flash / FlashLiteFlash / FlashLite– Apps, Appstore, Signing, Apps, Appstore, Signing,

DistributionDistribution– IDEs / KommandozeileIDEs / Kommandozeile– APIs: Flickr, Google,…APIs: Flickr, Google,…

Page 21: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Arbeitsplattform identifizierenArbeitsplattform identifizieren

Welche Plattformen gibt es?Welche Plattformen gibt es?

Welche Programmiersprachen sind möglich?Welche Programmiersprachen sind möglich?

Welche Geräte sind verfügbar?Welche Geräte sind verfügbar?

Eigene Projektideen?Eigene Projektideen?

Kurzpräsentation Plattform / Technologie / ProjektKurzpräsentation Plattform / Technologie / Projekt

Page 22: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Nächste SchritteNächste Schritte

Identifikation einer geeigneten EntwicklungsplattformIdentifikation einer geeigneten Entwicklungsplattform

Identifikation eines Softwareprojektes / ProduktideeIdentifikation eines Softwareprojektes / Produktidee

Softwareentwicklung und ProjektmanagementSoftwareentwicklung und Projektmanagement

Begleitende AufgabenBegleitende Aufgaben

Page 23: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Aufgabe 1Aufgabe 11. Finden Sie 1-2 Mobile Anwendungen, die Sie 1. Finden Sie 1-2 Mobile Anwendungen, die Sie

persönlich besonders gut finden!persönlich besonders gut finden!

2. Welche Technologien werden in der Anwendung 2. Welche Technologien werden in der Anwendung verwendet?verwendet?

3. Fassen Sie das Ergebnis zusammen (inkl. 3. Fassen Sie das Ergebnis zusammen (inkl. Screenshot!)Screenshot!)Einstellen in Blog – Einstellen in Blog – http://bht.mobilecoders.de/wp-adminhttp://bht.mobilecoders.de/wp-admin

Page 24: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Aufgabe 2: Android-HelloWorldAufgabe 2: Android-HelloWorld1. Installieren Sie die Android-Entwicklungsumgebung für Ihren 1. Installieren Sie die Android-Entwicklungsumgebung für Ihren

PC. Dokumentieren Sie die SchrittePC. Dokumentieren Sie die Schritte

Labor: Lokales LW D: ist nutzbarLabor: Lokales LW D: ist nutzbar

Netz: Dozenten-PC Netz: Dozenten-PC \\dsy25\DATA\download\\dsy25\DATA\download

a)a) eclipse-java-galileo.zip herunterladen nach D:eclipse-java-galileo.zip herunterladen nach D:

b)b) Android-SDK kopieren/installieren …Android-SDK kopieren/installieren …

3. Entwickeln Sie ein einfaches „Hello World, my Name is …“ mit 3. Entwickeln Sie ein einfaches „Hello World, my Name is …“ mit Hilfe eines Tutorials!Hilfe eines Tutorials!

Schätzen und messen Sie den Aufwand für jeden Arbeitsschritt! (z.B. 4 Schätzen und messen Sie den Aufwand für jeden Arbeitsschritt! (z.B. 4 Stunden – 6 Stunden)Stunden – 6 Stunden)

Page 25: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Aufgabe 2a (weitere Plattformen)Aufgabe 2a (weitere Plattformen)1. Wählen Sie eine Plattform, auf der Sie Ihre erste 1. Wählen Sie eine Plattform, auf der Sie Ihre erste

Anwendung entwickeln möchten! (Begründung?)Anwendung entwickeln möchten! (Begründung?)

2. Installieren Sie eine Entwicklungsumgebung für 2. Installieren Sie eine Entwicklungsumgebung für Ihren PC. Dokumentieren Sie die SchritteIhren PC. Dokumentieren Sie die Schritte

3. Entwickeln Sie ein einfaches „Hello World, my Name 3. Entwickeln Sie ein einfaches „Hello World, my Name is …“ mit Hilfe eines Tutorials!is …“ mit Hilfe eines Tutorials!

Schätzen und messen Sie den Aufwand für jeden Schätzen und messen Sie den Aufwand für jeden Arbeitsschritt! (z.B. 4 Stunden – 6 Stunden)Arbeitsschritt! (z.B. 4 Stunden – 6 Stunden)

Page 26: Oliver Lietz – Mobile Software Embedded Systems Ausgewählte Themen (ES-M) Beuth-Hochschule WS 2010 Oliver Lietz Dipl.-Ing

Oliver Lietz – Mobile Software– http://www.nanocosmos.de/lietz

Aufgabe 3 (Entwurf)Aufgabe 3 (Entwurf)1. Wählen Sie ein Projekt, das Sie entwickeln möchten! 1. Wählen Sie ein Projekt, das Sie entwickeln möchten!

Wählen Sie eine Plattform, auf der Sie entwickeln Wählen Sie eine Plattform, auf der Sie entwickeln möchten! möchten!

2. Schreiben Sie ein kurzes Expose über Ihr Projekt!2. Schreiben Sie ein kurzes Expose über Ihr Projekt!

Schätzen und messen Sie den Aufwand! Schätzen und messen Sie den Aufwand!