diff --git a/NOTICE b/NOTICE
index d395dab..e9909dc 100644
--- a/NOTICE
+++ b/NOTICE
@@ -11,7 +11,10 @@ US 2015/0016613 A1). Expired and abandoned patent documents are published
prior art, free for anyone to practice. Presets marked "measured-tape" or
"measured-mss" encode frequencies, beat rates, and timings measured by
spectral analysis of personal copies of commercial recordings; such
-measurements are unprotectable facts. No audio, narration, or music from
+measurements are unprotectable facts. Presets marked "best-effort" carry
+numbers contributed by others, from their own analysis of commercial
+recordings; farfield has not verified them, and they claim only to be
+plausible approximations. No audio, narration, or music from
any recording is included in or reproduced by this project.
Trademark disclaimer: Hemi-Sync® and Gateway Experience® are registered
diff --git a/README.md b/README.md
index dfe9ef1..d249fdc 100644
--- a/README.md
+++ b/README.md
@@ -32,12 +32,15 @@ own custom meditation sessions and have fun with it.
modulation depths and layer timelines from any stereo recording — it's
how the measured presets were made, and how the test suite verifies
every render against its numbers.
-- **16 bundled presets** (in [`presets/`](presets/)) in four provenance
+- **19 bundled presets** (in [`presets/`](presets/)) in five provenance
groups, strongest first:
measured from the original tapes, measured from the MSS remasters, from
- the patents, and original designs. The measurement data behind the
- first two groups is published in
- [`docs/tape-analysis/`](docs/tape-analysis/).
+ the patents, best-effort reconstructions, and original designs. The
+ measurement data behind the first two groups is published in
+ [`docs/tape-analysis/`](docs/tape-analysis/). Best-effort presets are
+ community-contributed guesses at a recording that farfield has not
+ verified with its own pipeline; their notes say what is claimed and
+ what was chosen by ear.
The measured presets were reverse engineered by spectral analysis of
personal copies of the classic gateway-era recordings and their modern
diff --git a/farfield/cli.py b/farfield/cli.py
index da64ecf..7d62846 100644
--- a/farfield/cli.py
+++ b/farfield/cli.py
@@ -30,13 +30,18 @@
"measured-tape": "measured from the original tapes",
"measured-mss": "measured from the MSS remasters",
"patent": "from the patents",
+ "best-effort": "best-effort reconstructions (unverified)",
"original": "original designs",
}
"""Plain-English group headings for the machine-readable fidelity tiers.
The machine values stay in the YAML and the sidecar; these are what a
person sees in `list`."""
-TIER_LABELS = {**TIER_HEADINGS, "original": "original design"}
+TIER_LABELS = {
+ **TIER_HEADINGS,
+ "best-effort": "best-effort reconstruction (unverified)",
+ "original": "original design",
+}
"""Singular variant for a single session's `describe` line."""
@@ -49,7 +54,10 @@ def format_duration(seconds: float) -> str:
return f"{minutes}:{secs:02d}"
-_TIER_ORDER = {"measured-tape": 0, "measured-mss": 1, "patent": 2, "original": 3}
+_TIER_ORDER = {
+ "measured-tape": 0, "measured-mss": 1, "patent": 2, "best-effort": 3,
+ "original": 4,
+}
def list_lines(directory: Path) -> list[str]:
diff --git a/farfield/session.py b/farfield/session.py
index b173d5f..6420690 100644
--- a/farfield/session.py
+++ b/farfield/session.py
@@ -16,9 +16,12 @@
from farfield.waveshape import DEFAULT_HARMONICS
-FIDELITY_TIERS = frozenset({"measured-tape", "measured-mss", "patent", "original"})
+FIDELITY_TIERS = frozenset(
+ {"measured-tape", "measured-mss", "patent", "best-effort", "original"})
"""Provenance tiers, strongest first: measured from the original tapes,
-measured from the MSS remasters, from the patents, original designs."""
+measured from the MSS remasters, from the patents, best-effort
+reconstructions (claims about a recording that farfield has not verified
+with its own pipeline), original designs."""
DEFAULT_SAMPLE_RATE = 48000
DEFAULT_PEAK_DBFS = -3.0
diff --git a/farfield/viz_template.html b/farfield/viz_template.html
index fe27933..c1b254c 100644
--- a/farfield/viz_template.html
+++ b/farfield/viz_template.html
@@ -92,6 +92,7 @@
.tier[data-tier="measured-tape"] { color: #3987e5; }
.tier[data-tier="measured-mss"] { color: #9085e9; }
.tier[data-tier="patent"] { color: #199e70; }
+ .tier[data-tier="best-effort"] { color: #d0603a; }
.tier[data-tier="original"] { color: #c98500; }
.spacer { flex: 1; }
.chip {
@@ -291,6 +292,7 @@
Live waveform
"measured-tape": "measured from the original tapes",
"measured-mss": "measured from the MSS remasters",
"patent": "from the patents",
+ "best-effort": "best-effort reconstruction (unverified)",
"original": "original design",
};
const tierEl = document.getElementById("tier");
diff --git a/presets/focus-11-gamma-pink.yaml b/presets/focus-11-gamma-pink.yaml
new file mode 100644
index 0000000..b26e3cc
--- /dev/null
+++ b/presets/focus-11-gamma-pink.yaml
@@ -0,0 +1,64 @@
+name: focus-11-gamma-pink
+title: "Focus 11 — 40 Hz SAM triad (unverified)"
+fidelity: best-effort
+notes: |
+ BEST-EFFORT, UNVERIFIED. Contributed by a community member, who measured
+ it with AI-assisted analysis of their own copy of a newer commercial
+ Focus 11 release (identified by them as "SyncCreation 2.0", a 320 kbps
+ MP3), sustained window 16:00-27:00. Farfield has NOT re-measured this
+ recording, no measurement data is published in docs/tape-analysis/, and
+ the numbers below are taken on trust. Treat it as a plausible sketch,
+ not a transcription.
+
+ What is claimed: three shared carriers under 40 Hz closed-path
+ spatial angle modulation (antiphase phase modulation, the technique in
+ sam-gamma.yaml), over a pink bed. If confirmed, this would be the first
+ recording found to use SAM at all: the MSS remasters measured in this
+ repository came back SAM-absent. That claim is exactly what farfield's
+ mid/side estimator exists to check, and it has not been run here.
+
+ Two things in its favour and two against:
+ - The carriers 256.869 / 323.625 / 384.875 Hz sit within 0.01 Hz of a
+ C-major triad (C4 / E4 / G4) in equal temperament at A = 432 Hz,
+ which a deliberate design would produce and noise would not.
+ - The depths imply +/-548, +/-559 and +/-592 us of interaural delay,
+ beyond the ~510 us maximum of the spherical-head model used in
+ sam-gamma.yaml. Possible, but unexplained.
+ - The pink-bed level (-7.4 dB) was set by ear, not measured.
+ - The source window is rendered as one sustained 30:00 hold; any entry,
+ exit or drift in the original is not represented.
+sample_rate: 48000
+output:
+ peak_dbfs: -3.0
+defaults:
+ harmonics:
+ - 1.0
+segments:
+- duration: '30:00'
+ groups:
+ - name: gamma257
+ level_db: -4.0
+ sam:
+ carrier_hz: 256.869
+ rate_hz: 40.0
+ depth_rad: 0.442
+ path: closed
+ - name: gamma324
+ level_db: 0.0
+ sam:
+ carrier_hz: 323.625
+ rate_hz: 40.0
+ depth_rad: 0.568
+ path: closed
+ - name: gamma385
+ level_db: -1.4
+ sam:
+ carrier_hz: 384.875
+ rate_hz: 40.0
+ depth_rad: 0.716
+ path: closed
+ bed:
+ level_db: -7.4
+ color: pink
+ slope_db_per_decade: -10.0
+emerge: false
diff --git a/presets/focus-11-gamma-theta-pink.yaml b/presets/focus-11-gamma-theta-pink.yaml
new file mode 100644
index 0000000..3c5adb5
--- /dev/null
+++ b/presets/focus-11-gamma-theta-pink.yaml
@@ -0,0 +1,54 @@
+name: focus-11-gamma-theta-pink
+title: "Focus 11 — SAM triad plus 4 Hz theta (unverified arrangement)"
+fidelity: best-effort
+notes: |
+ BEST-EFFORT, UNVERIFIED, AND PARTLY AN ARRANGEMENT. Identical to
+ focus-11-gamma-pink (read its notes: same contributed, unverified 40 Hz
+ SAM triad and ear-set pink bed) plus a conventional L 175 / R 179 Hz
+ binaural pair, a 4 Hz beat with the right ear high.
+
+ The contributor reports that pair as INTERMITTENT in the source, not
+ continuously present. This preset plays it for the whole 30:00, so its
+ persistence is a design choice, not a measurement. Its -7 dB level was
+ likewise chosen, not measured. Prefer focus-11-gamma-pink as the
+ closer sketch of the source; this one is an audition variant.
+sample_rate: 48000
+output:
+ peak_dbfs: -3.0
+defaults:
+ harmonics:
+ - 1.0
+segments:
+- duration: '30:00'
+ groups:
+ - name: theta4
+ level_db: -7.0
+ pairs:
+ - left: 175.0
+ right: 179.0
+ - name: gamma257
+ level_db: -4.0
+ sam:
+ carrier_hz: 256.869
+ rate_hz: 40.0
+ depth_rad: 0.442
+ path: closed
+ - name: gamma324
+ level_db: 0.0
+ sam:
+ carrier_hz: 323.625
+ rate_hz: 40.0
+ depth_rad: 0.568
+ path: closed
+ - name: gamma385
+ level_db: -1.4
+ sam:
+ carrier_hz: 384.875
+ rate_hz: 40.0
+ depth_rad: 0.716
+ path: closed
+ bed:
+ level_db: -7.4
+ color: pink
+ slope_db_per_decade: -10.0
+emerge: false
diff --git a/presets/focus-11-older-flac.yaml b/presets/focus-11-older-flac.yaml
new file mode 100644
index 0000000..b55ee37
--- /dev/null
+++ b/presets/focus-11-older-flac.yaml
@@ -0,0 +1,48 @@
+name: focus-11-older-flac
+title: "Focus 11 — 4 Hz and 7.4 Hz pairs, older release (unverified)"
+fidelity: best-effort
+notes: |
+ BEST-EFFORT, UNVERIFIED. Contributed by a community member, who measured
+ it with AI-assisted analysis of their own copy of an older commercial
+ recording (a 44.1 kHz / 24-bit stereo FLAC named "HP040 Sleep 2
+ Function"), window 06:54-12:27, which they identify as its Focus 11
+ section. Farfield has NOT re-measured this recording and publishes no
+ data for it; the numbers below are taken on trust. It is a different
+ construction from focus-11-gamma-pink, not an earlier take on it.
+
+ Reported content, two persistent conventional binaural pairs:
+ A: L 167.35 / R 171.35 Hz = 4.00 Hz beat, right ear high.
+ B: L ~412.3 / R ~404.9 Hz = ~7.40 Hz beat, left ear high.
+ Pair B's absolute carrier reportedly drifts by about +/-0.5 Hz across the
+ window while its 7.4 Hz separation holds; this preset uses the median
+ centre (~408.6 Hz) and drops the drift.
+
+ The bed is reported as roughly pink through the midband (~ -11.6
+ dB/decade over 1-5 kHz) with a steeper high-frequency rolloff that is not
+ reproduced. Narration over the source prevented isolating the bed, so
+ its level is an estimate. No 40 Hz SAM was found in this window and none
+ is added. Rendered as one sustained 30:00 hold, not the source timeline.
+sample_rate: 48000
+output:
+ peak_dbfs: -3.0
+defaults:
+ harmonics:
+ - 1.0
+segments:
+- duration: '30:00'
+ groups:
+ - name: theta4
+ level_db: -1.1
+ pairs:
+ - left: 167.35
+ right: 171.35
+ - name: upper74
+ level_db: 0.0
+ pairs:
+ - left: 412.3
+ right: 404.9
+ bed:
+ level_db: -4.0
+ color: pink
+ slope_db_per_decade: -11.6
+emerge: false
diff --git a/presets/sam-gamma.yaml b/presets/sam-gamma.yaml
index f3f5e93..2296506 100644
--- a/presets/sam-gamma.yaml
+++ b/presets/sam-gamma.yaml
@@ -56,7 +56,9 @@ notes: |
(mss-report.md, "Method"), and the SAM component came back ABSENT: what
those recordings actually contain is amplitude panning. Nothing in this
preset is transcribed from audio. It reproduces the patents, and only
- the patents.
+ the patents. (focus-11-gamma-pink carries a community claim of measured
+ 40 Hz SAM in a newer Focus 11 release. Farfield has not verified it, so
+ the statement above stands until someone runs the estimator on it.)
Structure: four blocks on a 300 Hz carrier at f_m = 40 Hz, over a
quiet 100 Hz delta pair as ground and a pink bed. Block 2 repeats
diff --git a/tests/support.py b/tests/support.py
index 9fd00e6..9c84f34 100644
--- a/tests/support.py
+++ b/tests/support.py
@@ -28,7 +28,10 @@ def preset_names() -> list[str]:
return sorted(p.stem for p in PRESET_DIR.glob("*.yaml"))
-_TIER_ORDER = {"measured-tape": 0, "measured-mss": 1, "patent": 2, "original": 3}
+_TIER_ORDER = {
+ "measured-tape": 0, "measured-mss": 1, "patent": 2, "best-effort": 3,
+ "original": 4,
+}
def preset_metadata() -> list[dict]:
diff --git a/tests/test_cli.py b/tests/test_cli.py
index 812c024..151cc2c 100644
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -26,6 +26,7 @@ def test_list_lines_group_by_fidelity_tier():
assert "measured from the original tapes:" in text
assert "measured from the MSS remasters:" in text
assert "from the patents:" in text
+ assert "best-effort reconstructions (unverified):" in text
assert "original designs:" in text
assert "sleep-90" in text
assert "focus-10" in text
diff --git a/tests/test_presets_best_effort.py b/tests/test_presets_best_effort.py
new file mode 100644
index 0000000..f7120a4
--- /dev/null
+++ b/tests/test_presets_best_effort.py
@@ -0,0 +1,37 @@
+import pytest
+
+from tests.support import load_preset, preset_metadata
+
+BEST_EFFORT = [
+ "focus-11-gamma-pink", "focus-11-gamma-theta-pink", "focus-11-older-flac",
+]
+
+
+@pytest.mark.parametrize("name", BEST_EFFORT)
+def test_best_effort_tier_and_no_emerge(name):
+ session = load_preset(name)
+ assert session.fidelity == "best-effort"
+ assert session.emerge is None
+
+
+@pytest.mark.parametrize("name", BEST_EFFORT)
+def test_best_effort_says_so_in_title_and_notes(name):
+ session = load_preset(name)
+ notes = session.notes.lower()
+ assert "unverified" in session.title.lower()
+ assert "best-effort" in notes and "unverified" in notes
+
+
+@pytest.mark.parametrize("name", ["focus-11-gamma-pink", "focus-11-older-flac"])
+def test_best_effort_disclaims_farfield_measurement(name):
+ assert "farfield has not re-measured" in load_preset(name).notes.lower()
+
+
+def test_theta_variant_discloses_its_arrangement():
+ notes = load_preset("focus-11-gamma-theta-pink").notes.lower()
+ assert "intermittent" in notes and "design choice" in notes
+
+
+def test_library_titles_are_unique():
+ titles = [e["title"] for e in preset_metadata()]
+ assert len(titles) == len(set(titles))
diff --git a/tests/test_presets_library.py b/tests/test_presets_library.py
index 312c761..499bd01 100644
--- a/tests/test_presets_library.py
+++ b/tests/test_presets_library.py
@@ -11,11 +11,16 @@
# (tests/test_presets_mss.py holds their own shape assertions).
MEASURED_MSS = ["focus-10-mss", "focus-12-mss", "focus-15-mss", "focus-21-mss"]
PATENT = ["sleep-90", "wake", "sam-gamma"]
+# Community-contributed reconstructions that farfield has not re-measured
+# (tests/test_presets_best_effort.py holds their disclosure assertions).
+BEST_EFFORT = [
+ "focus-11-gamma-pink", "focus-11-gamma-theta-pink", "focus-11-older-flac",
+]
def test_all_expected_presets_exist():
assert set(
- ORIGINAL + MEASURED_TAPE + MEASURED_MSS + PATENT
+ ORIGINAL + MEASURED_TAPE + MEASURED_MSS + PATENT + BEST_EFFORT
) == set(preset_names())
@@ -71,5 +76,6 @@ def test_list_is_grouped_measured_first():
text.index("measured from the original tapes:")
< text.index("measured from the MSS remasters:")
< text.index("from the patents:")
+ < text.index("best-effort reconstructions (unverified):")
< text.index("original designs:")
)
diff --git a/tests/test_presets_measured.py b/tests/test_presets_measured.py
index 529347d..827f01e 100644
--- a/tests/test_presets_measured.py
+++ b/tests/test_presets_measured.py
@@ -30,7 +30,8 @@ def test_measured_totals_match_the_tape_timeline(name, total_s):
def test_measured_sorts_first_in_the_library():
tiers = [e["fidelity"] for e in preset_metadata()]
assert tiers[0] == "measured-tape"
- order = {"measured-tape": 0, "measured-mss": 1, "patent": 2, "original": 3}
+ order = {"measured-tape": 0, "measured-mss": 1, "patent": 2,
+ "best-effort": 3, "original": 4}
assert tiers == sorted(tiers, key=lambda t: order[t])
diff --git a/tests/test_session.py b/tests/test_session.py
index fe5e6cd..1d006f8 100644
--- a/tests/test_session.py
+++ b/tests/test_session.py
@@ -211,9 +211,9 @@ def test_fidelity_must_be_a_known_tier():
load_session_dict(data)
-def test_fidelity_tiers_are_the_documented_four():
+def test_fidelity_tiers_are_the_documented_five():
assert FIDELITY_TIERS == frozenset(
- {"measured-tape", "measured-mss", "patent", "original"})
+ {"measured-tape", "measured-mss", "patent", "best-effort", "original"})
def test_a_session_needs_at_least_one_segment():
diff --git a/tests/test_session_bed.py b/tests/test_session_bed.py
index 34f4a44..5a7524d 100644
--- a/tests/test_session_bed.py
+++ b/tests/test_session_bed.py
@@ -83,9 +83,9 @@ def test_measured_tape_is_a_valid_tier():
assert _bed_session(fidelity="measured-tape").fidelity == "measured-tape"
-def test_tier_set_is_exactly_the_four():
+def test_tier_set_is_exactly_the_five():
assert FIDELITY_TIERS == frozenset(
- {"measured-tape", "measured-mss", "patent", "original"})
+ {"measured-tape", "measured-mss", "patent", "best-effort", "original"})
def test_crossfade_stereo_parses():