You are previewing Multimedia Programming with Pure Data.
O'Reilly logo
Multimedia Programming with Pure Data

Book Description

A comprehensive guide for digital artists for creating rich interactive multimedia applications using Pure Data

  • Carefully organized topics for interactive multimedia professional practice

  • Detailed reference to a large collection of resources in the open source communities to enhance the Pure Data software

  • Visual explanation and step-by-step tutorials with practical and creative multimedia applications

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.

Table of Contents

  1. Multimedia Programming with Pure Data
    1. Table of Contents
    2. Multimedia Programming with Pure Data
    3. Credits
    4. About the Author
    5. About the Reviewers
    6. www.PacktPub.com
      1. Support files, eBooks, discount offers and more
        1. Why Subscribe?
        2. Free Access for Packt account holders
    7. Preface
      1. What this book covers
      2. What you need for this book
      3. Who this book is for
      4. Conventions
      5. Reader feedback
      6. Customer support
        1. Errata
        2. Piracy
        3. Questions
    8. 1. Getting Started with Pure Data
      1. Creating the first program
      2. Understanding the terms and interface
      3. Displaying messages
      4. Performing arithmetic calculation
      5. Creating a counter
      6. Automating the counter
      7. Making an animation with the interface elements
      8. Using the graphical interface objects
      9. Summary
    9. 2. Computer Graphics with the GEM Library
      1. Using the GEM display window
      2. Drawing basic 2D graphics
      3. Understanding the coordinates system
      4. Drawing basic 3D primitive shapes
      5. Working with digital color
      6. Applying geometric transformation
        1. Performing translation, rotation, and scaling
        2. Checking the margins of the window
        3. Order of transformations
      7. Creating animation in 3D space
      8. Summary
    10. 3. Image Processing
      1. Obtaining images from external sources
      2. Applying image filters
      3. Layering multiple images
      4. Working with time
      5. Performing background removal
      6. Working with chroma key
      7. Experimenting with advanced effects
        1. Layering with gemhead
        2. Coloring pixel data
        3. Creating painterly effect
      8. Summary
    11. 4. Interactivity
      1. Obtaining the mouse position
      2. Responding to keyboard events
      3. Creating a graphical button
      4. Preparing a video-jockey instrument
      5. Creating interactive animation
        1. Animate the moving ball
        2. Bouncing the ball on the four margins
        3. Creating the paddle control
        4. Keeping and displaying the score
      6. Summary
    12. 5. Motion Detection
      1. Obtaining the frame difference
      2. Detecting presence
      3. Detecting motion
      4. Creating a motion detection animation
      5. Comparing colors
      6. Performing color detection
      7. Making an air drum
      8. Summary
    13. 6. Animation with Particle System
      1. Understanding a particle system
      2. Creating a basic particle system
      3. Applying forces to the particles system
      4. Interacting with the mouse
      5. Rendering particles with images
      6. Combining particle system with motion-tracking
      7. Summary
    14. 7. Audio Programming
      1. Preparing for audio processing
      2. Using existing sound files
      3. Generating audio with waves
      4. Working with MIDI
      5. Obtaining audio input for interaction
      6. Summary
    15. 8. Interface with the Outside World
      1. Communicating through the Internet
        1. Making the connection
        2. Sending messages
        3. Sending numbers
      2. Controlling the visual display of another computer
      3. Using Open Sound Control with mobile devices
        1. Connecting the TUIOpad to the host computer
        2. Decoding the OSC messages
        3. Tracking multiple points
        4. Drawing the graphics
      4. Interfacing with custom hardware through Arduino
        1. Digital output
        2. Servomotor control
        3. Digital input
        4. Analog input
      5. Summary
    16. 9. Extending Pure Data
      1. Integrating with OpenCV
      2. Working with the Kinect camera
        1. Installation of libfreenect
        2. Installation of OpenNI
      3. Summary
    17. A. Communities and References
      1. Pure Data communities
      2. Pure Data events
      3. Pure Data artists and organizations
        1. Reactable
        2. GOTO10
        3. Claude Heiland-Allen
        4. Jun Lee
        5. Hans-Christoph Steiner
        6. Piksel
        7. Baran G├╝lesen
        8. Andy Farnell
        9. Ben Bogart
        10. Matthias Kronlachner
      4. References
    18. Index