AudioKit / AudioKitSynthOne
- суббота, 14 июля 2018 г. в 03:28:51
Swift
AudioKit Synth One: Open-Source iOS Synthesizer App
We've open-sourced the code for this synthesizer so that everyone is able to make changes to the code,
introduce new features, fix bugs, improve efficiency, and keep the synthesizer up-to-date with all
new capabilities of the base operating system.
If you're new to AudioKit, you can learn more: here. This code and app is made possible by all the contributors to AudioKit, code here. Many of the features of Synth One are availble as modules in AudioKit, allowing you easy access to filters, reverbs, effects, and other DSP processing.
The two primary branches of this repository are intended to be used as follows:
You must install the pods that we depend on before you can compile the project. To do so, run the following at the root of the project:
pod repo update
pod install
You may uncomment the line in Podfile
to switch to our cutting-edge staging (unstable) releases of AudioKit, as opposed to the stable releases in the mainstream CocoaPods specs.
If you are new to iOS development, we recommend the Ray Wenderlich videos. There is also a great tutorial on basic synthesis with AudioKit here.
Beginner? We have two additional code examples. There is a simple Swift Synth and a Sample Player. A fun exercise might be replacing the sample player code engine with synthesis.
We intend to have every major section of the code placed within its own folder, with an included README.md file, like this one. This file should explain the contents of the folder and give developers any hints about what could be improved.
AudioKitSynthOne/
- This folder contains most of the source codeAudioKitSynthOne.xcodeproj
- This file is a part of the workspace, which you should open insteadAudioKitSynthOne.xcworkspace
- This is the file you should open with Xcode, it contains reference to both the project files for the synth code and associated PodsOneSignalNotificationServiceExtension/
- code for a third party extension we usePodfile
and Podfile.lock
- Cocoapods configuration files.swiftlint.yml
- Swiftlint configurationHere's a few ideas for you to contribute to this historic project:
If you have audio development experience and want to be involved with contributing to the app store version of Synth One, please email hello@audiokitpro.com
There are a few major updates we intend for this synth:
You are free to:
(1) Use this code as a learning tool.
(2) Re-skin this app (change the graphics), modify the controls, and upload to the app store.
(3) Change the graphics, and include this as part of a bigger app you are building.
(4) Contribute code back to this project and improve the code for other people
If you use any code, it would be great if you gave this project some credit or a mention. The more love this code receives, the better we can make it for everyone. And, always give AudioKit a shout-out when you can! :)
If you make an app with this code, please let us know! We think you're awesome, and would love to hear from you and/or feature your app.
IMPORTANT: You must change the graphics if you upload this to the app store.
IMPORTANT: You must fill in your own private API keys for AudioBus and others in the Private.swift file to match your own project. The default placeholder values are not suitable for distribution.
Thanks to the countless sound designers and other volunteers. Plus, the developers listed below:
This is an open-source project intended to bring joy and music to people, and enlighten people on how to build custom instruments and iOS apps. All product names and images, trademarks and artists names are the property of their respective owners, which are in no way associated or affiliated with the creators of this app, including AudioKit, AudioKit Pro, LLC, and the other contributors. Product names and images are used solely for the purpose of identifying the specific products related to synthesizers, iOS Music, sampling, sound design, and music making.