Archive

Archive for the ‘Programming’ Category

Strukturwandel im Web-Development Bereich?!

March 18th, 2007 No comments

webdevfire webdevgroup designprinciples

Ich hab es in meinem Blogeintrag Täglich Brot des Web Developers schon leicht angedeutet, dass sich ein Wandel im Web-Development Bereich andeutet. Die immer grösser werdende Zahl an Webframeworks, Web-Librarys, Web Services / Web-APIS und Mash-Ups sprechen für sich. Jedoch war ich vor einigen Tagen noch ein bissl skeptisch, als ich mich mit Studienkollegen über diesen bevorstehenden Wandel unterhalten habe. Diese Skepsis verschwand aber zum grossen Teil durch das Erscheinen der Nachricht, dass der Friends of ED Verlag demnächst ein Buch veröffenltichen wird mit dem Titel Web Development Solutions: Ajax, APIs, Libraries, and Hosted Services Made Easy. Diese Bucherscheinung spricht wiederum für die Aufsplittung der Web-Developer Gemeinde in Web-Framework-, Web-Service-, Mash-UP Developer und in Website-Developer. Die eine Gruppe (die Programmierer) sieht das Web als technische Herausforderung und will alles Mögliche machbar machen. Die andere Gruppe (Website-Developer) nutzt die daraus entstehenden Techniken um ihre kreativen Visionen umzusetzen.

Die Gruppe der Website Developer wird sich meiner Meinung nach in Zukunft aus Webdesignern und den grafischen Programmierern (z.B. Medieninformatiker, Fachinformatiker usw.) zusammensetzen. Sie haben ausreichend Programmier-Know-How um die Frameworks, Web-APIs und Mash-Ups anzuwenden. Diese Ansicht mag auf dem ersten Blick wie eine Degradierung innerhalb der Web-Developer Gemeinde aussehen (weil sie vielleicht nicht so gut programmieren können, wie die andere Gruppe). Aber dem ist nicht so! Denn diese Gruppe wird in Zukunft mehr Zeit für das Grafische und Interaktive Design einer Website haben, was wiederum den Designprozess (besteht unterem anderm auch aus dem kreativen Zusammenspiel der verschiedenen Technologien) von Websiten weiter voran treiben wird. Von diesem Designprozess wird in Zukunft der Erfolg einer Website massgeblich abhängen. Also schlussendlich überhaupt keine Degradierung(!), sondern mehr Freiheit und Zeit für Qualitätsdesign!

Die andere Gruppe (Web-Framework-, Web-Service- und Mash-UP Developer) werden Zuwachs aus dem Bereich Software Entwicklung und Produktionbekommen. Denn die Entwicklung komplizierter Webanwendungen (wie z.B. Google Maps) und WebFrameworks erfordert sehr gute Kenntnisse in den Bereichen Programmierung, Netzwerktechnik / Netzwerkprotokolle und Softwarearchitektur. Für diese Gruppe ist objektorientierte Programmierung und Design Patterns auch keine Krankheit, sondern das perfekte Tool für die Erstellung skalierbarer und erweiterbarer Anwendungen/Frameworks. Daher denke ich, das ein Teil der Allgemeinen Informatiker, Computer Networking Programmierer und Medieninformatiker (GUI Programmierung) für diese Aufgaben genau die Richtigen sind.

Im Allgemeinen kann man es so sehen, die Einen stellen Tools zu Verfügung und die anderen nutzen diese. Die einen haben haben Spass am Kreativen Prozess, die anderen wollen das allerbeste aus einer bestehenden Technik rausholen. Auf jeden Fall werden diese beiden verschiedenen Motivationen das Web in Zukunft einen großen Schritt weiterbringen, denn sie ergänzen sich nahezu perfekt. Es besteht jetzt nur noch die Frage, zu welcher Gruppe man selbst gehört...

... Vielleicht geben euch die 37 Fragen, die ein Web-Developer beantworten können sollte von design.principles eine kleine Hilfestellung 😉

Magazine für den Digital Media Producer

March 12th, 2007 No comments

digital production xmlservice gamedeveloper

Im Rahmen meiner Fachschaftstätigkeit wurde ich beauftragt eine Liste von Zeitschriften zu erstellen, die den kompletten Anwendungsbereich eines Medieninformatiker und Online Medianer abdeckt. Da diese Auflistung für den ein oder anderen interessant sein könnte, möchte ich sie keinen vorenthalten. Für den Bereich Werbung, Design, Animation und Post Production gehen an den Start die deutschen Zeitschriften Digital Production (hauptsächlich 3D und Post Production) und die PAGE (Werbung, Design und ein bissl Medienproduktion). Aus dem englischen Raum kommen die nicht ganz so billigen Zeitschriften Computer Arts Project, Computer Arts und 3D World in Frage. Den fließenden Übergang vom designlastigen zum programmierlastigen bildet das deutsche RIA und Multimedia Entwicklungsmag Visual X, das sich stark mit der grafischen (Web)Programmierung beschäftigt. Nun wo wir jetzt beim Programmieren angelangt sind gibt es einige sehr gute technologiebasierte Mags, deren Titel so aussagekräftig sind, dass sie keine nähere Erläuterung benötigen.

Und zu guter Letzt für die Game Developer unter uns das amerikanische Game Developer Magazine, das den Wissensdurst rund um die Spiele Entwicklung ein bissl stillen sollte.
Wem das noch nicht genug ist und sich noch ein bissl Insparation holen will (oder um einfach von dem fachspezifischen Gedankengut mal wegzukommen), sollte sich hin und wieder einige Magazine, wie z.B. die Art (für Design), den Kameramann und die Schnitt für den Filmbereich oder Brand eins (fürs Management), zu Gemüte führen.

Ich denke die erwähnten Magazine decken den Digitalen Medien Markt bis auf den Mobilen Bereich ziemlich gut ab. Leider kenne ich mich im mobilen Bereich nicht sehr gut aus und habe somit leider kein brauchbares Magazine für den Mobile Developer gefunden. Falls einer von euch ein gutes Mag kennt, bitte schreibt mich an. Ich bin für jeden Tipp dankbar. Vielen Dank!

-- UPDATE 22.07.2007 --
Neulich bei meinem Streifzug bin ich über zwei neue Zeitschriften gestossen, die für den Media Producer sehr interessant sind. Die Zeitschrift Medienwirtschaft für Managementthemen in den Medien und die Zeitschrift Form f¨r den Designbereich.

-- UPDATE 2.06.2008 --
Mir sind zwei weitere Zeitschriften über den Weg gelaufen, die in Sachen Interaktion sehr interessant sein könnten:
Make Magazine
ACM Interaction

Täglich Brot des Web-Developers

February 20th, 2007 No comments

weblibs webhandbook colorblender

Mittlerweile werden die Anforderungen an einem Web-Developer immer höher. Denn bei dem einen Auftrag soll etwas für den Endkunde erstellt werden und das andere Mal eine aufwendige Web-Anwendung. Öfters muss man dann schon mal gelöste Probleme bearbeiten, die man aber vorher nicht ganz so gut auf Wiederverwendbarkeit optimiert hat. Und genau an diesem Punkt ist bei mir persönlich der Frust am grössten. Warum soll man sich nochmal mit schon gelösten Problem rumschlagen, fast totale Zeitverschwendung. Aber zum Glück gibt es ehrgeizige und nette Leute da draussen im Web, die sich an die Befriedigung der unterschiedlichsten Bedürfnisse der Web-Developer heran gewagt haben. Herausgekommen sind einige Web-Libraries zu den verschiedensten Web-Technlogien (wie z.B. JavaScript, PHP usw.). Auf cameronolthuis.com gibt es eine sehr gute Aufzählung der TOP 10 Web-Libraries (dazu gehören z.B. die PHP PEAR Library, Moo.fx, Dynamic Drive CSS Library usw.), der ich nichts mehr hinzufügen kann, ausser der Ajax Framework Übersicht von ajax-info.de. Persönlich denke ich, wird sich eine Einarbeitung in die diversen Web-Frameworks auf lange Sicht auf jeden Fall lohnen, da diese den technischen Produktionsablauf erheblich unterstützen können. Auch wenn es Anfangs durch den Mehraufwand (Einarbeitung in das Framework) nicht sofort erkennbar wird.
Allerdings sollte man noch die Nutzungsbedingungen der Frameworks sehr gut kennen um nicht im Nachhinein teure Strafen für Nutzungsverstösse zahlen zu müssen. (Und es wäre auch noch sehr schade um die investierte Zeit für die Einarbeitung).

Für kleinere Probleme benötige man jedoch keine großen Web-Frameworks, sondern nur eine Plattform, die einem schnell die gesuchte Information anbietet oder einem einfach nur an die gewünschte Information im Web weiterleitet. Eine mögliche Hilfestellung dafür bietet die gotapi.com Seite. Das Team von gotapi.com hat sich zum Ziel gesetzt, soviele Dokumentation von Web-Frameworks auf ihr Seite zu vereinen wie möglich. Herausgekommen ist ein Monsternachschlagewerk für Web-Frameworks. Wird man in den Dokumentationen nicht fündig und die Suche nach den kleinen Kniffen geht weiter, dann kann ich euch das webbasierte Webdeveloper Handbook 2.0 von alvit.de empfehlen. Eine super Linkliste mit den besten Blogs und Portalen zum Thema Web-Development. Ich denke mit diesen 2 Links kommt auf jeden Fall bei der Lösungssuche weiter.

Das Design spielt auch bei uns Web-Developer eine nicht unwichtige Rolle und da ich mir persönlich nach dem Programmieren damit manchmal ein bissl schwer tue, haben sich bei mir 3 Web-Tools als Hilfestellung bewährt. Zum Einen verwende ich für das Abstimmen der Website Farben den ColorBlender als Inspirationshilfe. Denn der ColorBlender kann aus vorgebenen Farben eine 6farbige Farbpalette generieren, die sich dann auch noch in Photoshop oder als HTML Code exportieren lassen. Ein super Tool für die harmonische Farbgestaltung einer Website.
Das Typografie Problem im Web umgehe ich meistens mit den Typetester Tool von Marco Dugonjic. Bei diesem Tool kann man die meist genutzten Fonts im Web mit Hilfe von DropDown-Menüs formatieren. Diese Formatierungseinstellungen werden dann in verschiedenen Kombinationen angezeigt. Ist das gewünschte Ergebnis erreicht, können diese Font-Einstellungen als CSS-Code abgespeichert werden und für die eigene Website verwendet werden.
Zum Überprüfen von Website-Layouts verwende ich unter anderem das Tool Feng Gui (danke an Kjell für den Tipp!). Dieses Tool analysiert das Website-Layout nach Hotpoints unserer visuellen Aufmerksamkeit. Als Orientierungshilfe in Sachen Layout ist das Ergebnis sehr hilfreich.

Ich denke das reicht fasst aus als tägliches Brot eines Web Developers, die Leckereien gibt es ein anderes Mal 😉

-- UPDATE 7.06.2007 --
Ein nettes CSS Framework mit dem Kürzel YAMLsoll den Web-Designer beim Erstellen von mehrspaltigen Layouts unterstützen. Desweiteren gibt es auch schon Erweiterungen für die CMS-Systeme TYPO 3, Joomla, Papoo CMS usw., auch die Blogengine WordPress sowie die OnlineShopEngine xt-Commerce unterstützen YAML

-- UPDATE 24.05.2008 --
Eine nette Auflistung von 30 Websiten, die man als Web Developer kennen sollte.

Flash sprengt seine (Interaktions-) Grenzen

February 12th, 2007 No comments

makingthings motion capturing wiiflash

Lange Zeit konnte man bei Flash nur auf die Interaktionsmöglichkeiten mit der Maus und der Tastatur zugreifen. Jetzt wo Flash bzw. ActionScript immer erwachsener wird, kommen ganz neue Interaktionsmöglichkeiten dazu, die dem Flashentwickler in Hinsicht auf das Interaction Design ganz neue Möglichkeiten bieten.

So kann man z.B. über ActionScript einige Sensoren (für Bewegung, Wärme usw.) ansprechen und auf deren gelieferten Werte reagieren. Makingthings.com und arduino.cc bieten diese Sensoren Baukästen mit dazugehörigen Treibern/APIs an. Beide Anwender benutzen das gleiche Hardwareprinzip. Es gibt eine Hauptplatine - ähnlich einem Motherboard - auf der dann die diversen Sensoren drauf gesteckt werden können. Die Daten werden dann von der Hauptplatine per USB an den Rechner geliefert. Durch die mitgelieferten APIs und Treiber können die Daten relativ einfach abgefangen und verarbeitet werden. Damit der Einstieg dann weiterhin so einfach wie möglich ist, bietet makingthings.com einen sehr guten Tutorialbereich an, in dem sicher fast all eure anfänglichen Fragen beantwortet werden können.

Desweitern hat es Thibault Timbert von bytearray.org geschafft Motion Capture Daten in Flash einzulesen und diese im 3D Raum sinnvoll zu visualisieren. Von dem Ergebnis war ich super überrascht, da ich bisher dachte, das wäre nur mit teuren 3D-Animationsprogrammen (wie z.B. Maya, Softimage usw.) möglich. Ich bin mal gespannt welche neuen Anwendungsgebiete sich daraus ergeben.

Für die bisher vorgestellten Möglichkeiten muss man jedoch ein bissl tiefer in die Tasche greifen und da man das nicht von jedem verlangen kann, kommen wir jetzt zu etwas einfachern und schon bekannten Interaktionstechniken der Spielekonsolen. Flash Spiele können seit jüngster Zeit mit den bekannten Kontroller der Playstation und der Wii-Konsole gesteuert werden. Joa Ebert entwickelte erfolgreich eine Kommunikation zwischen Flash und dem Wii-Controller mit Hilfe eines Socket Servers. In seinem Blog könnt ihr mehr über sein Vorgehen lesen. Auch Thibault Timbert war in dieser Richtung aktiv und entwickelte in ActionScript 3 eine Kommunikation zwischen einem analogen Gamecontroller und der Flash Technologie. Mit welchen Mitteln er diese Kommunikation erfolgreich entwickelte, könnt ihr auch in diese Fall wieder in seinem Blog nachlesen.

Zum Ende dieses Blogeintrages möchte ich euch noch auf die bildbasierte Interaktion per Webcam aufmerksam machen. In meinem Blog habe ich über dieses Thema schon einige Einträge verfasst. Deshalb hier nur 2 Verweise auf die wichtigsten Blogeinträgen:
Grundsätzliches zu Webcam Games und die kleine Linksammlung zur Webcam Interaktion.

-- UPDATE 21.03.2007 --
Die Seite wiiflash.org widmet sich ganz dem Thema des Wii Controllers in Kombination mit der Flash Technologie

-- UPDATE 16.02.2008 --
Für die Entwicklung von hardware- bzw. sensorenbasierten Interaktion hat der O Reilly Verlag ein interessantes Buch mit dem Titel Making Things Talk: Practical Methods for Connecting Physical Objects herausgebracht. Ich denke das könnte für angehende Interface und Interaction Designer ein sehr interessantes Buch sein...

-- UPDATE 31.03.2008 --
Bin letztens auf die Homepage von Phidgets gestossen. Phidgets bietet Lösungen für USB Sensing und Controlling an, die kompatibel mit ActionScript 3 sind. So kann man jetzt dank Phidget mit RFID-Sensoren arbeiten. ein Blick auf deren Homepage lohnt sich daher auf jeden Fall.

Flash Game Programmierung

February 1st, 2007 3 comments

tilebased gotoandplay fisixengine

Vorab eine Einführung in die Flash Game Programmierung wäre hier allein aus Platzgründen falsch platziert, deswegen gibt es eine kleine Übersicht, die den Anfänger und den Fortgeschritten Flash Game Developer unter euch helfen soll, seine technischen und umsetzungslastigen Probleme zu lösen. Die genauso wichtige Konzeption (Storyentwicklung, Dramaturgie usw.) von Flash Games lasse ich hier erstmal wegen Mangel an guten Quellen aussen vor. Jetzt aber los...

Ein sehr gutes Tile based Tutorial und perfekt für den Einstieg in die Flash Game Programmierung gibt es von Tonypa. Das Tutorial beschäftigt sich mit dem Aufbau einer Map, Kollisionserkennung, Isometrie und vieles mehr. Wer es dann noch weiter treiben möchte, kommt bei dem Vektoren Tutorial von Tonypa voll auf seine Kosten. Für speziellere Einzelprobleme gibt es auf Flashkit.com massig Games Tutorials, jedoch ist die Seite bissl lahm und unüübersichtlich gestaltet. Die Masse an Tutorials macht das aber wieder gut.

Flash Game Programmierung ist mittlerweile sogar so beliebt, dass es schon extra Entwickler-Portale dafür gibt. Ich kann euch die Portale OutsideOfSociety und das Portal gotoandplay.it bestens empfehlen. Beide Portale bieten Tutorials, Artikel (zum Beispiel zum Thema Game Design-Patterns) und Spielereviews an. gotoandplay.it widmet sich dagegen noch dem Thema Multiuser Spiele und bietet sogar einen MultiUser Game Server für Flash Spiele an(!). Im Forum von kirupa.com kann man mit anderen Flash Game Entwicklern diskutieren und Probleme lösen.

Da man das Rad auch in der Flash Game Programmierung nicht immer neu erfinden muss, haben sich einige sehr ehrgeizige Game Developer zusammengetan und einige Tools entwickelt. Für die ActionScript 3 Flash Game Entwicklung geht die Physik Engine von Flashfisix.com und die 3D-Engine von PaperVision3D ins Rennen. Beide Tools lassen es ordentlich rocken und leuten eine neue Ära im Flash Spiele Bereich ein. Für ActionScript 2 Flash Games entwickelte Andre Michelle (einer DER Flash Game Entwickler) ein Gamepackage, welches die Gameentwicklung bei den Spieletechniken Tilemap, mode7 und Raycasting massiv unterstützen soll. Jedoch finde ich das Gamepackage nicht mehr zum Download, vielleicht werdet ihr besser fündig.

Wenn die oben genannten Links euch nicht weiterhelfen oder ihr nicht mit ActionScript programmieren wollt, dann schaut mal hier rein www.gamedev.net.

--- UPDATE --- 3.2.2007

Eine sehr gute Linkliste zur Flash Game Programmierung gibt es auf FLAshot und zum Thema Formbasierte Kollision gibt es im GSKinner Blog einen sehr guten Eintrag.

--- UPDATE --- 13.4.2007
Leider ist ja ein Spiel ohne schöne Grafik ein bissl langweilig. Auf der Flashforum Seite gibt zwei sehr nützliche Forumthreads, die euch bei diesen Problem helfen können. Thread 1 beinhaltet einige gute Links, wie man Tile und Sprite Grafiken selbst erstellen kann. Thread 2 verweist dagegen auf einige sehr umfangreiche Sprite und Tile Grafik Bibliotheken. Also nur hin wenn man grafikfaul ist 😉

-- UPDATE 3.06.2007 --
AS3 Data Structures For Game Developers is a package containing common data structures useful for game programming and application development. The project was started because Michael Baczynski wanted a unified library which he could reuse in his games.

-- UPDATE 24.06.2007 --
APE (Actionscript Physics Engine) ist eine kostenlose AS3 open source 2D Physik Engine für Flash und Flex. Programmiert hat das Ganze Alec Cove. Auf seiner Seite gibt es sogar eine Portierung seiner Engine auf Java

-- UPDATE 18.08.2007 --
Auf dem Flash Game Development Blog H1DD3N.R350URC3 bin ich auf zwei interessante Projekte gestossen. Ein Wiki für Flash Game Development und ein ActionScript 3 Framework mit dem Namen hexagon für Game Developer. Schaut mal rein!

Webcam – Lightwriter Version 1.0

January 30th, 2007 No comments

lightgeste lightconfig lightbitmap

Bei meinem Lightwriter Experiment kann man mit Hilfe einer Taschenlampe in Echtzeit im Webcambild malen. Inspiration fand ich in der Lightgraffiti Szene, besonders der Clip The past of pikapika und der TV-Beitrag zum Thema Lichtgraffiti von Tracks haben mir es sehr angetan. Während der Entwicklung meines Lightwriters schockte mich die neue Apple I-Pod NanoWerbung sehr, denn sie deckt sich fast komplett mit meiner Grundidee. SHIT! Aber ich hab trotzdem weiter gemacht und erzähl euch jetzt was zur Umsetzung in Flash.

Als erstes versuchte ich die hellen Pixel (es gibt einen frei wählbaren Helligkeits Grenzwert) im Videobild herauszufiltern und diese dann in einer übergelagerten Bitmap Instanz genau an der gleichen Stelle zu kopieren. Für das Herausrechnen der Farbinformationen (splitten in den RGB Kanal) aus den jeweiligen Pixel half mir das Tutorial Bitweise Operatoren von Grant Skinner sehr, jedoch waren die 76800 Helligkeitsberechnungen pro Frame (Auflösung von 320x240 px) für jeden Pixel zu viel für Flash. Ich versuchte nun die Helligkeitsfläche der Taschenlampe zu tracken. Um das zu erreichen, versuchte ich das Bild mit Hilfe von Transformation Matrizen so zu verändern, dass es nur noch die hellen Bereiche anzeigt. Ich erreichte nach längeren Probieren ein ausreichendes Ergebnis, jedoch funktionierte dies nur bei mir zuhause, denn bei anderen Webcams mit anderen Lichtverhältnissen und Hintergründen muss der Filter wieder neu justiert werden. Eine dynamische Justierung wäre aber viel zu aufwendig gewesen. Gefrustet von den bisherigen Ergebnissen durchstöberte ich nochmal die ActionScript Doku und stiess auf die Hilfreiche Funktion Bitmap.getColorBoundsRect(). Diese Funktion sucht im Bild nach einem von mir angegebenen Farbwert und liefert mir ein Rechteck mit Positionsangabe zurück. Diese Funktion liess ich nach weissen Pixeln im Bild suchen. Und siehe da, das zurückgelieferte Ergebnis stimmte mit der Position der Taschenlampe im Webcambild überein. Mit diesen Ergebnis konnte ich sehr gut leben. Nun musste ich nur noch dem Rechteck einen Offset zugeben um die runden Ecken der Taschenlampe zu erhalten. Da sich das Licht am Rand der Taschenlampe abschwächt und einen anderen Farbwert bekommt, überprüfte ich wieder die Pixel nach ihrer Helligkeit. Denn der Farbwert am Rand der Taschenlampe macht die Lichtspielerei erst wirklich interessant. Dieses Verfahren funktioniert einwandfrei, wenn man nicht direkt in die Webcam rein leuchtet. Falls das doch passiert, fängt der Flash Player an tierisch zu rechnen, weil das TrackingRechteck massiv grösser wird und dadurch die Anzahl der Pixel im Offsetbereich massiv zunehmen. Da die Helligkeitsberechnungen im Offset Bereich auch noch sehr rechenintensiv sind, habe ich eine weitere Funktion eingebaut. Ich berechne die Mitte des erhaltenen Rechteck und fange an Linien mit der Funktionlineto() zu malen. Die daraus entstandene Ergebnisse brachten mich wieder auf weitere Ideen, wie z.B. das man bestimmte Symbole malt und diese vom Flash Player erkannt werden und dieser führt dann bestimmte Aktionen durch (zum Beispiel Video starten, nächsten Clip laden usw.). Ich finde die Idee sehr praktisch in Hinsicht auf einfache Interaktionen im Wohnzimmer mit dem Fernseher. Beim dynamischen Malen könnte man ein 2 Player PingPong Webcamspiel (spielbar über Internet) entwickeln...

Aber leider muss ich noch gestehen, dass mein Lightwriter bei mehr als zwei Lichtquellen nicht mehr unbedingt stablil läuft. Denn durch die zwei hellen Bereiche im Bild wird das Trackingergebnis stark verfälscht. Bei manchen Webcams findet die Funktion Bitmap.getColorBoundsRect() sogar keine wirklich weissen Bereiche der Taschenlampe und liefert somit kein Trackingergebnis. Um diese Schwächen zu beseitigen, muss ich mir wohl doch noch ein eigenes Trackingverfahren in Flash schreiben. Einen ersten Ansatz hab ich auch schon, aber ich muss ihn erstmal auf seine Tauglichkeit überprüfen.

Aber jetzt genug und testet selbst meine erste Version des Lightwriters

Sourcecode des Lightwriter

-- UPDATE 11.03.2007 --
Eine ähnliche Anwendung, wie mein Lightwriter entwickelten die Jungs vom Graffiti Research Lab. Bei ihrem sogenannten L.A.S.E.R. Tag kann man mit Hilfe eines Laserpointers und einem mega starken Beamer ein Haus mit Licht betaggen. Geile Umsetzung, einfach eine geile Sache! Es lebe der Digital Media Punk!

-- UPDATE 16.04.2007 --
Es gibt eine neue Version des Webcam Lightwriters

Die Last meiner Studienarbeiten ;-)

January 12th, 2007 No comments

Dresdner Bank ampaper Light Hi

Jetzt ist es mal wieder soweit für einen Blogeintrag, mein Studium beansprucht mich mal wieder sehr, so dass ich mich im Moment nicht so sehr um neue Blogeinträge kümmern kann.
Nichtsdestotrotz habe ich meine noch verbleibende Zeit für die Contentpflege meiner Site genutzt. Herausgekommen sind einige neue Fotos im Bereich Natur,Mensch und Urban. Sowie einige neue Videos aus älteren Skatezeiten gibt es im Fun und ernsten Videobereich zusehen.

Im Rahmen der Studium Veranstaltung Ambient Intelligence habe ich mich mit dem Thema Interaction Techniques for Instrumented Environments beschäftigt. Das daraus entstandene Paper liefert einen Überblick über die Thematik und wie es in Zukunft evtl. in diesem Bereich weiter gehen kann. Kleine Anmerkung von mir: das Thema ist auch besonders interessant für den Bereich interaktive Medieninstallationen.

Aber das war bis jetzt noch nicht alles in Sachen Studium, ich hab jetzt endlich mein Thesisthema (Abschlussarbeit) gefunden. Ich werde mich mit der Analyse zur Preisgestaltung online-basierter Produkte beschäftigen. Hier die genauere Beschreibung von meinem betreuenden Professor Wolfgang Maass:
Preise für Informationsgüter können nicht mit herkömmlichen Grenzkostenmethoden bestimmt werden, da diese gegen Null tendieren. In dieser Arbeit soll über eine Umfrage bestimmt werden, nach welchen Methoden KMUs und Grossunternehmen die Preise ihrer Online-basierten Produkte bestimmen. Aus den Ergebnissen sollen Handlungsempfehlungen abgeleitet werden. Diese Arbeit ist für Studenten geeignet, die sehr gute analytische Fähigkeiten besitzen, in der Lage sind konzeptionell zu arbeiten, um ein Analysemodell zu entwickeln und selbständig Information zu suchen.

Zu guter Letzt habe ich schonmal mein neues Webcam Experiment hochgeladen, den Lightwriter. Bei diesem Experiment kann mit Hilfe einer Taschenlampe oder ähnliches auf dem vom Flashplayer erzeugten Webcambild malen. In den nächsten Tagen werde ich noch ein Beispielvideo uploaden und noch bissl später werde ich dazu einen ausführlichen Blogeintrag verfassen, damit man sich besser vorstellen kann wofür das Ding überhaupt gut ist.

Jetzt muss ich mal wieder an einem Java3D spiel fürs Studium weiterprogrammieren...

Links: Die Zukunft der Medieninformatik?!

December 3rd, 2006 No comments

timoreilly rotoscoping flashstreaming

Allgemein:
Ein äusserst interessantes Interview mit Tim O Reilly über Web 2.0 und die Integration von Informatik in unserer täglichen Umwelt (Stichwort: Ambient Intelligence)
Spiegel Tim O Reilly Interview Teil 1
Spiegel Tim O Reilly Interview Teil 1

Spiegel Interview mit Jaron Lanier über verschobene Realitätswahrnehmumg durch digitale (soziale) Netze. Die Heise News- meldung dazu.

Und zu guter Letzt die Videogallery des Adobe Showdown Events Adobe Max 2006

Videoproduktion:
Das richtige Auswählen von Videoclips ist in der Regel ein sehr zeitaufwändiger Prozess in der Filmproduktion. Diesen Videobrowsing Prozess zu opitmieren versuchen Anat Axelrod, Yaron Caspi, Alon Gamliel und Yasuyuki Matsushita in ihrem Paper zu erklären.

Bisher musste in der Post Produktion für Rotoscoping Aufgaben sehr oft manuell selbst hand angelegt werden. Jue Wang, Pravin Bhat, R. Alex Colburn, Maneesh Agrawala und Michael F. Cohen haben ein automatisiertes Rotoscoping Verfahren entwickelt, welches sehr gute Ergebnisse liefert. Vielleicht gehört das manuelle Rotoscoping bald der Vergangenheit an.
Demovideo (Quicktime Stream)
ACM Artikel
Eine Auflistung aktueller Special FX Entwicklungen von der Washingtoner Uni

Streaming:
Eine dreiteilige Artikelserie beschäftigt sich mit dem Erfolg von Flash Video im Netz, der neue Standard (?!) für Internetvideo.
Teil 1, Teil 2 und Teil 3

Ein weitereren interessanten Artikel gibt es zum Thema Digital Rights Management (DRM) und warum es auch in Zukunft scheitern wird.
The big DRM mistake

--- UPDATE --- 18.12.2006
Wirtschafts Woche Artikel: Total vernetzt: Internet von übermorgen

--- UPDATE --- 22.3.2006
Der Timelabs Blog liefert desöfteren ganz interessante Einträge zum Thema die Zukunft der Medien (unter ökonomischer Sicht)

Literatur für interaktives Video

November 23rd, 2006 No comments

Interaktives Video Flash Video Flash Media Server

Viel Literatur zum interaktiven Video im Web gibt es nicht. Im deutschprachigen Raum ist mir nur ein nennenswertes Buch aufgefallen Interaktives Video im Internet mit Flash von Florian Plag und Roland Riempp. Durchgelesen habe ich das Buch nicht, jedoch hat die Leseprobe mir Lust auf mehr gemacht. Besonders gut finde ich die technologisch unabhängige Betrachtung von Interaktivität im Video und die Begründung warum gerade Flash Video State-of-the-art im Web ist. Desweiteren gibt es eine Website mit einem sehr gutem Blog zu diesem Buch www.video-flash.de.

Im englischsprachigen Raum kann ich das Buch Foundation Flash 8 Video vom Verlag Friends of ED empfehlen. Am Anfang gibt es eine kleine Einführung in die Videoverarbeitung und dann geht es auch schon direkt los, wie z.B. man am schnellsten sein Video in die eigene Website integriert (mit z.B. der FlvPlayback-Komponente). Im Mittelteil beschäftigt sich das Buch mit dem Interaktionsaufbau einer Videogallerie (hierzu sollte man schon ActionScript Kenntnisse besitzen). Aber auch eine kleine Einführung in die Erstellung eigener Videoeffekte fehlt bei diesem Buch nicht. Diese Buch richtet sich hauptsächlich an Anfänger und Fortgeschrittene im Bereich Flash Video, Profis in diesem Bereich werden eher enttäuscht sein.

Da interaktives Video mehr ist als nur die typische Clientanwendung zum Abspielen von Videos beim User, ist auch das Können des Flash Video Developer im Bereich Servertechnologien und Streaming gefragt. Gerade bei den Themen Videochat, Videostreaming usw. hat sich das Buch Programming Flash Communication Server vom Verlag O Reilly als Standardwerk heraus kristallisiert.

Ich denke mit dem Wissen dieser 3 Bücher ist man für fast alle zukünftigen Flash Video Anwendungen gut vorbereitet und braucht keine Angst mehr vor der Video Revolution im Web zu haben 😉

-- UPDATE 13.04.2007 --
Ein nettes Interview mit Bjoern Kowalski zum Thema interaktive Video Flash Site gibt es auf Flashstreamworks.com. Auf jeden Fall super interessant wieviel Technik und Arbeit in sowas drinne steckt!

-- UPDATE 16.05.2007 --
Stefan Richter von FlashComGuru.com bringt ein neues Buch mit dem Titel Hands-On Guide to Flash Video heraus. Wer seinen Blog kennt, weiss das es sich hier um ein sehr gutes Werk handeln muss.

Webcam User Interface

October 10th, 2006 2 comments

caminterface greenman handon

Nach einer Woche rumtüffteln mit meiner Webcam, habe ich es endlich geschafft, dass man mittels Webcam durch ein Menü navigieren kann. Die Grundlage der Personenextrahierung aus dem Webcambild stammt von dem Webcam Motion Detection Tutorial von Guy Watson, welches ich auf meine Bedürfnisse umgeschrieben habe. Das heisst der User erstellt ein Webcam Snapshot (er darf sich dabei nicht im Webcam-Bildbereich befinden) von seiner Umgebung. Somit erhalte ich alle Bildinformationen von seinem Hintergrund, die ich dann von dem jeweiligen aktuellen Bild (Frame) subtrahiere. Dieser Vorgang bewirkt, dass alle Pixel, die sich nicht verändern haben ein Ergebnis von Null zurückliefern (einen schwarzen Pixel). Alles was schwarz ist ist somit unaktiv, jedoch wenn ein Bereich zu z.B. 80% aus nicht schwarzen Pixel besteht, kann man davon ausgehen, dass dieser Bereich aktiv ist und eine Aktion kann ausgeführt werden.
Dieses Verfahren mittels Referenzbilderzeugung und Subtraktion funktioniert bisher ganz gut, jedoch stösst es bei Beleuchtungsänderung und bei Bildänderung durch die Automatik der Webcam an seine Grenzen. Bei solch einer Situation hilft nur noch die Erstellung eines neues Referenzbildes (Bei meinem Experiment durch den restart-Button möglich).

Probiert es mal selbst aus:

Source Code dieses Experiments

-- UPDATE 17.06.2007 --
Die CamButton Klasse wurde in Sachen Anwenderfreundlichkeit und erweiterte Funktionalität überarbeitet, so dass ihr diese Klasse sehr einfach für eure eigenen Experimente einsetzen könnt. Den Download gibt es unter Interactive Webcam Package mit ausführlicher Doku und Beispielcode zum leichteren Einstieg.