- Series: The MIT Press
- Hardcover: 920 pages
- Publisher: The MIT Press; Har/DVD edition (October 22, 2010)
- Language: English
- ISBN-10: 9780262014465
- ISBN-13: 978-0262014465
- ASIN: 0262014467
- Product Dimensions: 8 x 1.5 x 9 inches
- Shipping Weight: 3.6 pounds (View shipping rates and policies)
- Average Customer Review: 18 customer reviews
- Amazon Best Sellers Rank: #184,751 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
The Audio Programming Book (The MIT Press) Har/DVD Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
I particularly like the way in which the authors treat Csound both as a tool and as a computer program whose internals are worthy of study and understanding. Again, the material here should be useful to experienced programmers who are just beginning with digital audio, as well as to those with a good understanding of digital sound who want to learn more about C programming.―Paul LaFollette, Computing Reviews
I particularly like the way in which the authors treat Csound both as a tool and as a computer program whose internals are worthy of study and understanding. Again, the material here should be useful to experienced programmers who are just beginning with digital audio, as well as to those with a good understanding of digital sound who want to learn more about C programming.―Paul LaFollette, Computing Reviews (Reviews)
The Audio Programming Book is an invaluable resource for composers, sound designers, and programmers. The contributors have done an outstanding job of communicating not only the technology but also the artistry of programming audio applications. That art will surely flourish further, thanks to their efforts.―Robert Rowe, Director, Steinhardt Music Composition Program, New York University (Endorsement)
Thanks to The Audio Programming Book, it has become practical for musicians to compose music and sounds themselves and to explore their own sonic world without limitations.―Jean-Claude Risset, composer (Endorsement)
The essential reference in digital audio programming, linking the rich knowledge and techniques of our past and present to a rapidly evolving future, The Audio Programming Book provides its reader with a comprehensive body of programs and processes and teaches the programming skills and math to use them.―John Chowning, Professor of Music, Emeritus, the Center for Computer Research in Music and Acoustics (CCRMA), Stanford University (Endorsement)
This book represents the meeting point of divergent lines of study that young computer musicians are desperate for. There is an extrodinary demand for a book where computer science, digital signal processing, music synthesis, electronic music, and algorithmic composition all come together. This is the only book you'll ever need if you want to learn to make your own plug-ins. An essential read, at the perfect time.―BT (aka Brian Transeau), composer/technologist (Endorsement)
Try the Kindle edition and experience these great reading features:
Showing 1-6 of 18 reviews
There was a problem filtering reviews right now. Please try again later.
But there are some issues.
1. If you get the Kindle version you don't get the accompanying DVD data. However, if you contact MIT Press, like I did, they are pretty good at getting you a copy of the disc for free. And you must get the DVD, there is a lot of great information on it.
2. The book does start out on the right foot with an introduction to C. I think this is important because I think the bulk of people interested in this book are probably Digital Audio Production guys who are Power Users but might not have done real programming. But even if you are coming from an experienced C programmer angel I don't think it hurts. However, I believe it is important that the book starts off giving an introduction to C because it sets the tone for the book, and where the book should stand out. There are no GOOD intro to audio programming books. Most books for the audio programming are usually geared toward advanced programming or signal processing, or are so watered down the as you give a non-audio interested programer the basis to get a job done. This is a problem, because sure you can fine plenty of intro to programming books that are happy to teach you some graphics programming along the way, but never for audio. It is ambitious this book tries to take this route.
3. Unfortunately, the code style doesn't skill to that newbie-to-digital-audio style.
First, this is an edited anthology book and it seems that every author for every section decided to do their own coding style for each section. And not just for the code itself, but also for compiling the code [the book switches from MAKE to Scons and back and never explains why]. The problem is, as should as you understand the code from one section, you end up having to relearn everything for the next because the next author has changed the code style. I don't understand why the authors didn't try to correct for this. Plus the authors don't stick to proper code conventions. A good example of each of these problem is the change between chapter 5 to 6. The code from C to C++ without any reason, but what makes it extra annoying, is that that C++ in improperly formatted ( Example: All the headers for all the classes are in 1 file. ) It is hard to tell, if it was supposed to be poorly written C code in C++ files, or a C++ program poorly organized and written to act like C without making use of classes.
Second, the code style itself, doesn't stick to simple easy to read conventions. The authors get into a bad habit of using more advanced C/C++ tricks to write less code [highly abbreviated variable names, Ternary operations instead of true If/Else code blocks]. Sure it is good for them, bad for the learner when you are trying to learn everything step-by-step [ And for you 'advance programmers' who scoff at reading someone complaining about those things, remember you were a newbie once too] You should NEVER write optimized code in any form when you are trying to teach something! That is irresponsible, and disrespectful toward your students who are trying to learn.
Third the end goals seem to change, as they are teaching you. You first learn how to generate a simple realtime sound with PortAudio [the ultimate goal], but then everything become about generating a wave file for output and the reader is left pondering how to generated more then one sound at a time and keep it going. When they do get to how to make a realtime plug-in, you aren't taught how to create a simple synthesizer, you just end up making a delay line. Sure a delay line is important, but it doesn't teach me, how I need to manage MIDI and generate sound continuously...
Anyway, if you can deal with those 3 things then you will get a lot out of this book and don't get me wrong there in this book.
However, this book really needed a few more revisions to be everything it could be. Maybe someday that will happen.
I don't think I can continue with this book as NOTHING works.
An example where multiple variables are declared using vague names:
double r, rsq, rr, costh, scal;
Or sometimes they use comments but the variable names are meaningless.:
a = exp(-k/T); //calc the constant ratio value
That said I would not recommended this book to someone who is unfamiliar with coding. The authors do try to give an introduction to c programming, however I found that the examples in this book would be very difficult for a new programmer to be able to follow, let alone compile, given that there are many libraries which must be linked etc. Personally though, I loved that upon opening the book for the first time I could flip through the pages gingerly and see tons and tons of straight c code. The theory is there, but more importantly so is it's practical application, and that's what makes this book awesome.