O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Making Musical Apps

Book Description

Want to turn your mobile device into a musical instrument? Or equip your game with interactive audio, rather than canned samples? You can do it with Pure Data (Pd), an open source visual programming environment that lets you manipulate digital audio in real time. This concise book shows you how to use Pd—with help from the libpd library—as an easily embeddable and widely portable sound engine.

Whether you’re an audio developer looking to create musical apps with sophisticated audio capabilities, or an application developer ready to enhance mobile games with real-time procedural audio, Making Musical Apps introduces you to Pd and libpd, and provides hands-on instructions for creating musical apps for Android and iOS.

  • Get a crash course in Pd, and discover how to generate and control sounds
  • Learn how to create and deploy algorithmic compositions that react to a user’s activity and environment
  • Use Java or Objective-C to integrate Pd and libpd into mobile apps
  • Learn the steps necessary to build libpd-based apps for Android and iOS

Table of Contents

  1. Preface
    1. Conventions Used in This Book
    2. Using Code Examples
    3. Safari® Books Online
    4. How to Contact Us
    5. Acknowledgments
  2. 1. Introduction
    1. A Great Investment
    2. Resources
    3. Prerequisites
      1. Android Setup
      2. iOS Setup
      3. Git
  3. 2. Making Noise with Pure Data
    1. Installing Pure Data
    2. A First Patch
    3. Adding Audio Input
    4. Sample Rates and Audio Channels
    5. Control Rate Objects and Messages
    6. Sending and Receiving Messages
    7. More About Messages
    8. Using MIDI with Pd
    9. Further Topics
  4. 3. When Not to Make Musical Apps
    1. Creating RjDj Scenes
    2. Anatomy of an RjDj Scene
    3. Patching for RjDj
    4. Deploying an RjDj Scene
    5. Receiving Sensor Input
    6. Controlling Graphics and Text
    7. Using rjlib
  5. 4. Embedding Pure Data with libpd
    1. Introducing libpd
    2. API Overview
    3. Opening Patches
    4. Finding Resources
    5. Sending Messages to Pd
    6. Receiving Messages from Pd
    7. Reading and Writing Arrays in Pd
    8. MIDI Support in libpd
    9. Odds and Ends
    10. Externals in libpd
    11. Audio Glue
    12. Launch Sequence
  6. 5. Pd for Android
    1. Setting Up the Development Environment
    2. Creating a Musical App: Part I
      1. Importing libpd
      2. Configuring libpd
      3. Connecting the User Interface
      4. Cleaning Up
    3. Creating a Musical App: Part II
      1. Receiving Messages from Pd
      2. Running Pd in a Background Service
    4. Improving the User Interface
    5. Building Externals for Android
  7. 6. Pd for iOS
    1. Setting Up the Development Environment
    2. Creating a Musical App: Part I
      1. Importing libpd
      2. Configuring libpd
      3. Connecting the User Interface
    3. Creating a Musical App: Part II
      1. Receiving Messages from Pd
      2. Using Externals
    4. Improving the User Interface
  8. 7. Outlook
  9. About the Author
  10. Copyright