Crudebyte Logo
JACK Audio Connection Kit (for iOS)


JACK is a low-latency audio server, written for any operating system. It currently exists for Linux, OS X, Solaris, FreeBSD, Windows and now also for iOS. It allows several client applications to share audio and MIDI streams with each other, provides easy access and abstraction to underlying audio & MIDI hardware, record/playback synchronization for DAW and sequencer applications and other interconnection facilities for music and audio applications. JACK was designed from the ground up for professional audio work.

License Terms

The JACK iOS SDK is released under specific copyright and license terms. You are allowed to use the JACK iOS SDK in commercial iOS apps.

Features & differences of iOS version

This documentation is focused on the iOS version of JACK, which differs to some extent, compared to the JACK API on other operating systems. Some JACK API parts have been removed for the iOS version due to technical & licensing reasons (i.e. the "Session" & "Control" API parts), while another API part has been added for iOS (the "Custom" API part, for i.e. sharing app icons), and some details on the common API parts have been adjusted (i.e. additional flag for opening a JACK client). You can find more details about differences in the JACK Seniors article.

This iOS version of the JACK server is based on Stéphane Letz's server implementation by Grame, also known as JACK2 or jackdmp. Main feature of this implementation is support for parallel graph branches, which allows a powerful utilization of multi core CPU devices. The latency of each graph branch is constant, independent of the actual size of the respective graph branch, providing a reliable low latency usage, even for huge connection setups.

In case you are interested about the JACK API for systems other than iOS, please refer to the documentation on .

Getting started

You are completely new to the JACK world (from developer perspective)? Read the Getting Started article for a quick tour on how to add JACK support to your app in reasonable short time. It is concentrated on the most important aspects, easing the entrance of your app to the JACK system with as little effort as possible.

JACK Seniors

You are already an experienced JACK developer, so you already created JACK client applications on other operating systems before? Then you might just read the JACK Seniors article for the essential differences of the iOS version of the JACK API.

API Reference

The JACK programming interfaces are described in several header files, enumared here broken into useful categories to make the API a little clearer:

Header Files

List of header files bundled with the JACK iOS SDK:

Copyright © MMXIII Crudebyte. All rights reserved.