๐ฆ DramaBox Dataset Prep
The gatekeeper between your audio and the trainer
- TTS_engine
- training_dataset
- dataset_info
Training a DramaBox LoRA to clone a voice has two hard parts: getting your data into the format the official trainer wants, and preprocessing it into latents. This node is the gatekeeper for both. It normalizes whatever dataset you hand it into DramaBox's official ~-delimited speaker index, then runs the Gemma/audio-VAE preprocessing pass that caches the conditioning and audio latents the training loop needs.
It's part of TTS Audio Suite's unified training flow - the pack lets you train RVC or DramaBox models from the same ๐ Model Training entry point, and this node is the DramaBox side of the funnel.
The inputs that matter
TTS_engine- connect yourโ๏ธ DramaBox Enginenode here. Its selected model supplies the paths to the transformer, audio components, and Gemma, so the engine needs to exist before you prep anything.dataset_source- the path to your dataset: a JSONL/JSON manifest, TSV, or the officialgemini_synthetic/libriheavyindex. Manifest rows just needaudio_filepath/audio_pathandtext/transcript.dataset_type- matches the source format. Everything gets converted to the official speaker index, so you don't need to hand-craft it.model_name- the name of your eventual LoRA adapter ("MyDramaBoxLoRA" by default). Same name gets used for the trained adapter later.
The useful optional ones: min_duration/max_duration (default 2โ20s) filter clips before preprocessing; audio_dir is the base folder for relative audio paths when your manifest references them; dry_run is a CPU-safe index-only mode that doesn't download models, load Gemma, or touch CUDA - great for checking your data is well-formed before committing to a GPU pass; preprocess_now runs the heavy Gemma/VAE work immediately, or you can leave it off and let Model Training handle preprocessing.
What it hands you
Two outputs:
training_dataset(typeTRAINING_DATASET) - wire this into๐๏ธ DramaBox Training Config, then on to๐ Model Training.dataset_info(STRING) - a human-readable summary (clip count, speakers, whether it's preprocessed).
How it fits the flow
Two ways in. Fully inside ComfyUI: ๐๏ธ Training Clip Staging โ ๐งพ DramaBox Dataset Rows builds the manifest for you, and you feed it here as dataset_type=manifest. Or bring an external dataset - the gemini_synthetic and libriheavy formats are the official DramaBox trainer's own, so this node is the bridge if you already downloaded those.
Install the pack once (Manager โ "TTS Audio Suite", or clone + python install.py - the engine article has the full command). Preprocessing is a GPU workload and needs the model files downloaded, so don't be surprised when the first run pulls several GB. And a real gotcha from the docs: give every speaker at least two clips, or the trainer will be unhappy with you.
If you're just validating data, flip dry_run on first. It's the difference between a five-second check and a 16GB download you didn't need yet.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| TTS_engine | TTS_ENGINE | Connect a DramaBox engine. Its selected model supplies the official transformer, audio components, and Gemma paths. | |
| model_name | STRING | MyDramaBoxLoRA | Name used for the prepared dataset and eventual managed LoRA adapter. |
| dataset_source | STRING | JSONL/JSON manifest, TSV, gemini_synthetic index, or libriheavy index. Manifest rows should contain audio_filepath/audio_path and text/transcript. | |
| dataset_type | COMBO | manifest | Input format. The suite converts every format into the official ~-delimited speaker index used by the trainer. |
| audio_diropt | STRING | Base folder for relative audio paths. Blank resolves paths relative to the dataset file. | |
| min_durationopt | FLOAT | 2.00.1โ60 | Minimum clip duration passed to the official preprocessor. |
| max_durationopt | FLOAT | 20.00.5โ120 | Maximum clip duration passed to the official preprocessor. |
| reuse_existingopt | BOOLEAN | true | Reuse a matching normalized index and already-preprocessed cache when available. |
| preprocess_nowopt | BOOLEAN | true | Run the official Gemma/audio-VAE preprocessing now. Turn this off to prepare only the CPU-side index and let Model Training preprocess later. |
| dry_runopt | BOOLEAN | false | CPU-safe index-only mode. No model download, Gemma load, or CUDA preprocessing is started. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| training_dataset | TRAINING_DATASET | โ |
| dataset_info | STRING | โ |