NoteCollider app available in App store ∞
Calvin Flegal released "NoteCollide", an AudioKit-powered iPhone and iPad app that allows you to generate music and sound based on physics.
Tap the screen to add the selected note shape. Use the music note button to change note shapes, use the Fx button to add Fx shapes.
Fx shapes need to hit the same type of note shape three times in a row to add the effect to that note shape.
Shake your device to cause commotion.
Use the other controls to make the sounds more or less pleasant (tonality), or to increase physical chaos (weight).
AudioKit V3.3 Released and Xcode 8 Support ∞
There are two big changes in AudioKit v3.3. The first is that all the playgrounds have been separated into 6 playgrounds for Basic Tutorials, Synthesis, Playback, Effects, Filters, and Analysis. This allows the playgrounds to a bit more manageable to navigate and easier to focus on what you want to learn about. All the playgrounds default to iOS but can be changed to macOS if that's what you're compiling AudioKit for.
AudioKit V3.3 also addresses some sequencing problems people were having with 3.2 and many other bugs. The iOS and tvOS versions can be retrieved from Cocoapods but the macOS version will have to be installed directly. This should be fixed by v3.3.1.
Xcode8 support is available on the "Xcode8-Swift2.3" branch. This will allow you to compile AudioKit in your Xcode8 application, but you can not run playgrounds until we complete the transition to Swift 3.
AudioKit V3.2 Released ∞
This release is one of the biggest since we made the switch to V3! It seems like everyone on core team was hitting on all cylinders and we made so much progress since 3.1.3.
New and improved audio player and recorder nodes, with a powerful new AKAudioFile type
Laurent Veliscek completely rewrote the AKAudioPlayer and AKNodeRecorder classes so that they work much better now. Along the way he introduced the AKAudioFile class which can not only load and save files, but can edit and manipulate them asynchronously. Laurent created great playgrounds to help everyone learn how to use these new classes. This is a major update to the way you work with audio files in AudioKit.
Optimizations and Improvements
We're continually looking at ways to improve AudioKit's speed and abilities and we're happy to say that we made great strides with this release. The frequency tracking is excellent now and Matt Fecher's "Analog Synth X" now easily works on the oldest of iPads!
Jeff Cooper has contributed updates to the MIDI, Sequencing, and Sampling portions of AudioKit. We now have an AKDuration class that really helps with sequencer timing. Brandon Barber has helped with the new audio file and player work, added playgrounds, fixed a lot of random things as well.
AudioKit now has Pulse-Width Modulation and Phase Distortion Oscillators in addition to the general, FM, and morphing oscillators. In addition, all of these oscillators have polyphonic equivalents called oscillator banks that basically respond to MIDI type signals and can be played polyphonic out-of-the-box.
The sound font support is also improved.
Paul Batchelor and I got the Stanford audio library, Synthesis Toolkit (STK), full of physical models working with AudioKit. We've only ported a few physical models so far, but as you can see from AKMandolin, its a very cool library to have at our disposal. Let us know if there is a particular physical model you need us to port next.
New Example Projects and Better User Interfaces
Kanstantsin Linou from Belarus worked with me to create the new Recorder, Microphone Analysis, Song Processor, and SporthEditor examples. Kanstantsin also created new user interfaces for our musical Sampler and Sequencer Demo projects by Jeff Cooper.
Playgrounds and Web Site Updates
If you're familiar with AudioKit Playgrounds, you know how great they can be for prototyping audio code and designing sounds. However, we realized that if you're new to iOS / OS X programming and working with AudioKit, you may not be familiar enough with Playgrounds to really understand what they can do. You probably looked at the Playgrounds page on the website, saw a bunch of code, and said "Well that's all great, but what do they actually do?" To that end, Nick Arner made awesome videos of almost all of the Playgrounds in action. Many of the playgrounds have a user interface, so you can see in the videos how changing the UI affects the sounds.
Elizabeth Simonian has been helping us keep the AudioKit web site up to date and fast, so if you've noticed the site being a lot peppier, she's the one to thank!
Roadmap for upcoming updates
Stephane Peter and I are currently looking at ways to make AudioKit faster to compile in playgrounds. I'll also be working on writing more tests and providing some examples using Michael Tyson's AudioBus and Apple's Inter-App Audio. We'll be implementing Simon Gladman's Nodality as one of AudioKit's included examples. AudioKit is becoming the best place to get Haris Ali's EZAudio graphing software, so we'll be maintaining and improving that. As mentioned above, we'll be creating more physical models based on STK. While all this is being done we still are committed to making the web site and documentation better and better.
Finally, Matt Fecher and I will be giving a talk at next month's i360Dev conference, and we certainly hope to see some AudioKit users there, and create more! :)
Four common mistakes in audio development ∞
Michael Tyson of The Amazing Audio Engine wrote an excellent article on his A Tasty Pixel blog: Four common mistakes in audio development that should be required reading for Audio programmers. I won't go into much detail since you should already be at his site instead of this one. But, in case you are still here, I'll also point you to his Realtime Watchdog tool that he used to profile various audio libraries and you should use to check your apps as well.
The Amazing Audio Engine, and therefore Michael Tyson, is an inspiration to us all, even if our libraries differ in purpose and execution.
AudioKit Talk at 360iDev Conference ∞
AudioKit core team members Matt Fecher and Aurelius Prochazka will be giving a talk at this year's 360iDev Conference in Denver, CO on August 21, 2016. The talk entitled "Fast, Fun, and Professional Audio in Your Apps" will highlight how easy it is to add high-quality, professional audio features to your apps. In addition to their open-source contributions, they have recently been consultants on audio use in new apps for both indie releases and high-profile Swift projects for McDonald’s, Zumba, and more.
With Swift, it’s never been easier to not only add interactive audio to your app, but build professional, robust audio applications. Even though iOS and OSX are rich multi-media environments, app sound is often overlooked and true innovation in audio technology has lagged behind. This talk will show how easy it is to develop audio expertise using Swift playgrounds to learn about audio synthesis, processing, and analysis with real time audio feedback. We’ll move onto a discussion of how to use audio in apps, from traditional synthesizer emulations and sound-enhanced apps to more innovative applications.
Audio programming can be frustrating, no doubt. However, with the right tools, you can build professional audio features with minimal effort!
This talk will also feature:
- New and inspiring uses of audio in apps
- Demonstrations of the new and popular Swift interactive audio playgrounds
- This presentation will feature brand new material and code, exclusive to 360|iDev!