DiffTrainer
a CustomTkInter GUI for processing and training DiffSinger models
Install / Use
/learn @agentasteriski/DiffTrainerREADME
English 中文(正體)
a CustomTkInter GUI for processing and training DiffSinger models
DiffTrainer brings together the most useful tools for DiffSinger in one easy, graphical package.
- nnsvs-db-converter for converting wav+lab data to wav/ds+csv
- SOME for estimating pitch
- DiffSinger's primary training
- OpenUtau export scripts
setup options
If you have an NVIDIA GPU:
- make sure a compatible version of CUDA Toolkit is installed
- current compatible versions: 11.8, 12.1, 12.4, 12.6, 12.8, 12.9
- proceed to next 'if'
If you have never used Python:
- run conda_installer.bat
- "Update Tools" once DiffTrainer is running
- use run_gui.bat to launch after that
If you have used Python:
- DiffTrainer by default uses Miniconda to manage conflicting package requirements.
- To use an existing conda installation:
- (Windows/Mac) install requirements.txt to base environment(3.10 strongly recommended, other versions may still work for the base environment)
- (Linux) requirements.txt still works, but has graphical bugs(described below). a fixed environment only for launching is in the assets folder
- run setup_conda_envs.py to configure the required environments
- "Update Tools" on the first tab to complete the install
- As of v0.2.1, the names of the environments are hardcoded requirements.
Known issues:
- langloader editor usually hides behind main window
- ~~honestly langloader is just ugly and bad~~ improved as of 0.3.14(1/16/25)
- if you type in the save interval or batch size boxes, an error appears in the terminal window
- no actual impact, just enter your number and ignore it
- ~~if you load one dataset, change your mind and load another, it fails to write the config~~ fixed in 0.3.29(5/7/25)
- do not name checkpoint folders just "acoustic" or "variance", it conflicts with the onnx export cleanup
- (Linux only) if the text and buttons appear jagged:
- ~~in the base environment,
conda install --channel=conda-forge tk[build=xft_*]~~ NO LONGER RECOMMENDED. this used to work but now renders the entire conda install non-functional. - improved 7/10/25, but not fully fixed. you can use assets/linuxbaseenv.yml to create a fixed environment, but then you have to launch from difftrainerBase
- ex.
conda env create -f assets/linuxbaseenv.yml
- ~~in the base environment,
- (Intel Mac only) dependency of a dependency
libcstno longer packaged for x86- add
libcstto upper half of environmentA/B.yml before running setup_conda_envs.py(unsure if this will continue to work or what other impacts the outdated version has)
- add
language support
DiffTrainer uses ez-localizr to allow GUI language selection. All users are welcome to translate the text found in en_US to other languages and submit a pull request.
to do
soon
- better readme
eventually
- ~~advanced export~~
- more translations
- ~~an icon that isn't amogus~~
