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

Latest essentia seem to have broken Mel analyzers #7

Open
Clpsplug opened this issue May 24, 2018 · 1 comment
Open

Latest essentia seem to have broken Mel analyzers #7

Clpsplug opened this issue May 24, 2018 · 1 comment

Comments

@Clpsplug
Copy link

With essentia 2.1.beta4 (because I needed to catch up with the latest ffmpeg,) I am getting this error in infer/ddc_server.py:

Creating Mel analyzers
Traceback (most recent call last):
  File "ddc_server.py", line 309, in <module>
    analyzers = create_analyzers(nhop=441)
  File "/Users/cplug/gits/ddc/infer/extract_feats.py", line 20, in create_analyzers
    sampleRate=fs)
  File "/usr/local/opt/essentia/lib/python2.7/site-packages/essentia/standard.py", line 44, in __init__
    self.configure(**kwargs)
  File "/usr/local/opt/essentia/lib/python2.7/site-packages/essentia/standard.py", line 64, in configure
    self.__configure__(**kwargs)
RuntimeError: Error while configuring MelBands: TriangularBands: the number of spectrum bins is insufficient for the specified number of triangular bands. Use zero padding to increase the number of FFT bins.

The MelBands has been malfunctioning on the certain situation as has been discussed on MTG/essentia#142.
Unfortunately, DDC had such situation and latest essentia won't allow this anymore.

Looks like that for the function create_analyzers in extract_feats.py, you either need to double the values of nffts parameter or reduce the value of mel_nband, but both are creating issue elsewhere.
If I do either of those 'fixes,' I get this error when I try to create a chart from my audio. I'll try to read what's going on myself, but for now, I'll report the issue.

Traceback (most recent call last):
  File "ddc_client.py", line 9, in <module>
    print s.create_chart(artist, title, audio_fp, diffs)
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 1243, in __call__
    return self.__send(self.__name, args)
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 1602, in __request
    verbose=self.__verbose
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 1283, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 1316, in single_request
    return self.parse_response(response)
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 1493, in parse_response
    return u.close()
  File "/Users/cplug/.pyenv/versions/2.7.14/lib/python2.7/xmlrpclib.py", line 800, in close
    raise Fault(**self._stack[0])
xmlrpclib.Fault: <Fault 1: "<class '__main__.CreateChartException'>:Unknown chart creation exception">
@chrisdonahue
Copy link
Owner

chrisdonahue commented Jun 1, 2018

Thx for logging this. I have been meaning to do a large overhaul of DDC for a while which would remove the dependency on essentia and update tensorflow to the >1.0 era. Accordingly, I don't plan on patching support for essentia 2.1.beta4. If you come up with something, please submit a PR

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

2 participants