-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Solve MAC users' issue + split the doc #23
Conversation
Oh I forgot : I did install ALICE from scratch. |
Hi, Thanks for the efforts! However, after cloning this branch + installing conda env from scratch, I'm still getting this:
The list of pip packages seems fine though:
|
Arg, we at least know the problem doesn't exclusively come from pyannote.metrics.
|
Thanks, sorry I missed those somhow.
I also checked that $DEVICE is cpu, as it should. Also tried with different --parallel arguments and batch sizes. No positive effect. |
Just to update. I tried to check if there's something strange with the new MacOS shell (zsh vs. bash), permissions etc., but I can't find anything in particular. I've been checking through the variables going to apply.sh , the protocol file that gets created in apply.sh etc., but I can't spot anything out of ordinary. Call for pyannote-audio seems fine, but something inside is broken. |
My colleage using Ubuntu 20.04.3 LTS confirmed that this branch installs and runs ok. So it really seems to be something MacOS 11.6 specific at the moment. Duh. |
So annoying :/ I'm afraid at this point we need to know which line of the code throws the Segmentation fault error :/ |
Right. If I understood right, that's happening inside a compiled pyannote binary? |
I can now confirm that the same error in pyannote-audio apply also happens on High Sierra (MacOS 10.13.6), for which there was previously no problem with this (it's basically the same OS configuration that was used to develop ALICE in the first place). I wonder if this relates to some peculiarity in Mac's way of handling absolute/relative paths (not sure what this could be) that has some link to some change in pyannote-audio during this year. Another thing I can think of is some problem in file read/write permissions. |
Ok, some more info on this. Uninstalling dlib from the conda env and running apply.sh leads to the same error. I also tested older versions of dlib, as installed using pip: still the same error. |
Yet some extra info: if I just install the newest voice-type-classifier separately, that works on the same data no problem. @MarvinLvn : Do you think that the newest version is considerably different from the old one in terms of output characteristics, i.e., can we switch over to using that one? ALICE has been tuned with the old version (to which ALICE repo points to), including automatic counterbalancing for under/oversegmentation. |
Oh wait, that's strange because, in this pull request, the git submodule pointing to the voice-type-classifier repo is already supposed to be the newest. If, as you said, the code is working with the newest voice-type-classifier, then, accepting this PR should be enough.
I should have realized that when switching to the pull request, submodules are not automatically updated. To check that the
Latest commit should be from Oct. 14th saying something like |
Following your instructions precisely from scratch, I again get the same error with apply.sh As for git log, this is the most recent entry: (ALICE) rasaneno@wks-86206-mac voice-type-classifier % git log
So, with ALICE.yml it doesn't work, with vtc.yml it does. If I run ./run_ALICE.sh demo/ROS_5271_20_01_03600_snippet_mono.wav using "pyannote" env from the vtc.yml, the diarization process runs fine but then SylNet fails for obvious reasons. |
Ok, I figured a way to fix this.
After that, ALICE runs and produces the correct demo script output! Converting this to an env file .yml and correcting for the pyannote installation, this is the resulting environment file with which ALICE runs on both of my MacOS versions:
Would you @MarvinLvn have time to check this out at some point? If it works, perhaps integrate it to a pull request that has your neat documentation changes? Alternatively, if you prefer so, I can merge this and then add the new .yml on top. In any case, testing this on Linux would be probably useful. |
Apparently the above env does not work on Linux. This one works on Linux
but does not install pyannote-audio correctly on Mac (apply.sh does not find pyannote-audio). I've tried a dozen different things but I can't figure out a way to create one .yml file that would work on both platforms, so I wonder if just having two different OS-specific .yml files is the way to go... |
Hi Okko, Sorry for not getting back to you earlier and good job for narrowing this down !!!
(some weird string suffixes after the version) Anyway I've noticed that the I do confirm that it works on my machine and I'm quite surprised pyannote-audio doesn't get installed on MAC. Has the repo be cloned with If pyannote-audio hasn't been installed properly, you should have an error message when you create the ALICE conda env, could you send it there ? |
PS : I've just committed the new |
I can confirm that on Mac it doesn't install pyannote cleanly from the latest .yml listed here. There is no error during env creation, but pyannote just cannot be found.
Installing from vtc.yml always works with these steps: After which ALICE works just fine. In other words, if I just add tensorflow 1.10.0 and tensorboard 2.7.0 to the vtc.yml, there are no errors during env creation, but it doesnt find pyannote anymore after creating the env. Super annoying. Shall we just have the MacOS and Linux envs separately? Here's the sequence of things that works on Mac (or the long env spec with the weird extra tags after the versioning above):
|
In response to git issue #21
Hi Okko,
I've tried to remove all dependencies of pyannote.metrics. If you could try to reinstall ALICE from scratch to check that the fix is working, it'd be great !
Since the last update, the vtc got some modifications :
Consequently, I downsampled your demo file
ROS_5271_20_01_03600_snippet_mono.wav
and ALICE's output changed a bit : we lost 3 phonemes, 2 syllables and 1 word.Also this might be due to how I downsampled the file, I ran :
I also tried to split the doc to improve overall attractiveness of the repo (I made something similar than the vtc), hope you like it.