Skip to main content

Trainscribe

Trainscribe is a command-line tool that transcribes audio files in a specified folder using OpenAI's Whisper and generates a metadata.csv file. The produced metadata file is intended to use in training/finetune of text to speech (TTS) models, and may use one of the following formats:

  • file_id|transcribed_text, or
  • file_id|transcribed_text|speaker, if a speaker label is provided.

This is similar to LJ Speech format, but lacks an additional field with normalized transcribed text for pronuciation. Particularly, file_id|transcribed_text may be used in projects like piper-train, and file_id|transcribed_text|speaker in xtts-finetune.

Requirements

  • Python >=3.10, <3.14
  • uv
  • ffmpeg (install with sudo apt install ffmpeg)

Usage

Run the tool with:

uvx trainscribe --folder /path/to/audio/folder [options]
Transcribe a folder of audio files to metadata.csv using Whisper.

options:
  -h, --help            show this help message and exit
  --folder, -f FOLDER   Folder with audio files
  --lang, -l LANG       Language code for transcription (e.g. 'en')
  --model, -m MODEL     Whisper model name (tiny, base, small, medium, large, turbo)
  --speaker, -s SPEAKER
                        Speaker label to add to metadata lines
  --device, -d DEVICE   Device for whisper model (cuda/cpu)
  --output, -o OUTPUT

Example

Transcribe English audio in dataset/wavs using the medium model:

uvx trainscribe --folder dataset/wavs --lang en --model medium 

This generates dataset/wavs/metadata.csv

Metadata

Release files for trainscribe 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for trainscribe 0.1.2
File Size Uploaded
trainscribe-0.1.2.tar.gz 3.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for trainscribe 0.1.2
File Interpreter ABI Platform
trainscribe-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 7.5 kB

Release files / trainscribe-0.1.2.tar.gz

Download URL trainscribe-0.1.2.tar.gz
Size 3.3 kB
Tags Source
SHA-256 checksum
How to use checksums
e9aaa2f37c4d0a1342d2ab4093275ee914751560fe958d35bdbf0f379a0340c0
BLAKE2b-256 checksum
How to use checksums
cbf4bebc1504c264f7334a94ecb133f0c16ef2b23f8c3284a8fcaa15728c5332
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.8

Release files / trainscribe-0.1.2-py3-none-any.whl

Download URL trainscribe-0.1.2-py3-none-any.whl
Size 4.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1eae31334121c34801dfa26c89ff1bd39504abcb62a6bfd47c563e6f83250b3
BLAKE2b-256 checksum
How to use checksums
4a0cd163c393571d2bde84e13900020c89b32b2dc264b28f14945ede7fce2765
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.8

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page