# Traced measurements

For speakers with no measurement files anywhere, we trace the curves from
published graphs (a magazine's, or the maker's own). These readings are less precise than the
Klippel exports in `measurements/`, and the site labels them "traced from
graphs". The graphs themselves are not kept; only our readings are.

## DeVore Fidelity Orangutan O/96 (`devore-o96-traced.json`)

Sources: John Atkinson's measurements for Stereophile's review (December 2012),
https://www.stereophile.com/content/devore-fidelity-orangutan-o96-loudspeaker-measurements,
and Paul Miller's lab report for Hi-Fi News,
https://hifinews.com/content/jadis-jpl-mkiise300b-devore-fidelity-o96-tube-ampspeaker-system-lab-report-devore-orangutan

| Graph | What we took |
| --- | --- |
| Fig.3 | On-axis response: farfield above 300 Hz (averaged across a 30° horizontal window), nearfield woofer and port summed below |
| Fig.4 | Horizontal family, 0–90° on one side, relative to on axis (a stacked hidden-line plot; the speaker is symmetric) |
| Fig.5 | Vertical family, 15° above to 10° below the tweeter, relative to on axis |
| Fig.1 | Impedance and phase, read at third-octave frequencies into `js/speaker-impedance.js` |
| Hi-Fi News Graph 1 | On-axis response of the left speaker, grille off (black trace), 20 Hz–60 kHz: the base above 300 Hz |

**Method.** Each graph's axes were calibrated from its gridlines and tick
marks, then each pixel column was read: the black curve in fig.3, and in the
stacked plots each curve in turn, matched to its neighbours from the bottom
up (each curve sits a fixed step above and to the right of the one in front).
Checks against the cursor readouts printed under the stacked plots: fig.4,
−20.11 dB at 1864 Hz, 90° (traced −20.25); fig.5, +2.36 dB at 2219 Hz, 5°
above (traced +2.7). Expect about ±1 dB on axis and ±1.5 dB off axis, more
where curves in the stacked plots overlap. Above about 13 kHz the 80° and 90°
curves fall below the bottom of the plot; their last traced values are kept.
The impedance chart stops at 20 Ω: at 20, 25, 50 and 63 Hz the magnitude is
estimated from resonances fitted to the plotted phase.

**What `tools/convert-spinorama.js` adds (our choices, labeled on the site).**

- Straight ahead above 300 Hz: Hi-Fi News's curve, joined to Stereophile's
  bass at 300 Hz over a third of an octave. Stereophile's on-axis curve is
  averaged across a 30° horizontal window, which partly fills in the dip
  right on axis that Atkinson describes at 3–4 kHz; its off-axis curves are
  relative to the true axis, so a window-averaged base would have put 2–4 dB
  too much into 3–6 kHz at every angle.
- Bass below 300 Hz: the nearfield measurement leaves out the loss as the bass
  wraps around the cabinet. A first-order 6 dB shelf near 115 / width Hz
  (457 mm wide, from Hi-Fi News: about 250 Hz), taken relative to 300 Hz,
  gives −5.9 dB at 37 Hz relative to 200 Hz, against Hi-Fi News's
  measured −6 dB.
- Off-axis differences fade to zero below 300 Hz, reaching it at 100 Hz.
- Beyond 15° above and 10° below, the sound falls off as it does sideways at
  the same angle (from the traced horizontal family), joined at the last
  measured angle. Borrowing another speaker's vertical pattern would bring in
  its crossover lobes: the Zu's notch at 10° below near 6 kHz put a spurious
  +14 dB below the O/96 in a first attempt.
- Behind the speaker (beyond 90° horizontally) it follows the measured Zu
  Audio Method, a wide-baffle speaker with a large driver, joined at 90°.
- Sensitivity: Hi-Fi News's 91.5 dB (mean 500 Hz–8 kHz at 2.83 V, 1 m),
  shifted to the 300 Hz–3 kHz average the other speakers use (92.5 dB; the
  traced Hi-Fi News curve itself averages 92.4 dB there). Stereophile
  estimated 91 dB(B).

## Cross-checks (O/96)

- **Two halves of Stereophile's fig.4.** The speaker is symmetric, so the
  two sides should match; the gap measures the tracing error. Back-half
  curves are visible only where they rise above the ones in front: 151
  third-octave comparisons, median gap 0.3 dB, 90% under 1.6 dB. By angle:
  5–25°, 0.05–0.2 dB median; 30–65°, 0.4–1.1 dB; 70–90°, 1–3.5 dB, the back
  side higher (seen only at its peaks, so likely biased high).
- **Two magazines' on-axis curves** (different pairs), both lined up on
  their 300 Hz–3 kHz average: 40–300 Hz agree to 0.2 dB median (supporting
  the bass correction); 300 Hz–3 kHz, 1.3 dB (Hi-Fi News's pair has more
  around 700 Hz–1 kHz and a dip at 450 Hz); 3–6 kHz, Stereophile's
  window-averaged curve was up to 4 dB fuller, which is why Hi-Fi News's
  curve is now the base above 300 Hz.

## Pi Speakers four π (`pi-fourpi-traced.json`)

Source: Pi Speakers' own measurements (Wayne Parham), published as six graphs,
https://pispeakers.com/Measurements/fourPi.html. Specifications (26 × 18 × 14
in, 98 dB at 1 W/1 m half-space, 123 dB maximum) from
https://pispeakers.com/Prices.html; drivers (Eminence Omega 15 or JBL 2226
woofer, Eminence PSD2002 or B&C DE250 compression driver on a horn) from
https://pispeakers.com/Products.html. Traced 2026-10-27.

**How Pi measured it.** Half-space: the speaker lying on its back on the
ground, the microphone on a boom 10 ft above, 8.62 V rms (Pi: equivalent to
2.83 V at 1 m), no smoothing, after 15 minutes warming up at 40 V rms. The
axis is the cabinet's centre. 10° steps to 50° each way, horizontally (toward
the tweeter and toward the port; the tweeter sits off centre) and vertically.

| Graph | What we took |
| --- | --- |
| Frequency Response | On axis, dB SPL |
| Horizontal Off-Axis Response (tweeter side) | 10–50°, positive angles, relative to its own 0° curve |
| Horizontal Off-Axis Response (port side) | 10–50°, negative angles, relative to its own 0° curve |
| Vertical Off-Axis Response (up, down) | 10–50° above (positive) and below (negative), relative to their own 0° curves |
| Impedance | Magnitude at third-octave frequencies into `js/speaker-impedance.js` (no phase published) |

**Method.** Each 850 × 680 graph's axes were calibrated from the gridlines
(20 Hz–20 kHz at 238 px per decade; 70–120 dB at 7.91 px per dB). Each angle
is drawn in its own colour (0° black, 10° blue, 20° green, 30° olive, 40° dark
red, 50° grey), so each pixel column was read by colour and the median taken
in each 1/12-octave bin. Where one curve hides under another, the gap is
filled from its neighbours: at most 8 of the 82 bins above 300 Hz for any
curve, most of the others in the bass, where the curves coincide.

**Check.** Every off-axis graph repeats the 0° curve. Against the separate
on-axis graph, the four copies differ by a median of 0–0.1 dB, 90% within
0.4 dB, at worst 1.1 dB (20 Hz–18 kHz).

**What `tools/convert-spinorama.js` adds (our choices, labeled on the site).**

- Bass: lying on the ground, the speaker radiates into half the space in the
  bass, which adds up to 6 dB that a free-standing speaker doesn't get (no
  baffle step). The same first-order 6 dB shelf as the O/96's, near
  115 / width Hz (457 mm wide: about 250 Hz), is taken off at every
  frequency. Between about 150 and 400 Hz the real effect depends on the
  ground's reflection 0.36 m behind the baffle, which the shelf doesn't
  model; expect a few dB of error there.
- Sensitivity: the traced curve's own 300 Hz–3 kHz average after that
  correction, 96.4 dB (Pi quotes 98 dB half-space; the correction takes
  about 1 dB off the 300 Hz–1 kHz part of the average).
- Off-axis differences fade to zero below 300 Hz.
- Beyond 50° sideways and behind, it follows the measured JBL 4367 (Erin's
  Audio Corner), also a two-way with a 15-inch woofer and a compression
  driver on a horn, joined at 50° on each side.
- Above and below 50°, it falls off as it does sideways at the same angle,
  joined at 50°, as for the O/96.
- No preference score: like the O/96's, the traced curves are too coarse for
  the bumpiness measures, and most of the sphere is filled in.

## Klipsch La Scala AL5 (`klipsch-lascala-traced.json`)

Source: John Atkinson's measurements for Alex Halberstadt's Stereophile review
(online March 17, 2023),
https://www.stereophile.com/content/klipsch-la-scala-al5-loudspeaker-measurements.
Specifications from Klipsch's 2018 sheet,
https://d2um2qdswy1tb0.cloudfront.net/product-specsheets/La-Scala-2018-Spec-Sheet-v01.pdf.
No spinorama, Klippel or other measurement files exist for any La Scala; the
2025 AL6 has no lab measurements at all. Traced 2026-10-31.

| Graph | What we took |
| --- | --- |
| Fig.4 | The drivers measured separately on the tweeter axis at 1 m: woofer (nearfield), midrange (nearfield below about 400 Hz, farfield above) and tweeter |
| Fig.5 | The upper (horn) enclosure's farfield response on the tweeter axis, averaged across a 30° horizontal window, from about 430 Hz (the woofer was disconnected because of floor reflections) |
| Fig.6 | Horizontal family, 5–60° on one side in 5° steps, relative to the tweeter axis, 1/3-octave smoothed (a stacked hidden-line plot; the speaker is symmetric) |
| Fig.7 | Vertical family, 15° above to 10° below the tweeter, relative to the tweeter axis |
| Fig.1 | Impedance and phase, read at third-octave frequencies into `js/speaker-impedance.js` |

**Method.** As for the O/96: each graph's axes calibrated from its gridlines
and ticks, each pixel column read, and in the stacked plots each curve
identified from the front backwards by the fixed step between curves (fig.6:
1.961 px right and 5.065 px up per curve; fig.7: 9.3 px and 24.35 px). The flat
0° reference line came out where it should (13th curve in fig.6, 3rd in
fig.7), reading −0.07 and −0.04 dB. Checks against the printed cursors: fig.6,
−14.50 dB at 2497 Hz on the 60° curve (printed −14.62 dB at 2486 Hz, at the
bottom of a sharp notch); fig.7, +1.38 dB at 2930 Hz, 5° below (printed
+1.33 dB). Symmetry: the other side's 5° curve matches the traced side to
0.11 dB on average (worst 0.42 dB); its 10° and 15° curves, traced up to
4.5 and 3.2 kHz where they separate, agree to 0.11 and 0.14 dB. Narrow
notches come out shallower than their deepest pixel (fig.5: about −7 dB at
3.45 and 3.9 kHz on the graph). Points where a curve touches the graph's
−40 dB floor are left out.

**What `tools/convert-spinorama.js` adds (our choices, labeled on the site).**

- Straight ahead: Stereophile shows no single curve, because each horn's
  output reaches the microphone at a different time. Below, the woofer and
  midrange of fig.4 added as power (their relative phase isn't published);
  above, fig.5, joined over 560–700 Hz with the lower part's level matched to
  it over 470–560 Hz. Fig.5 is averaged across 30°, which partly fills in
  narrow dips on axis, as with the O/96; Hi-Fi News's lab report, which has a
  single-axis curve, was behind a bot check and could not be read.
- Bass below 300 Hz: the nearfield woofer leaves out the loss as the bass
  wraps around the cabinet; the same first-order 6 dB shelf as the O/96, near
  115 / width Hz (616 mm wide: about 187 Hz), relative to 300 Hz.
- Off-axis differences fade to zero below 270 Hz, reaching it at 100 Hz.
- Off axis is built on the on-axis curve smoothed to 1/3 octave (added
  2026-10-31). Stereophile smoothed figs.6 and 7 to 1/3 octave (printed on
  the graphs; Atkinson says his usual 1/10-octave plot was too cluttered), so
  adding them to the finer on-axis curve copied its narrow dips into every
  direction, where nothing measured them. The fix changes the off-axis curves
  by up to 1.7 dB and lowers the predicted in-room response's roughness (RMS
  around its one-octave trend, 200 Hz–10 kHz) from 0.78 to 0.65 dB, still
  mid-pack among the Klippel-measured speakers (0.16 to 1.14 dB). The O/96's
  families are smoothed to 1/10 octave, finer than our 1/6, and the four π's
  are unsmoothed like its on-axis curve, so neither needs it.
- Beyond 60° sideways and behind: the measured JBL 4349 (Audio Science
  Review), also a compression driver on a horn, joined at 60°. A search found
  no measured La Scala response wider than 60°; Klipsch rates the tweeter horn
  at 90° × 40° (nominal).
- Beyond 15° above and 10° below: falls off as it does sideways at the same
  angle, joined at the last measured angle.
- Sensitivity: Stereophile's B-weighted estimate, 101.3 dB at 2.83 V, 1 m,
  taken as the 300 Hz–3 kHz average the other speakers use (on the traced
  curve the 500 Hz–8 kHz and 300 Hz–3 kHz averages differ by 0.01 dB).
  Klipsch's 105 dB is rated "in average listening room".
- Not modeled: the drivers' arrival times (tweeter first, midrange 1.5 ms
  later, woofer 2 ms after that), and the bass bin's panel resonances
  (Stereophile's accelerometer found three, the highest at 125 Hz).
