Book Image

Multimedia Programming Using Max/MSP and TouchDesigner

By : Patrik Lechner
Book Image

Multimedia Programming Using Max/MSP and TouchDesigner

By: Patrik Lechner

Overview of this book

Max 6 and TouchDesigner are both high-level visual programming languages based on the metaphor of connecting computational objects with patch cords. This guide will teach you how to design and build high-quality audio-visual systems in Max 6 and TouchDesigner, giving you competence in both designing and using these real-time systems. In the first few chapters, you will learn the basics of designing tools to generate audio-visual experiences through easy-to-follow instructions aimed at beginners and intermediate. Then, we combine tools such as Gen, Jitter, and TouchDesigner to work along with Max 6 to create 2D and 3D visualizations, this book provides you with tutorials based on creating generative art synchronized to audio. By the end of the book, you will be able to design and structure highly interactive, real-time systems.
Table of Contents (19 chapters)
Multimedia Programming Using Max/MSP and TouchDesigner
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Inputting and outputting Jitter data


First and foremost, we'd like to get video input going, both to get an image from a camera into Max and to load prerecorded movies. As the next step, we'd like to display these images. The jit.qt.grab object allows us to grab a camera input and the jit.qt.movie object allows us to play back a movie. All Jitter objects start with jit, and to save us some typing, if we create a new Jitter object, we can just type j instead of n to create a new object with the text jit. in it. The qt term in jit.qt.grab and other objects stands for quick time, so an up-to-date quick time version is required.

In the following screenshot, you can see we used jit.qt.grab to feed in a live camera image. In the case of multiple available cameras, the help file of jit.qt.grab tells us how to query available devices and how to choose which one to use. The jit.qt.grab object is a good example of how Jitter works; we need to send in bangs to make something happen, and it outputs a...