SCARI
Field acoustics has a laptop problem. The measurement tools are desktop software, so the analysis happens after you get home. You find out that your recording was clipped, or your array was mis-wired, or the noise floor swamped your target, a week after you left the site.
SCARI puts the measurement where the recording happens. It runs on an iPhone, in the field, with no signal, no account, and no subscription. The application is in testing and has not yet been released.
What it does
- Reads what your recorder actually wrote: Broadcast Wave timestamps, SoundTrap sensitivity logs, GUANO, AudioMoth comments. The true start time, not the file date.
- Calibrated sound pressure in dB SPL, or dB re 1 µPa through an external hydrophone, with the calibration's provenance stamped into every export.
- Spectrograms, FFT and octave band analysis, and ecoacoustic indices.
- Direction of arrival from a hydrophone array, in azimuth and elevation. On a vertical string the elevation is the measurement.
- Classifier training on your own annotated audio, on the device, for taxa nobody has a model for.
- Export as a Darwin Core Archive for GBIF, as Raven selection tables, or as CSV.

What it refuses to do
Every item below is a place the application declines to give an answer it cannot defend. Collected in one list, they are the argument.
- Bearings never render without a reference frame. You read "47.0° from array axis", not a bare number that looks geographic.
- A line array draws both lobes. A collinear geometry supports a bearing and its mirror equally, so one needle would be false precision.
- Adaptive direction finding refuses below 2N snapshots and says why, rather than returning diagonal loading dressed up as an inverse.
- A correlation peak computed from a silent window reports "No signal", not a confidence score.
- Beamscan peaks are reported as local maxima, not the top N cells. The N highest values on a smooth surface are all the same peak, and calling them three sources is how a beamscan claims a chorus where there is one animal.
- An uncalibrated magnetometer is refused outright. That is the phone saying it does not know where north is.
- Detection rates are per listening hour, never per elapsed hour. Triggered sessions keep a second-by-second effort log, so a detection count has a denominator.
- A Darwin Core archive with no valid occurrence is refused rather than shipped with a header and no rows. Invalid rows are counted before the export, so you read "38 of 51 observations are valid" instead of receiving a quietly smaller file.


What it is not
- Not a sound level meter. No pattern approval, no free-field correction, no periodic verification. For an uncalibrated phone microphone the answer is permanently no. What you get is the same arithmetic a sound level meter performs, over audio whose provenance the application can state.
- Not a species identifier out of the box. It ships no models and no training data. If you want thousands of pretrained species, BirdNET is free and excellent and you should use it. SCARI trains on your audio, for your problem.
- Not a substitute for a calibrated hydrophone. Absolute underwater level requires an external hydrophone through an interface, and the application enforces that rather than pretending.
- Not validated against Raven or R soundecology. It ships the reference signals so you can run that comparison yourself. One index is documented as not comparable at all.
- Not cloud-backed. There is no sync service to depend on and no server that can go away, which is a limitation and a guarantee at the same time.
Scale
More than 140,000 lines of Swift, with over 50,000 further lines of tests running more than 2,600 unit tests. No third-party dependencies: the FFT, spectrogram, and MUSIC direction-of-arrival implementations were written from the published papers.
Beta testing
I am looking for field acousticians and bioacoustics researchers to test pre-release builds. If you would like to join the TestFlight beta, write to scari@geraldburkett.com.
Support
For questions, problems, or feedback, write to scari@geraldburkett.com. Please include your device model and iOS version.
Privacy
SCARI collects no personal data. The privacy policy describes what the application stores, what leaves the device, and every permission it requests.