Skip to content
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

Known issues when installing omnizart on Windows #6

Open
BreezeWhite opened this issue Nov 6, 2020 · 8 comments
Open

Known issues when installing omnizart on Windows #6

BreezeWhite opened this issue Nov 6, 2020 · 8 comments

Comments

@BreezeWhite
Copy link
Member

BreezeWhite commented Nov 6, 2020

Here lists the known issues when pip install omnziart on Windows.

Madmom

You need to install VS C++ build tools first to install and compile madmom. After download the build tool from the official site, run the installer and select C++ Build Tools, and on the side bar, select MSVC v142 - VS 2019 C++ x64/x86 and Windows 10 SDK. Run the installation, reboot, and try install with pip install madmom again.

Vamp Package

The module omnizart chord relies on vampy to run the feature extraction, and which was originally compiled for 32-bit python2.7 on Windows. See the discussion here. There is currently no workaround to avoid using the older version python, and the only solution would be to use the provided docker image, which could also be another pain for Windows user using the docker...

@swindle720
Copy link

swindle720 commented Aug 24, 2021

Tested on windows 10 via docker and specifically getting errors for chord.
Below is the results.

# omnizart chord transcribe song.wav

2021-08-24 07:18:54 Extracting feature
2021-08-24 07:18:57 Loading model
2021-08-24 07:18:57 Using built-in model /usr/local/lib/python3.6/dist-packages/omnizart/checkpoints/chord/chord_v1 for transcription.
2021-08-24 07:18:57 Preparing feature for model prediction
2021-08-24 07:18:57 Predicting...
Traceback (most recent call last):
  File "/usr/local/bin/omnizart", line 5, in <module>
    entry()
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/omnizart/cli/chord/transcribe.py", line 16, in transcribe
    chord.app.transcribe(input_audio, model_path=model_path, output=output)
  File "/usr/local/lib/python3.6/dist-packages/omnizart/chord/app.py", line 79, in transcribe
    chord, _, _, _ = model.predict(segments_pad)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py", line 130, in _method_wrapper    return method(self, *args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py", line 1599, in predict
    tmp_batch_outputs = predict_function(iterator)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py", line 780, in __call__
    result = self._call(*args, **kwds)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py", line 807, in _call
    return self._stateless_fn(*args, **kwds)  # pylint: disable=not-callable
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py", line 2829, in __call__
    return graph_function._filtered_call(args, kwargs)  # pylint: disable=protected-access
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py", line 1848, in _filtered_call
    cancellation_manager=cancellation_manager)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py", line 1924, in _call_flat
    ctx, args, cancellation_manager=cancellation_manager))
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py", line 550, in call
    ctx=ctx)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/execute.py", line 60, in quick_execute
    inputs, attrs, num_outputs)
tensorflow.python.framework.errors_impl.InvalidArgumentError:  ScanOp: Expected scan axis in the range [-1, 1), but got 1
         [[node chord_model/decoder/Cumsum (defined at /lib/python3.6/dist-packages/omnizart/models/chord_model.py:201) ]] [Op:__inference_predict_function_18198]

Errors may have originated from an input operation.
Input Source operations connected to node chord_model/decoder/Cumsum:
 chord_model/encoder/BinaryRound (defined at /lib/python3.6/dist-packages/omnizart/models/chord_model.py:226)

Function call stack:
predict_function

Same issue with MP3.
Tomorrow ill have alook at the code and see whats happening,

@Zulex
Copy link

Zulex commented May 28, 2022

Anyone managed to get this to work under Windows?

@MohammedMehdiTBER
Copy link

I suffered a lot to install omnizart. It is harder than Spleeter and Demucs.
So do I need to install python2.7 32-bit than vampy using it for chord trans to work?

@Vuizur
Copy link

Vuizur commented Aug 30, 2023

It is possible to run vampy on Windows with modern Python versions. You use the chroma-chordino plugin for the chord detection, I managed to get it running with the 64-bit-version of the plugin and Python 3.11. I used these dependencies: https://github.com/Vuizur/chord-recognizer/blob/main/pyproject.toml (unfortunately I had to fork vampy to get it to work, and my PRs haven't gotten merged yet. And ignore syncedlyrics + yt-dlp) and this code: https://github.com/Vuizur/chord-recognizer/blob/4d90190afb5b2a2ea290ca8714ad2e5dcb8dfbac/chord_recognizer/lyricsfetch.py#L35.

@yoyolicoris
Copy link
Member

Hi @Vuizur , thanks for looking into this!
I cannot see the files you gave. Are they in private repositories?

@Vuizur
Copy link

Vuizur commented Aug 31, 2023

Oups, I forgot to make it public. It should work now.

@Kuribohrn
Copy link

@MacTheZazou
Copy link

I can't install omnizart because of Madmom, I was able to install madmom from the source but Pip still try to install the v16.1 and it failed.. Arch & Windows

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants