|
Software /
BitWiz Audio Synth 2 BitWiz Audio Synth for iPhone, iPad and iPod touch!
keywords: glitch, generative audio, synthesizer, algorithmic music, 8-bit, bytebeat, ipad, iphone Introduction![]() Custom keyboard for easy code entry BitWiz is a "bytebeat" synthesizer. It translates simple code expressions into 8-bit generative stereo audio in real-time. Explore the algorithmic music of simple bitwise arithmetic operations! ![]() X/Y-pad for real-time control BitWiz comes bundled with lots of examples, and you can easily add your own codes to the built-in library. You can also share your codes by e-mail or twitter, or open them in another application. Press a button to record your music in real-time, then export through iTunes file sharing, AudioCopy it into another app or share with your friends on SoundCloud. Use the XY-pad or an external MIDI-control to tweak variables in the expression in real-time, so you can play BitWiz as a musical instrument! It can also include the microphone input for crazy distortion effects! The entered code expression is used to calculate each audio frame. Don't understand how to write valid code? Just swipe with two fingers and let BitWiz randomly generate the code for you! Supports Audiobus: Stream live audio directly to other Audiobus-compatible apps, or process other apps through BitWiz as a real time effect unit!
Demo videos & soundsHere is a video of BitWiz in action. Here is another video showing BitWiz used as an effect in the Audiobus filter slot. And here are some sound examples. Features
Mentions and reviews
How it worksEven though you can just play around with the bundled demo codes and change some numbers here and there, which is entertaining enough, you might be interested in knowing the deeper details to understand how and why a code sounds like it does. BasicsThe basics are that the code, which consists of one or more mathematical expressions, is evaluated once per audio frame. The audio frame rate can be any integer division of 44100Hz. Audio frame counterFor each audio frame, the variable Wrapping to 8 bitsMultiple expressions can be separated by comma, and the resulting value of the last one is used. This result is wrapped to 8 bits and output as audio. The wrapping means that a result of 0-255 will pass through unchanged, while 256 will wrap back to 0, 260 will wrap to 4, 514 will wrap to 2, etc. Simplest sawtoothThis gives that the most simple code: t (a single t * 2 means that it will wrap around twice as fast, and produce a sawtooth wave one octave up. In the same sense, halfing the value will make it twice as slow: t / 2 producing a sawtooth wave at half the frequency, one octave down. More stuffThen, by manipulating the value of For example, this chaotic formula produces minimal rhythmic variations for a very long time: v=(v|((t>>4)+c)+t%18)/6+168,v|(v%222) Actually, at 7350Hz, since All the basic math operators ( Variables And here's some algorithmic phasing hardcore :)![]() Scan the QR code on your device and it will open in BitWiz Audio Synth Frequently Asked QuestionsHow do I record?Long-press the play/stop button to start/stop recording. New recordings show up in the library (# button), where you can Audio Copy or open them in other apps. You can also access the recordings through iTunes file sharing if you want to use them on your computer. How does stereo output work?If the current code uses the variable What's the point with having multiple expressions if only the last one makes sound?Because the earlier expressions can set variables which are then used in the last expression: a = t>>5, t ^ a + t * a How to implement boolean stuff when there are no if/then statements?You need to think functional instead of imperative programming. For example, say that you want the variable a = 10*y + b*(1-y) Also, BitWiz has comparision operators, so if we instead want to test if z = y>123, a = 10*z + b*(1-z) Can it do recursion?Yes! All variables except the pre-defined ones are kept for the next evaluation of the code. Here's an example that creates our own time counter instead of using the pre-defined a=a+1, a*4&a>>5 Actually, Can you implement my favorite feature?Maybe yes, maybe no. Drop me an e-mail and I'll try to get back with an answer! Where does this method for audio synthesis come from?I first saw it on viznut blog: Algorithmic symphonies from one line of code |