Speech recognition with accurate word-level timestamps.
Project description
easytranscriber is an automatic speech recognition library built for efficient, large-scale transcription with accurate word-level timestamps. The library is backend-agnostic, featuring modular, parallelizable, pipeline components (VAD, transcription, feature/emission extraction, forced alignment), with support for both ctranslate2 and Hugging Face inference backends. Notable features include:
- GPU accelerated forced alignment, using Pytorch's forced alignment API. Forced alignment is based on a GPU implementation of the Viterbi algorithm (Pratap et al., 2024).
- Parallel loading and pre-fetching of audio files for efficient data loading and batch processing.
- Flexible text normalization for improved alignment quality. Users can supply custom regex-based text normalization functions to preprocess ASR outputs before alignment. A mapping from the original text to the normalized text is maintained internally. All of the applied normalizations and transformations are consequently non-destructive and reversible after alignment.
- 35% to 102% faster inference compared to
WhisperX. See the benchmarks for more details. - Batch inference support for both wav2vec2 and Whisper models.
Benchmarks
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file easytranscriber-0.1.0.tar.gz.
File metadata
- Download URL: easytranscriber-0.1.0.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
998a2ce05b18db3738900d9b56c060a0c25423de9364d0f32c011fb94d894116
|
|
| MD5 |
184a5b81fcccecffadad45329dc17a10
|
|
| BLAKE2b-256 |
aef85a50b9c2c6f62b7773cc016a91de25b054e519a6c96a386a57060db8e3a0
|
File details
Details for the file easytranscriber-0.1.0-py3-none-any.whl.
File metadata
- Download URL: easytranscriber-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa9eca40d53709f55446c841b2c74d94fcdc402c38309fd031cb0e68e646b2bc
|
|
| MD5 |
3062ba919ee7dd0fa4d256af58c08c37
|
|
| BLAKE2b-256 |
1ce1a008312b704c10d9eca68ef39d62bd1f2c140e84c34b9c3d3f6098121ae3
|