A comprehensive guide for digital artists for creating rich interactive multimedia applications using Pure Data Overview In Detail Preparing interactive displays, creating computer games, and conducting audio-visual performance are now achievable without typing lines of code. With Pure Data, a graphical programming environment, creating interactive multimedia applications is just visually connecting graphical icons together. It is straightforward, intuitive, and effective. "Multimedia Programming with Pure Data" will show you how to create interactive multimedia applications. You will learn how to author various digital media, such as images, animations, audio, and videos together to form a coherent title. From simple to sophisticated interaction techniques, you will learn to apply these techniques in your practical multimedia projects. You start from making 2D and 3D computer graphics and proceed to animation, multimedia presentation, interface design, and more sophisticated computer vision applications with interactivity. With Pure Data and GEM, you will learn to produce animations with 2D digital imagery, 3D modelling, and particle systems. You can also design graphical interfaces, and use live video for motion tracking applications. Furthermore, you will learn Audio signal processing, which forms the key aspect to multimedia content creation. Last but not least, Network programming using Pure Data extension libraries explores applications to other portable devices. What you will learn from this book Approach A quick and comprehensive tutorial book for media designers to jump-start interactive multimedia production with computer graphics, digital audio, digital video, and interactivity, using the Pure Data graphical programming environment. Who this book is written for An introductory book on multimedia programming for media artists/designers who like to work on interactivity in their projects, digital art/design students who like to learn the first multimedia programming technique, and audio-visual performers who like to customize their performance sets.
Multimedia Programming with Pure Data is essentially a reference text which describes in great detail how to use Pure Data for a variety of interactive multimedia applications that span across many different devices.
Pure Data is a free, open-source, and cross platform graphical programming environment. Users write programs by drawing visual objects on the screen and connect them together to form patches.
In a nutshell, this book guides you step-by-step through building a variety of interactive multimedia projects. These projects range from creating a simple animation to working with the Microsoft Kinect camera for human skeleton tracking. Several of the projects found in this book make use of HTML 5, CSS, JavaScript, and Flash. But the star of the show for me was certainly the GEM library (Graphics Environment for Multimedia). By the end of the book, you will have seen the awesome power of this library and it will no doubt encourage you to explore it even further on your own.
Chung's writing style is very lucid and to-the-point. Don't go into this book expecting funny anecdotes or silly humor to help you understand concepts. If you do, prepare to be disappointed. However, the quality of the writing is extremely high, and what you do get is a technical comprehensive text that is wrapped up in cohesion and clarity.
The first chapter offers a brief introduction to Pure Data and walks you through the basics. You'll learn the interface and some essential terms before creating several patches. Once you tackle the math and messages, the rest will come much easier. In the next two chapters, you'll begin to use the GEM library for some graphical projects, including 2D and 3D shapes. Chung shows the powerful ways that you can manipulate images using a slew of effects including pix_metaimage, pix_add, and pix_invert. As the book progresses, projects become more and more engaging. You will even encounter temporal effects, stop motion, background removal, and the chroma key effect!
The second half of the book focuses on advanced applications that really dig deep into Pure Data. Projects in this section include:
*Motion Detection/Webcam (using pix_blob) *Air Drum (yes, you'll be waving your hands in the air and actually "playing" an air drum) *Particle Animation (via mouse movements) *Waveform Generation (audio programming)
Finally, the last few chapters deal with interfacing Pure Data with various hardware/devices. I found the section on OSC (Open Sound Control) very interesting. It filled in the gaps for me and now I'm able to connect my DAW to Pure Data to my Android phone for some serious multimedia power!
There is a section towards the end of the book that touches on Arduino and the Kinect camera, however I wasn't able to really wrap my head around everything Chung discussed. I need to brush up on my Processing. But if you're already experienced in Arduino applications, you shouldn't have any problems keeping up.
If I had to choose something about this book that could be viewed as a negative, I'd say that I was slightly disappointed in the chapter on audio programming. I was hoping for a deeper look at what Pure Data can do regarding sound design and live electroacoustic composition. Even though the chapter was around 40 pages, I just felt like it didn't explore deep enough into the audio realm of Pure Data. With that said, my favorite chapter in the book was definitely the fourth: Interactivity.
In my opinion, Multimedia Programming with Pure Data is not an ideal book for the absolute Pure Data beginner. Although I'm certain that there are some neophytes who could keep up, I believe this text is primarily aimed at those who have at least some working knowledge of Pure Data (or Max/MSP). If you have never used Pure Data before, this book may be confusing in some points, regardless of the fact that the author does a great job providing clear and concise instructions with every project.
Multimedia Programming with Pure Data is a fantastic resource for any visual artist or media designer. If you follow along step-by-step with each project, you will develop impressive multimedia applications without the need to write code.
I highly recommend this book to anyone looking to harness the power of Pure Data and bring their projects to the next level.
This book serves as a general introduction to Pd, though as the title suggests, the focus is on visual/multimedia apps rather than audio processing. This suits me just fine, as this is a side of Pd I knew almost nothing about.
The first chapter of the book is a general intro to getting started with Pd. The information is pretty good, though I noticed minor differences between how the program's interface looks in the book diagrams and how it looks in my copy of Pd (text size, the contents of the main Pd window). For example, a quick note that you can go to Edit -> Font to change the font size would be very helpful here. Overall, though, things are well explained, with a good balance between text and screenshots. I like that it moves pretty quickly beyond super-basic material. It moves from "here is how to add two numbers" right into "here is how to build a push-button counter"; a simple patch but one that already shows some clever routing potential.
Chapter 2 is an overview of basic graphics rendering with the GEM (Graphics Environment for Multimedia) library -- how to set up a GEM canvas, how to draw basic primitive shapes and do simple transforms (rotating / scaling / moving a shape), and how to do simple animation. This is all likely to be super familiar territory to anybody who has done any graphics programming. This chapter is a little on the overly verbose side, it's not ponderously so, and it does highly the necessary GEM-specific stuff (like how the coordinate system and color space using floating point numbers, rather than a typical pixel grid and hexadecimal color identifiers). It would have been nice if the material were presented in a more engaging / interactive way (rather than just "here's a rectangle, now here's a triangle"), but overall it moves through things at an okay pace.
I DID have difficulties getting a couple of the examples (the polygon and curve objects) to work as written, which turned out to be I needed to send a loadbang message to initialize the object data. This is eventually described near the end of chapter 2, but it should have been prominently discussed earlier on, as I imagine many newer users might get stopped in their tracks following even simple examples.
The later chapters explore image processing (in 2D and 3D), interactivity with mouse & keyboard, motion tracking with a webcam, particle animation, and interfacing Pd with other devices via TCP/IP, OSC, MIDI, and even Arduino microcontrollers.
Overall this is a great book, I really enjoyed working through it and it's definitely shown me large sections of Pd I wouldn't have known about otherwise. It's a good blend between theory and hands-on examples, and the code samples provide good jumping-off points for a lot of creative experimentation. There are a couple of places where the book could use a little better editing, especially in the first couple of chapters -- nothing major, but there were a couple of times (as I mentioned earlier) when I had to spend a while tracking down answers on the web, that could have been avoided with a bit more clarification in the text. I also would have liked to have seen a brief introduction to libPd -- the toolkit which allows Pd patches to be bundled as code objects for use in other (non-Pd) programs. Admittedly, this is borderline outside the scope of the book, and it would have been hard to quickly provide any useful hands-on examples, but even a two or three page blurb of "here's libPd, this is what it can do" might be of value.
The book strikes a good balance in content and tone. There's a lot of information here, but anybody who is motivated enough to explore Pd in the first place should find it accessible. There's enough "personality" to the writing that it doesn't come off like reading dry documentation, while still being nicely focused on delivering information. I learned a lot from this book and I'd happily recommend it to others interested in Pd specifically, or multimedia / creative programming in general.
Wer ein Buch sucht um sich Schritt für Schritt der Arbeit mit Pure Data und GEM zu widmen, nach und nach mehr zu lernen und dabei mit klaren Beispielen mit dem Buch wachsen möchte ist mit „Multimedia Programming with Pure Data„ von Bryan WC Chung gut beraten. In einer klaren, zielgerichteten Sprache und anhand griffiger Beispiele wird der Leser von Anfang an an die Hand genommen und von Checkpoint zu Checkpoint zum „Olymp“ geführt. Dies startet bei der Installation, Erstellung von simplen Anwendungen wie Animationen, der Erklärung der Grundlagen und endet mit dem Arbeiten mit der Tracking-Engine der Microsoft-Kinect-Kamera. Sehr bereichernd sind gerade auch die Kapitel über Interaktivität und das interagieren von und mit Pure Data, sei es mit der heimischen DAW oder mit OSC Messages vom Android oder IPhone direkt mit dem Patch.
Nutzbarkeit:
Chung's Buch kratzt dabei nicht wie viele Veröffentlichungen zu dem Thema an der Oberfläche sondern geht in angemessener Weise in die Tiefe, bleibt dabei klar verständlich und nachvollziehbar und lässt sich nicht zu kryptischer Fachsprache hinreissen ohne diese vorher einzuführen. Ein ganzes Kapitel widmet Chung dabei der GEM library (Graphics Environment for Multimedia) was selbst mir als fortgeschrittenen Anwender noch einige neue Einblicke gewährt hat. Am Einstieg zu jedem Kapitel werden zudem Ziele definiert die anhand der Beispiel durchgearbeitet werden und am Ende zur Kontrolle nochmals aufgeführt werden, was meines Erachtens das logische Lernen der Elemente vereinfacht und sehr gut möglich macht. Dieser Aufbau ermöglicht dem Leser leicht die einzelnen, erlernten Teile unabhängig voneinander, Modulhaft zu verwenden, neu zu kombinieren und für eigene, kreative Projekte zusammen zu stellen und abzuwandeln.
Fazit:
Im Bereich Interaktion und der Erstellung von Bildinhalten ist das Buch für mich eine klare Kaufempfehlung, auch für interessierte und technisch versierte Neulinge. Ich würde es als Kompendium und eine sehr gute Grundlage um selbst komplizierte Projekte aufzubauen beschreiben. Nach dem Lesen des Buches ist der Leser in der Lage auf einer soliden Basis selbst, fachkundig nach dem zu suchen was ihn interessiert, ein Buch von dem ich mir gewünscht hätte, dass es schon vorher existierte, da es einem Tage und Nächtelange Recherche im Internet, Foren und Manpages schlichtweg erspart und für die Zukunft rüstet.
Im Audio-Bereich sollte der Leser jedoch nicht mehr als die Grundlagen erwarten, sei jedoch auf die guten Manuals im Internet verwiesen die diesen Bereich gut abdecken (http://www.puredata.info) Sollte es beim lesen dennoch zu etwas Irritation kommen ist dies auch eine gute Stelle um sich zu einem Thema noch weiter zu belesen. (Reiter: Documentation/Manuals)
Alles in allem eine klare Kaufempfehlung für Durchstarter und Kenner.
The book is dedicated to creative possibilities that provided by GEM (Graphics Environment for Multimedia) - Pure Data extension. One of the main ideas behind open source software such as Pure Data - is ongoing diversification. It's a fertile ground for interesting development branches.
But from other hand, there is some lack of well organized, but "non-academic" and friendly-to-beginner help and tutors in some topics, especially in interactive multimedia. Therefore, release of this book is great news in case of establishing education basis of Pure Data.
Yes, maybe this book wrote mainly for newbies, but nevertheless, experience sonic-experimentalist could also expand their knowledge in some topics. It is a good education resource for those who studies motion design, human-computer interfaces and multimedia-art.
The book has well-structure and tutors like flow. With a good pedagogical attitude, author - Bryan Chung - leads a reader from basic "syntax" level to more complicated examples pointing out some problem for further self-investigation. All examples are well-illustrated and explained in details.
After "introduction" chapters dedicated to core concepts of graphical programming interface, main objects, dealing with geometric space and 2d/3d primitive shapes, image/video processing (1,2 & 3), there are three chapters (4,5 & 6) which are "tasty pie" and strong part of the book. In these chapters Bryan Chung introduced basic methods and technic of interactivity, motion capture and manipulation of particle system. All examples based on usage of common gear - HID, web-cam - and could be implemented almost immediately and, therefore, provided background for further developing of own interactive solutions.
Also, author provided some "quick-and-dirty" intros in sound synthesis and audio playback (chapter 7), intercommunication, OSC dealing and working with PDuino objects - extension for communication with Arduino-based system (chapter 8). Chapter 9 is good introduction in world of computer vision technologies (in case of openCV and Kinect).
Thus, this is a good "cookbook" for fast prototyping interactive system and starting point of understanding multimedia processing. But, i wish there will be more info about root aspect of image processing, dealing with shaders and particle system. Let sequel be
Recently multimedia artists have become more attracted by the possibilities provided by various programming languages(e.g. Processing, Iannis, etc). But it's not every artist or musician that is keen on learning how to code. Pure Data is free software that presents a different approach. It is visual programming language which enables you to construct your program using a series of predefined elements as building blocks, that can be connected and interact with each other. For most people using PD is easier and more comprehensive that writing lines of code. The book has a different emphasis than other literature available on PD. After a brief introduction to basic functionality it moves right away to working with images, the topic hardly covered anywhere but in specific manuals. There are some examples on generating 2 and 3D images which are quite basic but give you a flavor of software capabilities. The most exciting part comes afterwards and it describes how we can make our programs interactive so that the images, videos and other graphic objects respond to keyboard or mouse input. It is also addressed how to work with camera, use motion detection, etc, which is the part essential for any artist who works with interactive installations, contemporary theater and dance. The part of the book dealing with sound has little theoretical explanation about digital signal, etc. Instead it is focused on working with samples, recorded sounds, sound input and midi. In addition, it is explained how to use arduino and cellphone to control your program. The book is recommended for everyone who is interested in sound art, multimedia performance, musicians who want to add some video to live shows or those who want to make VJing more interactive and responsive. It is awailable from Packt Publishing http://goo.gl/rtZpO
An easy to read book with understandable examples that leads aspiring pure data enthusiasts through the basics, from the first bang to the use of image manipulation, audio and the network. This book serves as a great primer on the possibilities of pure data to the multimedia practitioner. The last few chapters of the book cover the use of newer emerging technologies such as the kinect, arduino and opencv, but is not as comprehensive as it could be, which could be a great harbinger of an advanced book being made available in the future that covers these topics in depth, as well as provide some inspiration to bridging the human to computer gap. The "Communities and References" chapter gives a short snippet on the many artists using pure data to express themselves. A great resource that showcases the possibilities of pure data.
A great tool for beginner and advanced users, it covers both important part: visual and audio. Is important to get the "sample pd files folder" to put in practice and to b e able to open the pd file examples. It teaches you from zero to a lot of great possibilities to work and expand your mind and knowledge.