Skip to content

Preparing Audio Data ​

The Data tab turns long recordings of one speaker into a training dataset for fine-tuning. Silero VAD detects the speech, Whisper transcribes it, and the result is cut into clips of a few seconds each.

Audio requirements ​

Works well:

  • A single speaker
  • Clean recordings with minimal background noise and no music
  • 30+ minutes in total; 1-3 hours is better
  • Variety of content and speaking styles

Doesn't work:

  • Overlapping speakers
  • Music beds, heavy noise or reverb
  • Very quiet or distorted audio

Quality matters more than quantity: 30 minutes of clean audio beats 3 hours of noisy audio.

Building a dataset ​

  1. Put your recordings in one folder. Subfolders are searched too, and files can be any length.
    /path/to/recordings/
    ├── episode1.mp3
    ├── episode2.wav
    └── more/chapter3.flac
    Supported formats: WAV, MP3, FLAC, M4A, OGG and Opus.
  2. Open the Data tab.
  3. Recordings folder: the full path to that folder, e.g. /home/me/recordings or C:\Users\me\recordings.
  4. Dataset name: e.g. my_voice (letters, numbers and underscores).
  5. Whisper model: openai/whisper-large-v3-turbo (the default) is fast and accurate. Use whisper-large-v3 for the best accuracy, or a smaller model on slow machines.
  6. Language (optional): e.g. english. If you leave it empty, the language is detected automatically.
  7. Segmentation (optional): Min clip length (default 7 s) and Max clip length (default 20 s).
  8. Click Build dataset.

When it's done, the dataset appears under Datasets with its number of clips.

Output format ​

Datasets are saved in LJSpeech format in data/<name>/:

data/my_voice/
├── wavs/
│   ├── my_voice_000000.wav
│   ├── my_voice_000001.wav
│   └── ...
├── metadata.csv
└── info.json

metadata.csv has one line per clip, in the form filename|text|text:

my_voice_000000.wav|This is the transcribed text.|This is the transcribed text.

You can edit metadata.csv by hand to fix transcription mistakes before training.

Checking quality ​

Listen to a few random clips in wavs/ and compare them with metadata.csv. Check that:

  • each clip starts and ends cleanly, without cut-off words;
  • the transcripts match the audio;
  • there's no music or second speaker.

If many transcripts are wrong, rebuild with a larger Whisper model or set the language explicitly.

Troubleshooting ​

  • "No speech found in the input files": the audio is too quiet or noisy, or isn't speech. Normalise the volume or use cleaner files.
  • Slow: Whisper is slow on CPU. Use a GPU or a smaller Whisper model. You only need to build a dataset once.
  • Out of memory: close other GPU apps, or use a smaller Whisper model.

Next step ​

👉 Finetuning: train a model on your dataset

Copyright and consent

Only train on audio you have the rights to, and only on voices of people who agreed to it.

Released under the BSD-3-Clause License.