Status: Current Last updated: 2026-09-07
This repository contains Batchalign: the audio and ML pipeline for producing and enriching CHAT transcripts. It supports transcription, forced alignment, morphotagging, utterance segmentation, translation, diarization, comparison, and the Batchalign desktop shell.
On macOS or Linux:
curl -LsSf https://raw.githubusercontent.com/TalkBank/batchalign/main/bootstrap/bootstrap.sh | shOn Windows, from PowerShell:
powershell -NoProfile -ExecutionPolicy Bypass -Command "Invoke-Expression ((Invoke-WebRequest -UseBasicParsing 'https://raw.githubusercontent.com/TalkBank/batchalign/main/bootstrap/bootstrap.ps1').Content)"The bootstrapper installs uv
when needed, then installs or upgrades batchalign[all] on Python 3.11 with
prerelease versions enabled. The installer requires Batchalign 0.10 or newer.
Next, follow the Quick Start. If anything is confusing, see the Batchalign documentation.
The CHAT parser, typed model, transformations, and grammar come from the version-pinned TalkBank Chatter repository. They are dependencies of Batchalign rather than separately shipped products in this repository.
Use the Bazel-backed just recipes:
just batchalign build debug
just batchalign test debug
just batchalign pytest
just batchalign cli -- --helpjust batchalign cli is the authoritative development entrypoint for the CLI.
Bazel uses host-adaptive parallelism by default. Set BATCHALIGN_BAZEL_JOBS
explicitly when a resource-constrained runner needs a lower limit.
The main source areas are:
crates/batchalign/— typed Rust core and PyO3 enginepython/batchalign/— Python backends and CLIapps/batchalign/— desktop applicationresources/test_fixtures/— integration and parity fixturesscripts/parity/— bounded pre/post parity tooling
BSD-3-Clause. Copyright (c) 2026, Carnegie Mellon University.