Learning Core Audio: A Hands-On Guide to Audio Programming for Mac and iOS (Anglais) Broché – 30 mars 2012
|Neuf à partir de||Occasion à partir de|
- Choisissez parmi 17 000 points de collecte en France
- Les membres du programme Amazon Premium bénéficient de livraison gratuites illimitées
- Trouvez votre point de collecte et ajoutez-le à votre carnet d’adresses
- Sélectionnez cette adresse lors de votre commande
Les clients ayant acheté cet article ont également acheté
Descriptions du produit
Présentation de l'éditeur
Quatrième de couverture
Audio can affect the human brain in the most powerful and profound ways. Using Apple’s Core Audio, you can leverage all that power in your own Mac and iOS software, implementing features ranging from audio capture to real-time effects, MP3 playback to virtual instruments, and web radio to VoIP support. The most sophisticated audio programming system ever created, Core Audio is not simple. In Learning Core Audio, top iOS programming author Chris Adamson and legendary Core Audio expert Kevin Avila fully explain this challenging framework, enabling experienced Mac or iOS programmers to make the most of it.
In plain language, Adamson and Avila explain what Core Audio can do, how it works, and how it builds on the natural phenomena of sound and the human language of audio. Next, using crystal-clear code examples, they guide you through recording, playback, format conversion, Audio Units, 3D audio MIDI connectivity, and overcoming the unique challenges of Core Audio programming for Mac and iOS.
• Mastering Core Audio’s surprising style and conventions
• Implementing recording and playback with the Audio Queue architecture
• Using Audio Units to synthesize audio, perform effects on audio streams, capture from the mic, and mix multiple streams
• Managing file streams and converting formats with Core Audio’s helper APIs
• Creating positional audio in 3D space with OpenAL
• Using Core MIDI to synthesize audio on-the-fly
• Leveraging your Cocoa and Objective-C expertise in Core Audio’s C-based environment
When you’ve mastered the “black arts” of Core Audio, you can do some serious magic. This book will transform you from an acolyte into a true Core Audio wizard.
Aucun appareil Kindle n'est requis. Téléchargez l'une des applis Kindle gratuites et commencez à lire les livres Kindle sur votre smartphone, tablette ou ordinateur.
Pour obtenir l'appli gratuite, saisissez votre numéro de téléphone mobile.
Détails sur le produit
Commentaires en ligne
Meilleurs commentaires des clients
Il y a un nombre d'informations impressionnantes et des usages que je n'avais pas soupçonné possible avec CoreAudio. Si vous avez du temps et déjà un solide niveau en iOS je vous conseille cet ouvrage. sinon passez votre chemin ^^
Commentaires client les plus utiles sur Amazon.com (beta)
For me the most useful tips were:
1) Simple CheckError() logic to decrypt the 4 character mode and error code constants used throughout.
2) Clear explanation of file formats, audio formats, converters, and native PCM representations on IOS and OSX.
3) Pointers for where to find CoreAudio documentation (much of it can be found only in header file comments)
4) Clear pattern for required lifecycle sequence of constructing an audio units graph of nodes, which must be defined before open, opened before starting to set properties, and properties setup before initialize.
5) Reusable patterns for the sometimes awkward pointer arithmetic required to assemble AudioBufferLists on the fly.
6) Unkinking the awkward syntax of Output units, which are used for both hardware output and hardware input. Both the outbound bus #0 and inbound bus #1 have input and output scopes, which relate to where the unit fits into the graph. Clear description of threading, buffering, and clocking issues which must be handled in OSX context which may include multiple external audio accessories from different vendors, with different clocking and timing. After completing this tutorial I now "get it".
7) Clear description of the differences between OSX and IOS implementations.
8) The quick intro to OpenAL and Midi were interesting, and enough for me to understand how these work, though they aren't part of what I do.
Overall this book was a great help to me. I highly recommend it to anyone already experienced with OSX or IOS development, but wanting to dig deeper into audio. Not much audio background is required (the first chapters cover the basics), though you will need to be comfortable with working almost entirely in C with nary an NS* in sight. Even the file I/O operations use CoreFoundation (not Foundation) methods. If you are looking for a higher level interface, you may want to explore the AVFoundation or MediaPLayer frameworks, which are nicely documented in Xcode docs, but are not covered by this lower level tutorial.
That said, I have two criticisms of the text: their presentation of code snippets and the shallowness of their applications. The code itself is solid, with good references and such, but it's split up into a couple dozen of snippets for each chapter, which is kind of difficult to work with. It may be that it's impossible to present things in a better way, though. As far as the shallowness goes: as you build off their basic apps, you'll notice that things get a lot more complicated, rather quickly. I'm definitely glad they didn't throw us into the deep end of this right off the bat, but, at the same time, it's nuanced to integrate CA code alongside UI code. A simple drum machine or synth keyboard app would be really helpful, after showing us the trivial CLI apps.
On the whole, this is a fantastic and indispensable book, with a couple of things to improve to make it perfect. If you're looking at working with Core Audio, glance at Apple's documentation, then buy a copy. It will save you a lot of time and frustration.
The book is written with reality 'how-to' and art, and I would add a sense of humor which keeps it from being a dry interpretation of Apple engineering. Though the latter is brilliant Apple's documentation is dense and cumbersome which in 'Learning Core Audio...' authors' Adamson and Avila took that brilliance and laid it out in somewhat baby steps and breadcrumbs which make the subject accessible and practical.
As pointed out early on, 'Learning Core...' is not a beginning programming book but an advanced topic that assumes both exposure with the C language, Mac OS, Xcode and Objective C. This said it had been several years since I had thought in the C language or any language for that matter till I began the journey with Objective C about two years ago. What I found however was that as I worked through the example code which I would say don't just download it, physically type it in and absorb it. After you see what the codeset will do manipulate it and see what else it will do. This approach has pushed me and given renewed programming confidence and I personally thank this book for doing that.
I will add to that, in my case some of the chapters and projects took me multiple reads to 'get it' partly as it's how I learn. In fact I'm still revisiting a great deal of the book for clarity and referral as I work through my own ideas and projects.
The only criticism I would make on this excellent work and this was through my experience which may have been my setup and version of Xcode as initially i was using 4.2 on Snow Leopard. I found on a few projects to get them to work I had to include framworks not mentioned in the example code. This may have been my oversight or misinterpretation but there were a couple of projects which appeared to only need the AudioToolbox framework and I found through trial error that I had to add ApplicationServices a time or two. I will say prior to this book all of my work with Objective C and iOS had been coding for graphical apps. The majority of projects in this book make command line Terminal or Xcode Console executables and not iOS apps. This said, the plus in that is you will learn to code for the OS X operating system as well as being able to move the code with some modifications in to the iOS world.
Bottomline Chris and Kevin's 'Learning Core Core Audio...' is excellent, inspiring and confidence building for those interested in delving in to this 'black box' of chip and voodoo mystery.