Hey everybody -
Apologies for the long radio silence! This is not an announcement of V2, unfortunately, but it is an update on my progress. Here's where things stand:
First off, development time has been very slow for a couple reasons - the biggest is that my wife and I had our first child back in January (which has been awesome, but also very time and energy consuming...). I also have a full-time day job as a developer for an interactive studio here in Portland, which limits my dev time to any free time I can make on evenings / weekends...
That being said, I making steady progress on the app. I am nearing the end of my version 2 checklist, with just a handful of features and a couple of bugs left to resolve.
I don't have a definite timeline for the release, but I can promise that I am committed to getting a full featured, stable update in your hands as soon as I possibly can. I know that I have said this before...and I have learned to stop projecting potential release dates (free time is just too unpredictable these days). All I can really say at this point is - it will happen. I already have some exciting plans for features post-version 2. Any new features after V2 will be released incrementally rather than in one big update, so there won't be nearly as long of a gap in the future.
So, here's a little insight into what I've accomplished and what I have left to do:
Features complete and ready to go:
- Audiobus support (currently input slot only, but I am planning add real time recording into borderlands via the output slot soon - potentially as a quick turnaround update after V2 is released)
- Ability to save and load "scenes" - collections of sounds and clouds. This is especially helpful for live performance
- Ability to optionally delete sounds after throwing them offscreen to free up memory for new imported sounds.
- Resonant filters on each grain cloud (lowpass, bandpass, highpass, boost/cut options) with the option to enable per-grain randomization of the filter parameters.
- Ability to quickly duplicate clouds (create new cloud while target for duplication is showing parameters)
- Panning / width controls for each grain cloud (panning becomes available in "unity" spatialization mode, width becomes available in "L/R" spatialization mode)
Bugfixes / commonly requested tweaks that are currently ready to go
- Rotation of the screen now works, so landscape mode is supported in both directions
- Several issues that could cause version 1 to crash on launch have been addressed
- Better handling of memory, so larger files may be loaded
- Confirmed and tested support for hardware interfaces that don't currently work with version 1.
- Borderlands now adapts to the system sample rate (so 44.1 is possible, although performance is reduced. I plan to allow user to set "preferred sample rate" in settings dialog)
- Boosted performance - latest test allows 30 grain clouds with 8 voices each sampling a single stereo file on an ipad 2 (compared to less than 20-22 in version 1) (at 22050)
- File sharing is now enabled (so you can get your recordings and scene data off the ipad)
- Improved triggering system is much more accurate. 5 ms grains are REALLY 5 ms in duration.
- Revised handling of Lissajous plots (the dynamic waveforms in the center of each grain cloud) to maintain visual consistency across different sample rates (length will now be the same despite potentially changing block size)
Features left to complete before release: - Better import / export options - I am planning to support Audioshare and possibly dropbox at the moment.
- Settings menu with sample rate preference setting, global bpm, background audio on/off setting, etc...
- Option to show the names of the waveforms
- Tempo synced grains (This was previously complete, but I discovered a critical issue with the audio block size + tempo accuracy. Currently working on figuring out a more robust syncing system which will integrate with the new sample-accurate grain triggering mechanism, but this may be pushed to a post-V2 update if it starts taking too long). Likely will be synced to local tempo only in the release with midi sync coming later.
So that's the latest. I hope you are all doing well. Thank you for continuing to use the app, for your support, and for your patience!
Best,
Chris