Anjok07 / ultimatevocalremovergui

GUI for a Vocal Remover that uses Deep Neural Networks.
MIT License
16.55k stars 1.25k forks source link

Crashing at "inverse stft of instruments and vocals" #19

Closed ManOrMonster closed 3 years ago

ManOrMonster commented 3 years ago

Using GPU or CPU, it gets to "inverse stft of instruments and vocals", hangs for about 30 seconds, then closes. This is on v2 and v4. I tried with the latest version of tsurumeso's command line vocal remover and it works fine.

I'm using a GTX 1080ti, 32GB of system RAM, Windows 10. I tried with a clean install of both Python 3.8 and 3.7.

The console output: 100%|██████████████████████████████████████████████████████████████████████████████████| 42/42 [00:03<00:00, 11.34it/s]

Installed packages:

audioread==2.1.9 cffi==1.14.3 dataclasses==0.6 decorator==4.4.2 future==0.18.2 joblib==0.17.0 librosa==0.6.3 llvmlite==0.31.0 numba==0.48.0 numpy==1.19.4 opencv-python==4.4.0.46 Pillow==8.0.1 pycparser==2.20 resampy==0.2.2 scikit-learn==0.23.2 scipy==1.5.4 six==1.15.0 SoundFile==0.10.3.post1 soundstretch==1.2 threadpoolctl==2.1.0 torch==1.7.0+cu110 torchaudio==0.7.0 torchvision==0.8.1+cu110 tqdm==4.30.0 typing-extensions==3.7.4.3

DilanBoskan commented 3 years ago

Could you try the latest version in the beta branch and see if this issue still persists?

ManOrMonster commented 3 years ago

When I ran, I got:

File "E:\ultimatevocalremovergui BETA\VocalRemover.py", line 7, in <module>
    from tkinterdnd2 import TkinterDnD, DND_FILES  # Enable Drag & Drop
ModuleNotFoundError: No module named 'tkinterdnd2'

Tkinterdnd2 is not in your requirements.txt file. I had to manually install it from here.

I'm able to run it after that, but there are some issues. For one, when I select my audio file, it puts the path in braces and I'm unable to remove them since the path is grayed out in the UI.

image

When I try to convert, I get this error:

image

Also, I put your v2 stacked models in the v2/Stacked Models folder, but "Choose Stacked Model" is still grayed out, so I can't try to use v2 at all. I don't know where to find models with the new naming convention, so I'm using the ones from your previous releases (v2 from github and v4 from discord). The v2 ones are named like "Multi-Genre Model.pth".

DilanBoskan commented 3 years ago

Check the latest beta commit, it should fix this issue. I moved my working tkinterdnd2 library into the local folder, so that everyone has the same version.

I am not sure about what model is used for what, but for the 'Mult-Genre Model', I would guess Instrumental. @Anjok07 knows more about that. If you want to use a stacked model, on the left side of the window, select Stack Loops, and then Stack Conversions Only.

Anjok07 commented 3 years ago

@ManOrMonster The 'Multi-Genre Model' is an instrumental model. I'm going to rename them in the main release in a few days. However, those model were trained on the default values so they should run exactly as intended without being renamed.

Anjok07 commented 3 years ago

@DilanBoskan I'm thinking maybe we should change the v2 and v4 folders' naming convention from 'Instrumental Models' to 'Main Models'. At least for now until I get the vocal models trained up.

ManOrMonster commented 3 years ago

I'm still getting the issue with curly braces in the file path:

image

DilanBoskan commented 3 years ago

This is not an issue, but rather a visual bug, it should not affect anything

ManOrMonster commented 3 years ago

Well this must be unrelated then, because when I try to convert, I get this:

image

DilanBoskan commented 3 years ago

Fixed bug

ManOrMonster commented 3 years ago

I'm able to get to the same point as before now, and it still locks up at "inverse stft of instruments and vocals". So this is not fixed.

DilanBoskan commented 3 years ago

@Anjok07 Can you check if it still works for you in the latest commit?

DilanBoskan commented 3 years ago

For him it was resolved, very confusing

DilanBoskan commented 3 years ago

Can you replace the VocalRemover.py in your folder with this one, and show me the console output? Thank you.

VocalRemover.zip

ManOrMonster commented 3 years ago

SELECT ('E:/Creation/Original Songs/01 Abigail Blue.mp3',) 100%|██████████████████████████████████████████████████████████████████████████████████| 22/22 [00:01<00:00, 12.26it/s]

That's all it shows. Then when it gets to "inverse stft of instruments and vocals", it locks up. After 30 seconds or so, it crashes.

DilanBoskan commented 3 years ago

Alright, I got mixed up with the Drag & Drop bug.

To Debug the issue, could you replace both spec_utils.py files in both lib_v2 and lib_v4 with these here and send the console output (once with v2 and ocne with v4)? I will assign this issue to @Anjok07, he is a bit more knowledgable on the conversion process.

lib_v2-spec_utils.zip lib_v4-spec_utils.zip

ManOrMonster commented 3 years ago

Same output in both models:

SELECT ('E:/Creation/Original Songs/01 Abigail Blue.mp3',) 100%|██████████████████████████████████████████████████████████████████████████████████| 22/22 [00:01<00:00, 11.56it/s]

1 2 3

Anjok07 commented 3 years ago

@ManOrMonster - I tried replicating the error but everything seems to be working on my end. I'll have to dig into this a bit more.

My advice for the time being would be to uninstall everything and start from scratch.

EDIT: I apologize, I see you already tried starting from scratch. I will investigate this some more and get back to you.

Anjok07 commented 3 years ago

@ManOrMonster - Please open the application from the command prompt and paste the error output given when the application closes after that 30 seconds.

ManOrMonster commented 3 years ago

Same output, but it sits there with a blinking cursor long after the GUI closes, like it's still running.

Never mind, I just didn't see the GUI was still open. Same output, no error.

Anjok07 commented 3 years ago

@ManOrMonster The command prompt you opened the application with doesn't show any errors?

ManOrMonster commented 3 years ago

Unfortunately, no.

Anjok07 commented 3 years ago

@ManOrMonster - What is the name of the model you are using?

ManOrMonster commented 3 years ago

I've tried:

MGM-32000-512 MGM-44100-512 Multi-Genre Model

DilanBoskan commented 3 years ago

Could you try reinstalling the librosa library? Could you send a video of the application hanging up, from start to finish, where both the cmd and the application is viewable fully?

Thank you that would help tremendously

ManOrMonster commented 3 years ago

Reinstalled, same issue.

video.zip

Anjok07 commented 3 years ago

@ManOrMonster - I reviewed the video carefully and compared my Python packages with yours. I went ahead and updated the requirements.txt file with the exact same package versions I have installed on my machine.

Please proceed with the following -

  1. Delete your current installation of Python as well as the current version of the UVR-GUI you have saved.
  2. Follow the install instructions here and make sure to download and use the latest version of the beta here.

Also, please rename the v4 models you have with the following.

If you don't run them with the proper parameters, you risk poor conversion quality.

DilanBoskan commented 3 years ago

I think there is not much else we can do

ManOrMonster commented 3 years ago

After doing all that, there was an improvement. It only crashes after 15 seconds now instead of over a minute.

Also, I get this error when conversion starts (not with WAV though):

C:\Users\*****\AppData\Local\Programs\Python\Python37\lib\site-packages\librosa\core\audio.py:161: UserWarning: PySoundFile failed. Trying audioread instead.
  warnings.warn('PySoundFile failed. Trying audioread instead.')
100%|██████████████████████████████████████████████████████████████████████████████████| 43/43 [00:02<00:00, 15.34it/s]
Package       Version
------------- ------------
audioread     2.1.9
cffi          1.14.3
decorator     4.4.2
future        0.18.2
joblib        0.17.0
librosa       0.7.2
llvmlite      0.31.0
numba         0.48.0
numpy         1.19.4
opencv-python 4.4.0.46
Pillow        8.0.1
pip           20.2.4
pycparser     2.20
resampy       0.2.2
scikit-learn  0.23.2
scipy         1.5.4
setuptools    39.0.1
six           1.15.0
SoundFile     0.10.3.post1
soundstretch  1.2
threadpoolctl 2.1.0
torch         1.6.0+cu101
torchvision   0.7.0+cu101
tqdm          4.45.0
Anjok07 commented 3 years ago

@ManOrMonster That 'PySoundFile' error can be safely ignored.

Regarding the main issue, there may be a system setting preventing you from completing the conversion process (it might even be your Anti-virus). My advice to you at this point would be to try a test install of the application on another PC, VM, or platform.

We have been unable to replicate your issue on our end.

ManOrMonster commented 3 years ago

I'm working on a VM but struggling to get network access on it. It's Ubuntu, but I'm assuming this should work just fine on that, right?

Any reason you can think of why tsurumeso's would work for me, but not UVR-GUI?

Anjok07 commented 3 years ago

@ManOrMonster - It's unclear to me why that is. However, I can confirm was able to test this GUI on 2 separate PC's, both running Windows 10, and 2 VM's, one running Windows 10 & another running Ubuntu.

You are the first user to ever report this specific issue.

Anjok07 commented 3 years ago

@ManOrMonster - I also want to mention that I only ran conversions within a VM to test all of the GUI options, except the one enabling GPU conversions.

ManOrMonster commented 3 years ago

I figured it out. I thought I had tried this at one point, but apparently not.

If I run Command Prompt as administrator and run it from there, it works.

And it's not like I'm trying to save the output in the root of C: or something. It's just a folder on my E: drive. I don't have a super locked down Windows install either. What do you think might cause that?

In any case, we have a solution. Thanks for the help.

DilanBoskan commented 3 years ago

Great!! Hindsight is 20/20 but this should have been the first thing I should have thought of..