Tierline Contact

Acoustic search and archival stewardship

Tierline, at a glance

Search recordings with a short example of speech. Every result opens at its moment in the original recording, with its source and the access rules set for it.

Built for oral-history and language archives, including Indigenous-language collections whose communities decide who may hear what.

How a search runs, step by step Built, run, evaluated, in use

Where to start

A recording, the search pipeline, or the permissions

01 LISTEN

Listen to a recording

Play the example and hear the selected words inside the recording around them.

Audio Lab

Envelope measured from the first example recording.

02 TRACE

Follow a search through the pipeline

Seven stages, from the permissions on a recording to a person reviewing the results.

Architecture

Diagram of the seven stages, drawn on the same envelope.

  1. consent
  2. audio
  3. encoder
  4. compress
  5. retrieve
  6. align
  7. review

03 GOVERN

Check who may use each result

Each action has its own permission, and every derivative keeps a link to its source recording.

Governance

Diagram of a source recording, its derivatives and their permissions.

Collaborations

Six collaborations

Tierline is in use in four archive pilots: the recordings, documents and photographs that a cultural center, a tribal digital library, a language department and a tribal band keep for their communities, each under the community’s own rules for who may search, hear, review and export them. Two more collaborations are in co-design.

The four pilots hold 2,184.1 hours of archival audio, 17,382 document pages and 9,819 photographs and images.

Partners & archives Impact

Architecture snapshot

From archival audio to human review

The path a recording takes from ingest to export, drawn from the project’s architecture configuration.

Archival audiosource recordingFFmpeg ingest16,000 Hz FLACXLS-R-300Mlayer 11PCA 1024->256int8 storeHNSW32_SQ8500 candidatesSubsequence DTWcosine costHuman review50 rankedELAN / Praatexport
The full reference path: ingest, representation, projection, retrieval, reranking, human review, export.

Inside a search

What happens when a language worker selects a passage

1Select a 0.5-2.0s examplelanguage worker highlights a passage2Encode locallyXLS-R layer 11 -> PCA-256 -> int83FAISS retrieves 500 candidatesHNSW32_SQ8, policy-authorized shards only4<=100 regions rerankedframe-level subsequence DTW, cosine cost5Temporal NMS removes duplicatesIoU >= 0.50 suppresses overlaps6Top 50 results reviewed20 per page, by a person
One query, traced through the retrieval pipeline, with its configured candidate counts, thresholds and result depth.

Try it

Try the search yourself

Play a recording, select a few spoken words, and Tierline finds passages that sound like them, computed in your browser with nothing uploaded. Then add a note and export your review.

Search in your browser

The example recordings, or your own in the Workspace, matched with log-mel features and subsequence DTW inside a Web Worker. It runs on a static site with no server and no upload.

Tierline reference engine

The architecture on How it works: XLS-R layer-11 features, PCA-256, calibrated int8 storage, policy-partitioned FAISS retrieval and DTW reranking, run locally against an authorized archive.

Its measured results are on Evaluation.

Technical specification

Configuration

Encoder
wav2vec2-xls-r-300m
Layer
11
Hidden dimensions
1,024
Frame spacing
20 ms
PCA
1024 → 256
Frame storage
int8
Search index
HNSW32_SQ8
M
32
efConstruction
200
efSearch
512
Coarse candidates
500
DTW regions
≤100
Reranking
subsequence DTW
Cost
cosine
NMS
IoU 0.50
Internal results
50
Review page
20

Policy-aware retrieval

Permissions are checked before search

user + purposeoperator identitypolicy evaluatorpermits(...)shard Aauthorizedshard Bnot searchedshard Cauthorizedshard Dnot searchedauthorized results only
Policy evaluation happens before any index is opened. A shard for material the operator cannot search is never queried.

Every recording is governed by a policy JSON document with six independently-grantable actions: search, play, annotate, export, train, publish. Every action defaults to denied. FAISS indexes are partitioned per policy hash, and a query touches only the shards the requesting operator is authorized for.

The policy engine, with an interactive example, is on the Permissions page.

Offline and local

Recordings, indexes, and models stay on one machine

Model assets are staged once, locally. Ingest, feature extraction, indexing, search, review, and export all read and write to a local SQLite workspace and local feature/index files. No cloud inference dependency exists in the retrieval path.

Once the model is staged, nothing in the retrieval path needs a network connection, and the test suite runs with outbound network access denied.

one local workstationStaged model assetsXLS-R snapshot, local files onlySQLite workspacerecordings, policies, audit logFeature + index storesint8 frames, HNSW / FlatReview UIPySide6 desktop app
Everything a search touches lives inside one local workstation boundary.

Collections

How a community might organize its collections

Collections are each community’s decision. These four are examples; a program may use different categories, or decide that some material does not belong in a digital archive.

Some knowledge is restricted by season, role, initiation, kinship or place, and some should not be recorded at all. The community sets those boundaries, and Tierline’s permissions express them: nothing has to be digitized, searchable, exported or used to train a model.

Get in touch

Contact

If you run a language program, tell us what material you have and which tasks take the most time. A first conversation commits you to nothing.