Polaron.de Apps Overview de en
What is Napo?
Current Napo Apps
App Bundles
How does Napo work?
Hardware Requirements
Design Goals
User Manual
Version History
Some Notes

What is Napo?

Napo is not a pipe organ, but it allows you to play organ music with the help of MIDI keyboards and an iOS device. It is an iOS framework for virtual pipe organ apps which evolved from the free StrandOrgan 1.0 and StrandOrgan 2.0 apps. StrandOrgan will stay free and serve as a showcase for the other apps that are based on Napo. Before purchasing one of the other Napo apps, one can use StrandOrgan and Jeux d'orgues Mini to check if an iOS device delivers a sufficient polyphony and if Napo works well with existing MIDI hardware. In case of an iPad 2 or better, the apps BureaFree, PiteaFree and MarcMoerdFree can serve for this as well.

For seeing Napo apps in practical use, please have a look at the polaron.de YouTube channel http://youtube.com/c/PolaronDe/ or take this as an example:


View on YouTube.

Current Napo Apps

550 MB sample data
built with Napo 4.10
released 2016-06-23
Free (a)
313 MB sample data
built with Napo 4.10
released 2016-07-02
Price Tier 19
167 MB sample data
built with Napo 4.10
released 2016-07-02
Price Tier 10
162 MB sample data
built with Napo 4.10
released 2016-07-02
Free (b)
346 MB sample data
built with Napo 4.10
released 2016-07-02
Price Tier 31
680 MB sample data
built with Napo 4.10
released 2016-07-09
Price Tier 31
1.4 GB MB sample data
built with Napo 4.10
released 2016-07-19
Free (c)
1.4 GB sample data
built with Napo 4.10
released 2016-07-19
Price Tier 55
515 MB sample data
built with Napo 4.10
released 2016-07-09
Price Tier 31
1.3 GB sample data
built with Napo 4.10
released 2016-07-19
Free (c)
1.3 GB sample data
built with Napo 4.10
released 2016-07-19
Price Tier 55
1.9 GB sample data
built with Napo 4.10
released 2016-07-19
Free (c)
1.9 GB sample data
built with Napo 4.10
released 2016-07-19
Price Tier 55

Notes:

  1. StrandOrgan does not include the audio recorder, the pitch shifter and the virtual keyboard. This functionality is available as in-app purchases. You get a list of the in-app purchases by selecting "In-app purchases" in the Settings view, see here.
  2. Jeux d'orgues Mini offers full functionality.
  3. With BureaFree, PiteaFree and MarcMoerdFree, only the mid three octaves of the samplesets can be played. Otherwise these app are identical to Burea, Pitea, MarcMoerd.

App Bundles

App Bundles give you the option to get a collection of apps for a lower price than the sum of the individual prices. If you have already acquired some app that is also available as part of a bundle, then you can complete the bundle for a discounted price. If you already have bought Pitea, for example, you can get PiteaMini for about 1/3 of its standalone price. Or you can buy PiteaMini first, and if you like it, add Pitea for a discounted price.

There are currently the following bundles of Napo apps:

Burea + BureaMini
Price Tier 57
released 2015-09-03
Pitea + PiteaMini
Price Tier 57
released 2015-09-03

Please note:

When the App Store calculates the amount that you have to pay for completing a bundle, it takes into account only the money that you have previously spent for the apps in the bundle, but not what you have paid for in-app purchases in these apps. So, completing the respective bundles does make sense for users who have in the past downloaded the free versions of Burea or Pitea and maybe at that time performed the "All Notes" in-app purchase, and hence the App Store does not offer a completion for these users. Unfortunately we don't see any possibility to evade this quirk of the App Store.

How does Napo work?

Connect a MIDI keyboard to your iOS device. Start the Napo app of your choice. Configure the MIDI channel in the app's Settings view, if not already done. Select organ stops in the app's Console view. Press keys on the MIDI keyboard. The iOS device creates the sound, which you can listen to using headphones or external speakers (the internal speaker of an iOS device does not do justice to the organ sound). For organs with several manuals and pedal it makes sense to connect an according number of MIDI keyboards and a MIDI pedal.

To reproduce the sound of a pipe organ, a Napo app contains a sampleset, which in principle is a collection of WAV files (recordings of the organ pipes, usually in CD quality). The app tracks note-on and note-off commands received via MIDI and stop registration changes performed at the touch screen or via MIDI. It reads the sample data of the active pipes and calculates the resulting sound. This may seem easy, but within the limitations of a mobile device it is far from trivial to render dozens or hundreds of high-quality voices in parallel. The development of the framework took months of work. It is not by chance that other iOS virtual pipe organ apps are rather disappointing in terms of polyphony and sound quality, and, judged by musical value, are nothing but children's toys when compared to Napo apps.

Napo is able to handle samplesets with hundreds of WAV files and several gigabytes of sample data. It makes extensive use of Apple's Grand Central Dispatch technology (GCD) and of the vDSP library of Apple's Accelerate framework. Of course it uses all available processor cores and thus will without circumstance run even better on upcoming quad- or more-core devices.

Please note that it is not recommended to use a Napo app for performing live concerts or for church service. While we do our best to attain secure operation of the software, a tablet app can not deliver the reliability of an electronic church organ built with dedicated hardware or a real pipe organ. We don't see our apps as replacements of conventional instruments but rather as a supplement that gives you an easy way to play with some very different organs – an option that no traditional digital (let alone pipe) organ offers.

Hardware Requirements

Napo apps run on iOS 5 to iOS 9 devices, iPhone and iPod touch as well as iPad. Some apps are designed for iPad only. The achievable polyphony depends on the processing and I/O performance of the device and on the characteristics of the sampleset (number and size of files, sample frequency, loop lengths). To make usage of the convolution reverb that is available beginning with Napo 3.3, at least an A6/A6X processor (iPad 4, iPhone 5 or better) is recommended.

Because of the large size of the samplesets, make sure that your device has enough free SSD space before you try to install a Napo app. If you intend to use downsampled sounds also (22050 Hz instead of 44100 Hz or 24000 Hz instead of 48000 Hz), then you need additional 50% of the size that is listed in the App Store.

To use a MIDI keyboard you need a MIDI adapter for the dock connector (30 pin or lightning, depending on your device). Napo is tested with the iRig MIDI, with the Line 6 Midi Mobilizer II and with the Griffin StudioConnect Lightning, but any CoreMidi compliant adapter should work. Plug the adapter to the device's dock connector and use a suitable cable to connect the MIDI-in port of the adapter to the five-pin MIDI out port of your keyboard.

With the iPad, and as well with newer iPhones and iOS 8 and later, you can alternatively use the USB adapter of an iPad Camera Connection Kit (CCK) and either a MIDI keyboard with USB interface or a MIDI keyboard with five-pin connector and an additional MIDI-USB converter.

To play with several MIDI keyboards and maybe a MIDI pedal you need to daisy-chain the keyboards and the pedal via MIDI or use an additional MIDI mixer device. There are also interfaces available which offer two or more MIDI inputs.

While Napo apps are intended to be operated by real keyboards, there are (starting with Napo 4.0) internal virtual keyboards that let you play without any additional hardware or software, see User Manual, Console View. Of course this is only a makeshift and feasible only for very simple music pieces. Besides that, Napo supports Network MIDI (aka RTP-MIDI), Virtual MIDI (starting with Napo 3.0) and MIDI over Bluetooth (starting with Napo 4.5). Using Virtual MIDI you can control a Napo app by other apps running on the same device, like MIDI sequencers or virtual keyboard apps (if they support Virtual MIDI). See here for an example using the ChordMaps2 app. With Network MIDI and MIDI over Bluetooth you can control a Napo app by other devices, for example a MIDI keyboard connected to a Mac computer (use Audio-MIDI setup on the Mac to configure a suitable session), or by apps running on the same or another iOS device. We have tested all three methods (Network MIDI, MIDI over Bluetooth, Virtual MIDI) with help of the Gorges Midi Keyboard Pro app.

Design Goals

Napo was developed with the following seven objectives in mind:

  1. Robustness: It is extremely annoying when a music app does not run stable or even crashes while you are playing. So the highest care was and is applied in the implementation and tests of Napo. The apps have to cope with errors in the MIDI stream as well as with processor and memory or SSD bandwidth overload conditions. In more than ten months of availability of StrandOrgan 1.0 and 2.0 not a single bug or crash was reported. Still, software of this operational complexity will rarely be perfect, and as more functionality is added, new bugs may creep in. Please report any issue that you encounter with a Napo app, so it can be resolved as soon as possible.
  2. See 1.
  3. See 1.
  4. Sound quality: Napo gives you the full quality of the samplesets, which usually have CD standard (16 bit at 44100 Hz in stereo). The internal processing of sound data is done with 32 bit floating point numbers. If your device is missing processing power, you can switch to downsampled sounds. However, this causes a loss of sound quality.
  5. Ease of installation: Napo apps are self-contained. You just have to install the app from the App Store in the known easy way. There is no need to download and install the sampleset or anything else (this may change in the future to avoid repeated downloading of the sampleset at app updates). The support page of each Napo app gives directions on where you can get the corresponding sampleset if you would like to use it with other software.
  6. Ease of use: There exist virtual pipe organ applications for traditional operating systems that offer enormous flexibility, but the user has to spend a considerable amount of time with configuring the system and maybe even installing additional driver software. This is fine for people who like to tinker or who need the options of these applications. In contrast, Napo apps address organists who are looking for a simple solution that still offers excellent sound. People who prefer to make music over twiddling with the pecularities of a computer and operating system. Ideally, after installing a Napo app (one click in the App Store), you connect a MIDI keyboard and headphones/speakers to your iOS device, start the app and are ready to play.
  7. Instant on: Even when doing a cold-start, a Napo app does not have a significant startup time. Tap the app icon, select stops, start to play. No need to prepare a coffee or to sort your sheet music once again while waiting for the software to initialise. Switch to another organ in an instant, or even run two Napo apps in parallel (one of them in the background) and use two keyboards to play two organs at the same time. Starting with Napo 3.4, you can use fast organ switching to fly even quicker to another organ.

User Manual

While StrandOrgan 1.0 had a simple single-view interface, starting with Napo 2.0 the apps have several views organized as tabs. Napo is about sound, not about graphics. The interface design is simplicistic and practical and tries to cater to classic organists. Most of the time you will work with just the Console view and its stop buttons. This view has to be efficient to use and not be cluttered with secondary and distracting elements.

The User Manual describes the particular views of Napo and their operation in detail. However, not all current Napo apps are based on the latest version of Napo and hence a specific app may have not (yet) all of the stated functionality.

Version History

Napo is evolving continually. As each new version of an app means several days of testing, we update apps only when a new Napo version brings essential new features. Bugfix releases for critical bugs, however, are done with highest priority, as we want our software to be reliable and serve the needs of the users. Again, please report any problems. Suggestions for functional changes and enhancements are welcome as well.

At the History page you find a detailed overview of the past and present Napo versions, their features and deficiencies, and the apps that were and are based on these versions.

Some Notes

Performance (polyphony, convolution reverb lengths)

You must understand that a battery-operated mobile device like an iPhone or iPad cannot deliver the performance of a multi-core multi-gigahertz multi-gigabyte computer which consumes 100 Watts or maybe much more and cannot work without powerful ventilators. Until recently, playing dozens or hundreds of high-quality organ voices simultaneously needed a high-end PC or a specialized organ expander equipped with digital signal processors.

Nevertheless you can achieve a surprisingly high polyphony. The following table lists (very rough) polyphony values of the PiteaMini app on various iPad models when using 23 milliseconds buffer duration and having no other apps running:

44100 Hz 22050 Hz
iPad 1 50 voices 100 voices
iPad 2/3 150 voices 300 voices
iPad 4 500 voices 1000 voices
iPad Air 1 1000 voices 1500 voices
iPad Air 2 1500 voices 2500 voices

The number of voices that are needed depends not only on the music that you play and on the quality of the sample files (long sample loops lead to bad I/O performance because the file cache gets inefficient) but also on the organ / the acoustics of the church: The more reverb, the more voices you will need, because even when a key is released, the voice must continue to play until the reverb has faded out. When using artificial reverb you need far less voices. But only the iOS reverb is cheap; the convolution reverb that comes with Napo 3.3 is itself a performance hogger. At 44100 Hz you can use impulse response lengths of only up to 1.5 seconds with iPad 2/3, about 4 seconds with iPad 4 and about 10 seconds with iPad Air 1.

Whenever there is a performance bottleneck, the app shows a flag CPU Overload, I/O Overload or Reverb Overload. In case of a serious overload the sound quality will suffer. You can take the following measures against this:

  1. Stop other apps. They are in the background, but they might still be eating more resources than you would expect. In particular, applications that create high peaks of CPU or I/O load can be a problem.
  2. Better use iOS reverb instead of Real reverb. Real reverb plays the pipe samples in full length, i.e. including the original reverb of the church. Obviously, this increases the needed polyphony enormously.
  3. Go to airplane mode. This prohibits other apps or system services which are dependent from network access to do update work in the background.
  4. Do not use the low power mode that was introduced with iOS 9 on iPhone.
  5. Switch to sample rate 22050 Hz in the sound settings of the app. You won't hear a significant difference unless you have good ears and good headphones and play single high-pitched notes.

Audiobus Support

Support for Audiobus was introduced in Napo 3.5. The user does not need to configure anything for this, it just works out of the box.

Napo 4.1 makes the switch to Audiobus 2. Unfortunately, Audiobus support for iOS 5/6 had to be dropped to enable Audiobus 2 on iOS 7 and later.

The state saving feature of Audiobus 2 can be used to save the current stops setting. This is like saving stop combinations within the Audiobus app.

Inter-App Audio Support

There is currently no IAA support in Napo. However, to enable Audiobus interaction on iOS 8, we had to add IAA entitlements to all Napo apps. Consequently, the apps are offered as IAA instruments e.g. in GarageBand, but cannot actually be used as such. We are sorry for this inconvenience.

Auto-Lock

Normally, the screen of your device turns off when it is not touched for some time (configured in Settings - General - Auto-Lock). Presumably you do not want this to happen while playing the organ. Neither do you want to adjust this setting each time you use a Napo app. Hence the Auto-Lock is disabled while you play. Only when no voices are active anymore, the idle-timer starts its countdown and the Auto-Lock will happen after the configured time interval.

App Notifications

Starting with Napo 4.10, the badge of the app icon, i.e. the red area at the top right of the icon, is used to display a countdown when the app is running in the background, so it can be seen that and for how long the app will continue to process MIDI messages and possibly create sound in the background. Otherwise it can easily happen to have several organ apps running in the background and not know why and whence a sound can be heard when a key is pressed.

During inactivity of the app (i.e. no sound) the countdown runs from 999 to 0 in a one second rhythm, which makes about 16 minutes, then it disappears and the app stops the processing. Whenever the app is used and creates sound, the countdown is reset to 999. When Audiobus is running, the countdown stays at 999 and the app is available for unlimited time, as recommended by the Audiobus guidelines.

To make this display possible, you have to give the app permission to display notifications. This can be done at the first start of the app and the respective inquiry of iOS, or later in the section Notifications of the device settings.

MIDI problems with some keyboards

With some keyboards, occasionally missing or stuck notes have been observed. USB keyboards, in particular cheap ones, seem to be more prone to this than keyboards with an old-fashioned five-pin MIDI interface and a MIDI-USB adapter. It is unclear whether these are MIDI hardware problems or a bug in CoreMidi. Lost or stuck notes can be reproduced even with GarageBand, so probably nothing can be done about this issue on the application level.

When Napo receives two consecutive note-on or note-off commands for the same note on the same MIDI channel, it displays a red warning. Of course the message does not solve this annoying problem, but at least you get informed that something fishy is going on with your MIDI data. The warnings disappear after five seconds.

Problems with Tascam iU2 interface

One user has reported unreliable MIDI connections and missing audio when using a Tascam iU2 with an iPhone 4, presumably running iOS 6. As this user did never contact us, but only complained in an App Store review, we had no chance to get more details about the nature of these problems and to look for a solution. Searching the net revealed that there are issues of all kinds with the iU2, and that Tascam has removed this device from its products list. At the discontinued products page http://www.tascam.eu/en/downloads/archive/iU2 you can read (dated 01.10.2012):

The iU2 can be used only with iOS 4.3 or iOS 5 on an iPad1, 2 or iPhone 4 (S).

No Reverb is not really without reverb

Most samplesets are made of so-called wet samples, i.e. they contain the reverb of the church. This natural reverb is present in the attack and the loop phase of the sample also, so you cannot completely get rid of it even if you switch to No Reverb, iOS Reverb or Convolution Reverb. The only strict solution to this would be to move the organ pipes to a completely anechoic room for sampling, which is not a practicable option.

No Reverb cuts off more than just the reverb

Even if you do not consider reverb, a real organ pipe does not immediately stop to produce sound when the key is released. The natural decay of the pipe's sound is lost when playing with No/iOS/Convolution Reverb.

There is no perfect simulated reverb

Any calculated reverb that is applied to a signal that is a sum of different sound sources does not reproduce the sound that you would get in a real room, because the real reverb of a sound source depends on its position. What you get instead is the sound of the sum signal rendered by a loudspeaker placed in the simulated room. This is true in particular for convolution reverb. For a lifelike sound you would need pipe-dependent impulse responses. Recording all these impulse responses is beyond reach, and the parallel rendering of hundreds of convolution reverbs cannot be done with current hardware. Nevertheless, convolution reverb is the best simulation that you can get, and it is part of Napo from version 3.3 on.

Some Links