Skip to content

Commit

Permalink
Added GUI by Bas Curtiz
Browse files Browse the repository at this point in the history
  • Loading branch information
ZFTurbo committed Oct 20, 2024
1 parent f6ada86 commit 3281b03
Show file tree
Hide file tree
Showing 10 changed files with 540 additions and 4 deletions.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ All inference parameters are [here](https://github.com/ZFTurbo/Music-Source-Sepa
* `train.py` - main training code
* `utils.py` - common functions used by train/valid
* `valid.py` - validation of model with metrics
* `ensemble.py` - useful script to ensemble results of different models to make results better (see [docs](docs/ensemble.md)).

## Pre-trained models

Expand Down Expand Up @@ -142,6 +143,10 @@ Look here: [Dataset types](docs/dataset_types.md)

Look here: [Augmentations](docs/augmentations.md)

## Graphical user interface

Look here: [GUI](docs/gui.md)

## Citation

* [arxiv paper](https://arxiv.org/abs/2305.07489)
Expand Down
24 changes: 24 additions & 0 deletions docs/gui.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
## GUI for MSST code

GUI was prepared by **Bas Curtiz** and is based on [wxpython](https://en.wikipedia.org/wiki/WxPython) module.

![Window example](gui/wx_msst_screen.png)

### How to

How to use GUI with ZFTurbo's Music Source Separation Universal Training Code:

1. Install Python: https://www.python.org/ftp/python/3.11.6/python-3.11.6-amd64.exe
2. Install Microsoft Visual C++ 2015-2022 (x64): https://aka.ms/vs/17/release/vc_redist.x64.exe
3. Install Microsoft C++ Build Tools: https://visualstudio.microsoft.com/visual-cpp-build-tools/
Select Desktop development with C++
4. Install PyTorch: https://pytorch.org/get-started/locally/
5. Download and unzip Music Source Separation Universal Training Code:
https://github.com/ZFTurbo/Music-Source-Separation-Training
6. Open up CMD inside the folder and enter: `pip install -r requirements.txt`
7. enter: `pip install wxpython`
8. enter: `python gui-wx.py`
9. Download models - assign the config (.yaml) and checkpoint (.bin, .ckpt, or .th)
10. Done.

Video guide on [Youtube](https://youtu.be/gyxMCbDwfAw).
506 changes: 506 additions & 0 deletions gui-wx.py

Large diffs are not rendered by default.

Binary file added gui/Poppins Bold 700.ttf
Binary file not shown.
Binary file added gui/Poppins Regular 400.ttf
Binary file not shown.
Binary file added gui/favicon.ico
Binary file not shown.
Binary file added gui/mvsep.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added gui/wx_msst_screen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,5 @@ wandb
accelerate
huggingface-hub>=0.23.0
prodigyopt
torch_log_wmse
torch_log_wmse
wxpython==4.2.2
6 changes: 3 additions & 3 deletions train.py
Original file line number Diff line number Diff line change
Expand Up @@ -153,10 +153,10 @@ def train_model(args):

# wandb
if args.wandb_key is None or args.wandb_key.strip() == '':
wandb.init(mode = 'disabled')
wandb.init(mode='disabled')
else:
wandb.login(key = args.wandb_key)
wandb.init(project = 'msst', config = { 'config': config, 'args': args, 'device_ids': device_ids, 'batch_size': batch_size })
wandb.login(key=args.wandb_key)
wandb.init(project='msst', config={'config': config, 'args': args, 'device_ids': device_ids, 'batch_size': batch_size })

trainset = MSSDataset(
config,
Expand Down

0 comments on commit 3281b03

Please sign in to comment.