Professional Documents
Culture Documents
See in-depth details in my book Mastering openFrameworks Books examples are free, see masteringof.wordpress.com
Preface
What is interactive multimedia system?
Examples
FunkyForest
Emily Gobeille and Theodore Watson (OpenFrameworks creator) for Festival 2007 CineKid in the Netherlands http://zanyparade.com/v8/projects.php?id=12
Examples
Hand from above
by Chris O'Shea
Examples
Body Paint
by Mehmet Akten
Definition
Interactive multimedia system is hardware and software multimedia system which 1) Is the real-time system. 2) Can input data by using various sensors, cameras and other sources of signals. 3) Can output data by the graphics, sound, haptics, robotics and other devices.
Design
Low-level libraries
(Open Computing Language) Parallelization and speed up the calculations, in particular, means GPU.
Web server
Video 1 Video 2
and so on ...
Sredneurovnevye Platform
This is a platform for "Creative coding", includes a large set of functions and libraries that are integrated for convenient Programming.
Processing
Language: Java For computer vision Java is slow.
openFrameworks
Language: C / C + +
Cinder
Language: C / C + + Recently appeared, gaining popularity.
Video 1
Video 2
Video 3
High-level protection
Visual programming environments, which allows to implement projects without actual programming. It is important that they can be expanded by the plugins made with low-level libraries. Also they can work together with middle-level platforms.
VVVV
Focused on visual effects.
Unity3D
Focused on highquality 3D.
Fields of application
Using only computer vision and computer graphics (and sound) currently produces a wide range - Advertising, - Entertainment, - Training, - Scientific, - Health, - Art interactive systems.
Course Description
What we will do
(1) The main interest
- Creation of interactive multimedia-based systems Recognition of video and audio signals. (2) Moderate interest
Course Content
1. Introduction to OpenFrameworks
- Basics OpenFrameworks. General principles of real-time systems, vision systems and interactive systems. - 2D-graphics. - Receiving and processing images from the camera, the basics OpenCV. - Receiving and processing of sound. - Generation of sound, the playback of audio samples. - 3D-graphics. - Basic mapping. - Meet with high-level programs Unity3D, MultitouchDesigner, QuartzComposer. Installing Openframeworks connection with them. - Connecting external devices via the Arduino.
Course Content
2. Lecture "The Strategy of interactive art." by Ksenia Fedorova
(Curator of Yekaterinburg r la National Centre for Contemporary Art, Ven. factor is the art and culture, Postgraduate Department. aesthetics, ethics, theory and cultural history Philosophical Faculty USU)
Course Content
3. Working on your projects Listeners will be asked to perform under our supervision a number of projects related to video analysis and generation of graphics / sound.
Recommended Reading
OpenFrameworks
Joshua Noble "Programming Interactivity: A designer's Guide to Processing, Arduino, and openFrameworks "
Links
OpenFrameworks homepage www.openframeworks.cc
Introduction in OpenFrameworks
What is OpenFrameworks
OpenFrameworks open library (framework) for C++, designed to work with multimedia.
Developed as a tool for designers and artists working with interactive design and media art.
One of the main advantages OpenFrameworks - extreme ease of use.
It is very popular tool for creating interactive systems, image processing, installations and various projects working with graphics, sound and input / output to external devices.
iPhone OS
History of creation
OpenFrameworks was developed by: Zach Lieberman,Theo Watson, Arturo Castro, Chris O'Shea, together with other members of the Parsons School of Design, MediaLabMadrid, Hangar Center for the Arts, etc. Start of development - in the Parsons School of Design (New York) where Lieberman was a student.
http://www.flong.com/projects/tables/
- Requires a lot of GUI (text editor) instead, use development tools, GUI - QT, Cocoa, ... - Require complex logic control rendering (3d game) instead, use engines like Unity3D, ... - Multimedia capabilities are not needed (web server) -You have money & time & desire for industrial application development so you can create your project from a number of low-level libraries.
Application structure
Architecture design of openFrameworks aimed to handling multimedia information in real time.
This results in a - Application appearance - Application structure.
Application appearance
Normally openFrameworks application has two windows - a graphics window and console window for the logs.
Application structure
Application structure
setup (); //set parameters at startup update (); //computation, analysis of input data draw (); //draw the current state
Homework
On the basis of "pendulum" do "Branching pendulum, with pendulums of different weights. It will have a much more interesting dynamics.
Projects to do
Choose one of the projects for the independent or collective development (or suggest your own idea): 1. 3D Sculpture Creating 2. Flying flowers 3. The dynamic mapping on the cube
Flying flowers
Script Classical interactive installation. where the audience waved his hands in front of the camera, and drawn on the screen, such as flower petals. On the screen in a place where waved the audience - the petals scatter in different directions, there appears a picture. After some time the petals fly back into place. The viewer must actively waving his arms to clear the whole picture. Technology 1) Use optical flow and background analysis for analysis of users' movements 2) Do rendering - on openFrameworks, either on Unity3D or TouchDesigner (transfer data from openFrameworks through OSC).