- Fix layout issue when launching with iPhone in landscape orientation.
- Add setting for including Apple AUs.
- Add global armed track count indicator.
- Long-press REC button to un-arm recording for all channel strips.
- MIDI Keyboard: allow scrolling by simply dragging on its toolbar.
- Fix status bar layout on older iPads.
- Support up to 128 hardware channels.
- Work around iOS quirk where changing sample rate doesn't seem to work.
- Fix auto-disabling HW input when switching to internal mic, to avoid feedback.
- If recording stopped with failure, save it instead of discarding it.
- Improve rec error messages.
- Long-press navigator button to show/hide all plugins.
# NEWS
- Add setting for how to exit plugin fullscreen: edge swipe or buttons.
- Add setting for initial window size: default/maximized.
- Allow right-edge swipe to show navigator also on iPhone.
- Plugin maximized: avoid top bar also on iPhone landscape.
- Plugin maximize/fullscreen: use textual edge swipe hints.
- Plugin fullscreen: Ignore edge swipe near center of screen width.
- Show channel rec time as bar:beat, but switch to 'tail...' while recording tail.
- Built-in keyboard: make keys respond also in the area below them.
- MIDI matrix: indicate destinations with active MIDI filtering as yellow.
# FIXES
- Fix rare crash when opening midi destination view.
- Fix laggy built-in keyboard in some situations.
- Add work-around for buffer size blocked by Siri on some devices.
- Fix iPhone orientation issue where interface could become upside-down.
- Reset MIDI destination filters when clearing session.
- Clear connections to 'MIDI Control' when clearing session (but not on session load).
- Minor tweaks.
NEWS:
- Add AUv3 clock divider/multiplier setting.
- Plugin window modes: Default, Custom, Maximized, Fullscreen.
- Swipe from top screen edge to exit plugin Fullscreen mode.
- Add the 'Navigator', a list of all channels and nodes for quick navigation and showing/hiding plugins.
- Swipe from right screen edge while plugin is maximized/fullscreened to show Navigator.
- Move Bookmarks into Navigator.
- Snap plugin window to screen edges when moving/resizing.
- Add plugin window grid snap, enable it in the settings menu.
- Add tail-recording: tapping pause will continue recording until you tap REC.
- Enable Apples system-provided Audio Units on iOS 13 or later.
- Change 'Show Plugin' to new 'Show / Hide Plugin' toggle action.
- Add 'Show & Front Plugin' action that always shows the plugin.
- Add RELOAD in node long-press menu. Reloads the node, preserving state.
- Ask before ejecting node.
- Add 'Reset Help Hints' in settings menu.
- Add app icon long-press shortcuts: Restore Windows, Open Default Session, Open Last State.
- Tap AUM background to bring keyboard focus back to AUM. (AUv3 plugins will take keyboard focus when touched).
- Change tap-tempo keyboard shortcut from § to T.
- Add MMC Pause command support.
- Show alert when invalid filename characters has been replaced.
- Channel record time display is now in min:sec format.
- Try to Trash deleted sessions instead of actually deleting them.
- Update users guide.
- Don't show Ableton Link notifications.
- Update to Ableton LinkKit 3.2.1
- Various minor tweaks and fixes.
FIXES:
- Use h.m.s instead of h:m:s in default preset & session name.
- Fix initial silent gap when starting recording from stopped state.
- Fix intro logo jump when status bar is shown.
- Don't hide file extension when renaming folder.
- Fix REC button flashing when loading project while transport playing.
- Fix node slot load-animation glitch on iOS 17+
- Improve consistency of close-buttons on iPhone.
- Don't allow dragging plugin window if touch is inside plugin UI.
- Fix empty plugin window if plugin is closed and re-opened before dismiss animation finished.
- Preserve main parameter selection when reloading crashed plugin.
- Ensure old node is released fully before reloading it.
- Add setting to show system status bar.
- Add some close-buttons on various popup views.
- Improve waiting for save at app termination.
- Keep track of unmatched state when loading AUv3 MIDI mappings, and try to re-apply it if the available parameters changes.
- Fix audio engine not restarting when coming back from background.
- Show name of currently loading node when loading state.
- Replace : with . in filenames since : is not allowed in some file systems.
- Add Share button in Engine Info to copy info to pasteboard, for improved user support.
- Workaround minor Ableton Link glitch, fixes FilePlayer not starting at some tempos.
- Fix some alert popups appearance in combination with some iOS accessibility settings.
- Various minor tweaks and improvements.
- Internal tweaks regarding samplerate and buffer size changes
- Improve plugin window bypass detection
- Fix iPadOS 16 launchscreen layout bug
- Tweak handling of invalidated/crashed AUs
- Avoid interrupting the audio engine if microphone is muted
- Handle new audio port types
- Add advanced section in Engine Info
- Enumerate all audio interface channels even if they're not listed by the device. (For example ESI GIGAPORT eX)
- Long-press project/recording browser EDIT button to show hidden files
- Strip leading and trailing dots when generating or renaming filenames
- LP/HP Filter: ensure coeffs update on init and after sample rate change
- Add a 'last opened' sort option
- Try delaying AU release if plugin crashed
- Keyboard shortcut: use § instead of TAB for tap tempo
- Tweak presentation of 'Save in Plugin' for plugins not supporting system-wide user presets
- Fix saving of multiple tempo-presets with the same tempo
- Avoid 3-finger editing menu also on iPhone.
- Fix exported UTI type for aum session files, fixes apps freezing when opening attached AUM session.
- Don't crash when renaming item in search result so that it no longer matches search text.
- Fix some menu item layout issues when rotating iPhone.
- Fix some layout glitches for MIDI CC filter matrix button.
- Add 192kHz sample rate option.
• Fix occasional FilePlayer silence when tapping Rewind while playing.
• Don't clear SessionLoad MIDI controls on session CLEAR.
• Work around iPhone landscape orientation bug introduced by iOS 16.
• Various layout fixes for iPhones with notch.
• Add 32 frame buffer size option.
• Don't hide keyboard shortcuts bar, since this made the text input settings icon disappear when using external keyboard.
• Clarify mic/rec permission message.
• Don't scroll to first channel on device rotation.
• Ensure plugin windows are not opened outside of visible screen area.
• Fix calculation of MIDI controlled indexed parameter stepping in cycle-mode.
• Support indexed params with non-zero minimum value.
A few quick bugfixes:
- Global SOLO button location on device orientation change.
- Handling of '+' sign in fader dB numeric entry.
- Order of Tip Jar items.
- MIDI ctrl CLEAR.
Major 1.4.0 changes:
ENGINE
- Add 64kHz sample rate option.
- Add 'DJ style' combined LP/HP filter node.
- Make Transport Clock sample-precise when Ableton Link is disabled.
- AUv3: don't process bypassed nodes.
- Always keep running in bg if there are any channel strips in the session.
- Improve fader smoothing to avoid zipper noise.
- Fix faulty report of latency compensation buffer overflow when having mix bus feedback.
- Fix issue with MIDI/MMC stop-rewind with same timestamp.
- Fix FilePlayer locate position if file has sample rate different from current session.
- Automatically mute input nodes if they change from external to built-in microphone, to avoid feedback.
MIDI
- Rewrote MIDI Clock Send, now part of the MIDI matrix and can be connected to multiple destinations.
- MIDI Clock Send settings for sync offset and latency compensation mode.
- MIDI Clock Send can now send Song Position Pointer.
- New MIDI Controls for Tempo (BPM), Tempo Presets (trigger specific tempo changes via MIDI), Un-solo All, Scroll to Channel, MMC Locate/Goto & Rewind.
- MIDI Control: allow OMNI channel.
- Add MIDI Load Session 'force link tempo' toggle setting.
- Support PitchBend (14 bit) and ChannelPressure (7 bit) for MIDI Control.
- Add a virtual CoreMIDI 'AUM' Source.
- Add Network MIDI view, where one can browse MIDI hosts on the network and connect/disconnect them, and enable/disable the network session.
- MIDI Keyboard: add midi pass through input
- Allow save/load/copy/paste/clear of mappings for each MIDI control section, as well as batch set All MIDI Channels. (Tap the three dots in the section title)
- AUv3: allow multiple MIDI inputs (virtualMIDICableCount).
- Add MIDI Swap Connections button: Tap endpoint name in matrix, then tap swap symbol.
- Allow renaming CoreMIDI hardware endpoints.
- Distinguishing multiple hardware controllers of same model by adding their USB port location to their name.
USER INTERFACE
- Tap fader dB label for numeric entry.
- New node slot long-press menu adds Node Move/Copy/Swap, also between channels.
- Show DSP% and reported latency per node when dragging node to the right.
- Show UI indication if channel is producing bad signal values.
- New Node Statistics: per-node DSP%, latencies, load/save times, etc. (tap global DSP/battery indicator and then Node Statistics).
- MIDI matrix: Add resize handle. Tap to maximize/minimize.
- Redesign and put tempo menu inside top bar.
- Keyboard: don't play notes while scrolling.
- AUv3: Add bypass button in title bar.
- Tempo, Preset and Session Load MIDI actions: swipe and tap EDIT to replace item.
- AUv3 main param knob: Use a new custom widget for Indexed parameters. Drag or tap to change value.
- Save and restore plugin z-order in session state and when show/hide all plugins.
- MIDI Matrix: draw connections to/from bypassed/unavailable endpoints dashed.
- FilePlayer: add Format info cell.
- Redesign MIDI keyboard UI.
- Improve channel wire drawing, avoid animation glitch when resizing.
- Improve interference with screen-edge swipe system gesture.
- Improve support for AUParameters with indexed value.
- MIDIKeyboard: avoid iPhone notch for bar buttons
- Don't get stuck in control-finder mode if plugin has no parameters.
- Fix 3-finger touch-up delay on iOS 14.
- Avoid occasional lag while moving/resizing plugin window.
- Fix viewWillDisappear not being called on AUv3 viewController.
- Fix iphone rotation re-layout of MIDI Filters and MIDI Ctrl range button.
- Improve alert popup presentation. Fixes alerts hiding behind other views on iPhone in some cases.
ALSO
- Added a Tip Jar for those who'd like to support future development.
- Drop support for 32-bit devices. Require iOS 11.
- Updated LinkKit.
- Update help.
- Various tweaks, optimizations and fixes.
This update delivers many new features, tweaks and improvements! Some of them are listed below:
ENGINE
- Add 64kHz sample rate option.
- Add 'DJ style' combined LP/HP filter node.
- Make Transport Clock sample-precise when Ableton Link is disabled.
- AUv3: don't process bypassed nodes.
- Always keep running in bg if there are any channel strips in the session.
- Improve fader smoothing to avoid zipper noise.
- Fix faulty report of latency compensation buffer overflow when having mix bus feedback.
- Fix issue with MIDI/MMC stop-rewind with same timestamp.
- Fix FilePlayer locate position if file has sample rate different from current session.
- Automatically mute input nodes if they change from external to built-in microphone, to avoid feedback.
MIDI
- Rewrote MIDI Clock Send, now part of the MIDI matrix and can be connected to multiple destinations.
- MIDI Clock Send settings for sync offset and latency compensation mode.
- MIDI Clock Send can now send Song Position Pointer.
- New MIDI Controls for Tempo (BPM), Tempo Presets (trigger specific tempo changes via MIDI), Un-solo All, Scroll to Channel, MMC Locate/Goto & Rewind.
- MIDI Control: allow OMNI channel.
- Add MIDI Load Session 'force link tempo' toggle setting.
- Support PitchBend (14 bit) and ChannelPressure (7 bit) for MIDI Control.
- Add a virtual CoreMIDI 'AUM' Source.
- Add Network MIDI view, where one can browse MIDI hosts on the network and connect/disconnect them, and enable/disable the network session.
- MIDI Keyboard: add midi pass through input
- Allow save/load/copy/paste/clear of mappings for each MIDI control section, as well as batch set All MIDI Channels. (Tap the three dots in the section title)
- AUv3: allow multiple MIDI inputs (virtualMIDICableCount).
- Add MIDI Swap Connections button: Tap endpoint name in matrix, then tap swap symbol.
- Allow renaming CoreMIDI hardware endpoints.
- Distinguishing multiple hardware controllers of same model by adding their USB port location to their name.
USER INTERFACE
- Tap fader dB label for numeric entry.
- New node slot long-press menu adds Node Move/Copy/Swap, also between channels.
- Show DSP% and reported latency per node when dragging node to the right.
- Show UI indication if channel is producing bad signal values.
- New Node Statistics: per-node DSP%, latencies, load/save times, etc. (tap global DSP/battery indicator and then Node Statistics).
- MIDI matrix: Add resize handle. Tap to maximize/minimize.
- Redesign and put tempo menu inside top bar.
- Keyboard: don't play notes while scrolling.
- AUv3: Add bypass button in title bar.
- Tempo, Preset and Session Load MIDI actions: swipe and tap EDIT to replace item.
- AUv3 main param knob: Use a new custom widget for Indexed parameters. Drag or tap to change value.
- Save and restore plugin z-order in session state and when show/hide all plugins.
- MIDI Matrix: draw connections to/from bypassed/unavailable endpoints dashed.
- FilePlayer: add Format info cell.
- Redesign MIDI keyboard UI.
- Improve channel wire drawing, avoid animation glitch when resizing.
- Improve interference with screen-edge swipe system gesture.
- Improve support for AUParameters with indexed value.
- MIDIKeyboard: avoid iPhone notch for bar buttons
- Don't get stuck in control-finder mode if plugin has no parameters.
- Fix 3-finger touch-up delay on iOS 14.
- Avoid occasional lag while moving/resizing plugin window.
- Fix viewWillDisappear not being called on AUv3 viewController.
- Fix iphone rotation re-layout of MIDI Filters and MIDI Ctrl range button.
- Improve alert popup presentation. Fixes alerts hiding behind other views on iPhone in some cases.
ALSO
- Added a Tip Jar for those who'd like to support future development.
- Drop support for 32-bit devices. Require iOS 11.
- Updated LinkKit.
- Update help.
- Various tweaks, optimizations and fixes.
USABILITY
- Add 'Open Default' button at launch screen, opens project or folder named 'Default'.
- Add keyboard shortcuts (Hold CMD key to see them).
- Tap again to confirm Remove Channel, Overwrite Session, and Clear Session.
- Auto-save current state before loading or clearing a session. Tap 'Restore Previous State' in File menu to restore.
- Add 'Restore last removed channel' item in channel import view.
- Ask before loading session from file URL.
- Show progress popup when saving, loading, clearing session.
- If AUv3 fx node has both main-param knob and is a MIDI destination, show the knob instead of the MIDI menu button.
- FilePlayer: add MIDI ctrl param button in title bar.
- Long-press session file, 'Copy URL' copies universal link that opens the session.
- Allow URLs in session notes. Can be long-pressed while not editing.
- Scroll to start after loading session.
- Improve grouping of node collections in node slot picker view.
- Transport drag: improved user interaction.
- Update help.
- Help: add button to open help in external web browser.
- Help: put table of contents in side bar if width allows.
- Help: remember scroll position.
- Tweak plugin window maximized size.
- Plugin title bar is now thinner.
- Double-tap background again to re-show previously hidden plugins.
MIDI
- Add MIDI Filtering for note on/off, poly aftertouch, channel aftertouch, pitchbend, program change, sys real-time, sys common, sysex, and any specific CC.
- New MIDI Bus node! Merge sources and/or destinations, with filtering and MIDI-controlled 'pass-through' toggle.
- All MIDI destinations now have filters.
- Added MIDI activity indicator to all nodes with MIDI outputs.
- Add MIDI actions for metronome on/off, prev/next bar, and 'hide all plugins'.
- Also track Sustain (cc64) and Sostenuto (cc66) for all-notes off.
- MIDI Sources view: group by owning node/device/kMIDIPropertyModel.
- Transpose MIDI filter: add octave up/down button.
- MIDI Ctrl range mapping: show actual value instead of percentage.
- MIDI param button with control-finder now also for most built-in nodes such as filters/EQs/pan/gain.
- Channel import: Also restore MIDI connections to/from external sources.
ENGINE
- Add sync offset setting (ms) in Clock Options.
- New Time Offset node for manual latency compensation etc.
- Allow custom name and color for mix buses.
- Add Engine setting for input device / mic source / polar pattern selection, including support for built-in stereo mic!
- Add output route button in Engine settings (AirPlay etc).
- Don't stop other start/stop synced Link peers when clearing or loading session.
- Long-press play/pause button to start/stop transport without affecting synced Link peers.
- Also support '_size:' special tag instead of 'size:' (easier for hosts to ignore)
- Allow up to 16 beats per bar time signature.
- AUv3: set contextPresentationLatency on input busses.
- Don't change latency compensation when bypassing latency-introducing node.
- Warn if latency compensation reaches maximum limit.
FIXES
- FilePlayer: add missing Bypass MIDI control.
- Trim whitespace from filename when saving.
- Session picker: fix restore of name/date sort mode in all cases.
- Fix MIDI Control range button layout in some popovers.
- AUv3: call selectViewConfiguration also on first display.
- Fix kbd settings popup on iphone.
- AUv3 multi-out: extra outputs report same latency as main instance.
- Node picker: Improve/fix IAA multi-port grouping and sort on last time used. (NOTE: only IAA nodes that has been used at least once will be grouped.)
- Fix metronome accuracy if changing tempo and there is latency compensation.
- Bring back AUv3 show-view-hidden-on-load hackaround for iOS RAM allocation bug (still present in iOS 15).
- Avoid crash if plugins take too long to save when AUM goes to background.
- Auv3: allow multiple preset load actions for the same preset.
- Don't auto-set MIDI ctrl channel for channel strip 17 and onwards.
- Fix Ableton Link on iOS 14 (multicast networking entitlement).
- Pass through touches on built-in keyboard when showing params from plugin.
- Restore MIDI connections between imported nodes.
- Various minor fixes.
- AUv3: Improve handling of the parameter tree being changed by the plugin.
- Improve consistency for dark-mode in AUv3 plugins.
NEW FEATURES
- Add Control Finder: tweak an AUv3 parameter to find and show its MIDI control
- Add BT MIDI setup button in MIDI Matrix for faster access
- Improved 'instance name' editor for AUv3 plugins, now with color picker!
- MIDI controls: sort by visual node order in channel strip
- MIDI controls: Add all/assigned/unassigned view filter
- Tap plugin keyboard button to hide keyboard if already connected and visible
- AUv3: add button for quick access to parameter mappings
- Add search bar in Files menu and Import Channels view
- AUv3: don't use contextName for short instance labels etc. Developers should go back to audioUnitShortName instead.
- AUv3: update contextName with host track/slot context, like 'A1:2' etc
- FILES menu: add home-button to quickly go back to root menu
- FILES menu: Add search/filter bar
IMPROVEMENTS
- If no AUv3 plugins found, tell user to try a reboot
- Improve size of custom view presentation on iphone in landscape
- MIDI ctrl: Improve siblings view, when MIDI msg is mapped to more than one param
- iPhone: don't use popovers for plugin params and midi routing
- MIDI controls: Make each section easier to read, and add icon
- Use in-app product view for downloadable plugins/apps
- Files menu: put Sessions and Recordings in two top-level folders
- AUv3: remove show-own-controls toggle as it's not really used by any plugin
- FILES menu: set navigation bar title to SESSIONS or RECORDINGS
- FILES menu: make it wider
- Defer system gestures for all screen edges.
- AUv3: limit plugin windows max size to screen size, since larger are not supported by iOS
- Tweak value string for AU params in milli-range
- Updated LinkKit to 3.1.3
FIXES
- Work around bug that allowed all touches through when presenting presets on iphone
- Fix defer screen edge gesture
- Lots of minor tweaks and fixes
- Ignore folder in tmpdir when trying to rescue lost recordings
- Fix layout issue in Import Channels
- Filter out bad values before sending out audio, avoids rare case of plugins making audio silent until AUM is restarted
- Fix wrong touch coordinates for AU windows opened in iPhone Landscape orientation.
- Handle very long channel names, avoid hanging in infinite loop
- Make HW input nodes safer, avoiding rare potential crash
- Added work-around for an iOS 14 bug that made all AUv3 icons disappear. You need to have at least one IAA app installed for this to work.
- Fixed occasional crash when (dis)connecting audio interface leading to sample rate change.
- Updated Audiobus SDK for iOS 14 compatibility.
- AUv3: fix backwards compatibility for LoadPreset MIDI actions
- Add switch-to-AUM MIDI control (experimental!)
- Add switch-to-IAA MIDI control
- Various minor fixes and improvements to avoid rare crashes
- Work around iOS bug that made pointer device left-click not work on node menu button
• Avoid crash with audio interfaces having more than 32 inputs or outputs.
• Add Hardware Send node.
• Timestamp outgoing MIDI events to avoid jitter.
• Add Minimum Latency setting, to reduce MIDI output jitter.
• AUv3: Fixes UI freeze after selecting preset inside plugin on iOS older than 12.0.
• AUv3: sort user presets alphabetically.
• Work-around iOS 12/13 samplerate change bug.
• FilePlayer: allow opening external files in-place (document picker), iOS 11 required.
• AUv3: Fix if presets with same name exists in multiple locations (local/plugin/factory).
• Duplicate channel: insert to the right of duplicated channel.
• Updated 3rd party SDKs.
• Various fixes for rare crashes.
• Fix audio session interruption handling on iOS < 10.3.
• Fix some rare multi-touch layout issues during channel reordering.
• AUv3: save selected mainParam keyPath instead of address (which could change between runs).
• Allow opening plugin UI while playing internal keys etc.
• Fix animation quirk when zooming out during channel reordering.
• Fix loop-hole that could allow loading new session before current load has finished.
• Silence disconnected HW inputs.
• Fix a bug where latency compensation depended on channel order.
• Allow transport buttons to be used while Menu is open.
• AUv3: Ramp parameter events (20 ms) if kAudioUnitParameterFlag_CanRamp is set.
• Support 'add as fileplayer' from AudioShare.
• AUv3: Default to current preset name when saving user preset.
• AUv3: invalidate node if changing sample rate fails.
• Fix crash when reloading terminated IAA node.
• Tweaks and improvements, as usual.
• Update users guide.
• Fix failure to save recording if channel had umlauts (áåäöô etc) in its name.
• Fixed a couple of crashes and stability issues.
• Allow multiple CoreMIDI endpoints with the same name, appending a number.
• AU/IAA: don't loose track of MIDI endpoint if reordering node/channel after node was invalidated.
• Tweak UI presentation of AUv3 input/output busses.
• AUv3 multi-bus: default to next available bus, not last available bus.
• AUv3 multi-bus: use next available in/out when duplicating channel.
• AUv3: update selected preset in list when changed from within plugin UI.
• Skip AUParameters with nil identifier. Avoids crash when saving state for VoxSyn Pro.
• AUv3: allow plugins to set preferred view size, by adding AudioComponent tags in the form of 'size:{300,500}'. First size that fits on screen will be picked.• Multi-bus AUv3 support! This means side-chaining for plugins like FabFilter Pro-C2 and Audio Damage RoughRider3, as well as multiple outputs for plugins that implements it.
• Add separate play and stop MIDI trigger actions.
• Support AUv3 user presets shared across hosts in iOS 13.
• Node bypass can now be MIDI controlled.
• Persistent MIDI endpoints: disconnected/crashed stuff are restored when reconnected.
• Restore AUv3 plugin window position, size and visibility when loading session.
• Double tap on background to close all plugin windows.
• Ensure audio component register updates at launch and are sorted correctly.
• Include polyphonic aftertouch in MIDI transpose and note range filter.
• Include fx node dependencies when sorting channels.
• Don't send MIDI or Param events to bypassed AUv3s.
• Restore midi mappings if AUv3 parameterTree is replaced.
• AUv3: rescue MIDI mappings when reloading crashed plugin.
• Improve error reporting for AUv3 plugins that fails to load.
• MIDI control param view: fix layout bug since iOS 13.
• Show plugin via MIDI: also scroll to channel.
• Don't apply custom AUM appearance and dark mode on hosted plugin views.
• Various fixes and improvements (as always!).
• Update users guide.
• Fix crash at launch on iOS 9
• Update to AB SDK 3.0.10
• iOS 13 adaptations
• Various minor UI tweaks and fixes
• IAA registry update optimizations
• Ignore MIDI strips in Meter channel source lists
• Simplify and improve 'All notes off' button.
New since 1.3.1
• Update users guide
• Show error message if recording failed to start or finish
• Rescue old tmp files (recordings)
• MIDI sources list: update if endpoints are added/removed while visible
• Show error message if plugin failed to load/save preset
• Various minor tweaks and improvements
• Fix bug that limited AUv3 MIDI output to maximum 256 byte packages
• Keep track of AUv3 MIDI output note states even if not connected
• Works around IAA bug in iOS 12.4
• Store AUParameterGroup MIDI mappings by keyPath instead of displayName
• Add some safety when listing MIDI clock destinations (avoid crash in rare cases)
• Update to AB SDK 3.0.9
A quick bugfix for devices running iOS 9.x, and a fix for MIDI filter persistence. All news for 1.3.0 below:
MAJOR NEW FEATURES
• Finally, updated to Ableton Link 3 with start/stop support!
• Add new "MIDI strip" channel type to hold MIDI-only AU plugins.
• Allow importing channels from another session. (Tap IMPORT add-button, or long-press a session file and choose 'Import channels')
• Allow easy duplication of channel strip.
• Allow loading sessions via MIDI actions. Its configuration is saved globally instead of in the session.
• Add MIDI program change as recognized MIDI control messages.
• Add MIDI ctrl for tap tempo.
• Add MIDI action 'Show Plugin' for AUv3 nodes.
• Add MIDI actions for AUv3 preset-loading.
• Avoid stuck notes when bypassing/disconnecting MIDI sources or changing MIDI destination filter/transpose
• Show AU contextName (if set) in plugin title and as node icon subtitle, long-press AU plugin title bar to edit.
IMPROVEMENTS
• Re-apply preferred samplerate on audio interface route change.
• Remember preferred sample rate on app launch.
• Save preferred instead of current sample rate in session.
• Bring keyboard to front if currently behind the plugin window when tapping plugin window keyboard button.
• Send error string to Audiobus if preset load failed.
• MIDI matrix: highlight source and dest on touch-down.
• Support upside-down portrait on iPhone.
• Improve display of long names in MIDI control table.
• MIDI learn consistency: always ignore the message that triggered the learn.
• Tweak node param-knob and menu button layout for consistency.
• Only update latency compensation on node-bypass if the node has latency.
• Save project: save when tapping Return on keyboard.
• Various minor UI and layout tweaks.
• Keep connections to MIDI Control from permanent MIDI sources on load/new session.
• Minor optimizations for MIDI Control.
BUGFIXES
• AUv3 Transpose: ignore extra bytes in note messages (hello Thesys).
• Clear MIDI matrix when loading session so it isn't keeping connections from previous session.
• Don't crash when trying to MIDI-control parameters of a crashed AU plugin.
• NodePicker: avoid keyboard on iPhone.
• NodePicker: fix memory leak if dismissed while in search mode.
• NodePicker: hide 'remove slot' button while searching.
• NodePicker: hide search if collection empty.
• Make sure we don't free MIDI sources/destinations too early. Hopefully avoids rare crash...
• Improve MIDI safety when AU plugin was invalidated (crashed).
• Update MIDI matrix correctly if visible while loading session.
MAJOR NEW FEATURES
• Finally, updated to Ableton Link 3 with start/stop support!
• Add new "MIDI strip" channel type to hold MIDI-only AU plugins.
• Allow importing channels from another session. (Tap IMPORT add-button, or long-press a session file and choose 'Import channels')
• Allow easy duplication of channel strip.
• Allow loading sessions via MIDI actions. Its configuration is saved globally instead of in the session.
• Add MIDI program change as recognized MIDI control messages.
• Add MIDI ctrl for tap tempo.
• Add MIDI action 'Show Plugin' for AUv3 nodes.
• Add MIDI actions for AUv3 preset-loading.
• Avoid stuck notes when bypassing/disconnecting MIDI sources or changing MIDI destination filter/transpose
• Show AU contextName (if set) in plugin title and as node icon subtitle, long-press AU plugin title bar to edit.
IMPROVEMENTS
• Re-apply preferred samplerate on audio interface route change.
• Remember preferred sample rate on app launch.
• Save preferred instead of current sample rate in session.
• Bring keyboard to front if currently behind the plugin window when tapping plugin window keyboard button.
• Send error string to Audiobus if preset load failed.
• MIDI matrix: highlight source and dest on touch-down.
• Support upside-down portrait on iPhone.
• Improve display of long names in MIDI control table.
• MIDI learn consistency: always ignore the message that triggered the learn.
• Tweak node param-knob and menu button layout for consistency.
• Only update latency compensation on node-bypass if the node has latency.
• Save project: save when tapping Return on keyboard.
• Various minor UI and layout tweaks.
• Keep connections to MIDI Control from permanent MIDI sources on load/new session.
• Minor optimizations for MIDI Control.
BUGFIXES
• AUv3 Transpose: ignore extra bytes in note messages (hello Thesys).
• Clear MIDI matrix when loading session so it isn't keeping connections from previous session.
• Don't crash when trying to MIDI-control parameters of a crashed AU plugin.
• NodePicker: avoid keyboard on iPhone.
• NodePicker: fix memory leak if dismissed while in search mode.
• NodePicker: hide 'remove slot' button while searching.
• NodePicker: hide search if collection empty.
• Make sure we don't free MIDI sources/destinations too early. Hopefully avoids rare crash...
• Improve MIDI safety when AU plugin was invalidated (crashed).
• Update MIDI matrix correctly if visible while loading session.
Another quick fix, sorry! Squash a bug that crept into the MIDI Control view, when having more than 8 channels.
This is a quick 1.2.7 update that fixes a crash when trying to present the available parameters of certain AUv3 plugins.
Full list of improvements, fixes, and new stuff for the recent 1.2.6 update below:
User Interface:
- Speed up app launch
- New Save UI with folder picker navigation
- Add search bar to node picker (drag down to reveal it) where you can search for plugins and IAA apps, etc
- Append current date and time to 'Untitled' session name
- Use title of source node for unnamed channels.
- FilePlayer preview: auto-play when tapping preview button
- Tapping 'home' button in chan bookmark menu when already at the start now scrolls to the end
- Bus sends: show amount in dB as well as percent
- Show parameter min/max in MIDI control list for built-in filters etc
- Add time and date in engine status view (tap DSP/battery indicator)
- Various UI layout and transition improvements
- If main audio engine is not running, color play button red and show warning message when tapped
- Allow access to transport controls while Clock Options menu is open
- Use numbers and punctation keyboard for value edit popups
- Various graphics optimizations and pixel-level tweaks
- Sort folders first in file lists
- Various users guide updates
Engine:
- Add 8 more mix busses
- Add metronome pre-roll-only toggle in Clock Options menu.
- Automatically reset transport when changing pre-roll if not running
- Deactivate audio session when going background and stopping audio. fixes unresponsive audio engine in some cases after switching between apps
- Don't stop engine if disconnected from host unless running in background
MIDI:
- New optimized MIDI engine, with sample accurate timing for AUv3 and IAA midi
- Many improvements for the MIDI matrix: full screen, color coding, icons, activity indicators
- Add MIDI route button in the main top bar for quick access to MIDI matrix
- MIDI source lists: add activity indicators and icons
- Allow swiping to clear an assigned MIDI parameter, swipe on a subpage for 'CLEAR ALL'
- Handle MMC deferred play message (same as play)
- If AUv3 plugin has only one MIDI out, don't name it
- Various fixes for MIDI SysEx
Audio Unit Extensions:
- Allow plugins to expose a single main parameter to display next to the node. (default to first parameter returned from parametersForOverviewWithCount)
- Use the parameter tree hierarchy when listing parameters
- Add 'last time used' sort mode for AU plugin node picker
- Add show-own-controls toggle (for plugins built-in keyboard etc)
- Show param min/max in MIDI control list
- Allow plugins to update their shortName dynamically
- Clip plugin MIDI output timestamps in case they are out of bounds
- Call selectViewConfiguration after resize
Bugfixes:
- Avoid crash when removing channel with a node that receives MIDI from an AU and has a bus output/send.
- Fix occasional crash when MIDI learning parameter
- Use actual filename as title when loading session from file. Avoids confusion after renaming files
- IAA nodes: fix rare crash after ejecting node
- Various layout fixes for recent iOS device models
- Fix crash when Link tempo drops fast in some configurations
- Fix crash when enabling MIDI clock send while already running
- Bus Sends: fix double-tap for default value
Big update with lots of improvements, fixes, and new stuff!
User Interface:
- Speed up app launch
- New Save UI with folder picker navigation
- Add search bar to node picker (drag down to reveal it) where you can search for plugins and IAA apps, etc
- Append current date and time to 'Untitled' session name
- Use title of source node for unnamed channels.
- FilePlayer preview: auto-play when tapping preview button
- Tapping 'home' button in chan bookmark menu when already at the start now scrolls to the end
- Bus sends: show amount in dB as well as percent
- Show parameter min/max in MIDI control list for built-in filters etc
- Add time and date in engine status view (tap DSP/battery indicator)
- Various UI layout and transition improvements
- If main audio engine is not running, color play button red and show warning message when tapped
- Allow access to transport controls while Clock Options menu is open
- Use numbers and punctation keyboard for value edit popups
- Various graphics optimizations and pixel-level tweaks
- Sort folders first in file lists
- Various users guide updates
Engine:
- Add 8 more mix busses
- Add metronome pre-roll-only toggle in Clock Options menu.
- Automatically reset transport when changing pre-roll if not running
- Deactivate audio session when going background and stopping audio. fixes unresponsive audio engine in some cases after switching between apps
- Don't stop engine if disconnected from host unless running in background
MIDI:
- New optimized MIDI engine, with sample accurate timing for AUv3 and IAA midi
- Many improvements for the MIDI matrix: full screen, color coding, icons, activity indicators
- Add MIDI route button in the main top bar for quick access to MIDI matrix
- MIDI source lists: add activity indicators and icons
- Allow swiping to clear an assigned MIDI parameter, swipe on a subpage for 'CLEAR ALL'
- Handle MMC deferred play message (same as play)
- If AUv3 plugin has only one MIDI out, don't name it
- Various fixes for MIDI SysEx
Audio Unit Extensions:
- Allow plugins to expose a single main parameter to display next to the node. (default to first parameter returned from parametersForOverviewWithCount)
- Use the parameter tree hierarchy when listing parameters
- Add 'last time used' sort mode for AU plugin node picker
- Add show-own-controls toggle (for plugins built-in keyboard etc)
- Show param min/max in MIDI control list
- Allow plugins to update their shortName dynamically
- Clip plugin MIDI output timestamps in case they are out of bounds
- Call selectViewConfiguration after resize
Bugfixes:
- Avoid crash when removing channel with a node that receives MIDI from an AU and has a bus output/send.
- Fix occasional crash when MIDI learning parameter
- Use actual filename as title when loading session from file. Avoids confusion after renaming files
- IAA nodes: fix rare crash after ejecting node
- Various layout fixes for recent iOS device models
- Fix crash when Link tempo drops fast in some configurations
- Fix crash when enabling MIDI clock send while already running
- Bus Sends: fix double-tap for default value
• Add company/name sort mode for AU plugins
• Fix keyboard settings and AU preset popups in landscape on iPhone+ models
• iPhone X layout fixes
• Suggest checking mic access if IAA node failed with error code -10851
• Don't mess up MIDI mappings if session saved after removing empty fx slot
• Improved compatibility for some multi-channel audio interfaces (RME and others)
• Keep running bypassed AU plugins, but set shouldBypassEffect to allow optimization
• Allow opening project files from other locations via Files app on iOS 11
• Various minor tweaks, optimizations, and fixes