audeering / opensmile-python

Python package for openSMILE
https://audeering.github.io/opensmile-python/
Other
239 stars 32 forks source link

Running original IS10_paraling config #109

Closed ATriantafyllopoulos closed 1 month ago

ATriantafyllopoulos commented 1 month ago

Currently, the opensmile-python wrapper supports only a limited set of the original cofings. I have been trying to use the configs of the ComParE challenges.

In general, it seems that one needs to substitute the "old" input/output configs with the newer format (input/output) supported in the opensmile-wrapper

Essentially, this boils down to substituting:

This works fine with the following configs: {IS09_emotion, IS11_speaker_state, IS12_speaker_trait, IS13_ComParE.conf}.

However, when I try it on IS10_paraling, I get opensmile.core.lib.OpenSmileException: Code: 4, Message: specified component does not exist. The only ERR messages in the logfile are:

However, the other configs also sometimes show errors without failing to initialize the smile_api. Is there anything particular I should pay attention to for this config?

hagenw commented 1 month ago

@ureichel @maxschmitt does anybody of you have experience how to adapt configs to work with our Python version of opensmile?

maxschmitt commented 1 month ago

@ATriantafyllopoulos For me, also the IS10_paraling works, when adapting it in exactly the same way as you described for IS09_emotion etc.

ATriantafyllopoulos commented 1 month ago

@maxschmitt thanks for checking! From python I only get the following error message:

Traceback (most recent call last):
  File "/home/trianand/local-work/aibo-retro/export-models/test_smile.py", line 22, in <module>
    smile = opensmile.Smile(
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/audobject/core/decorator.py", line 115, in wrapper
    func(self, *args, **kwargs)
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/audeer/core/utils.py", line 192, in new_func
    return func(*args, **kwargs)
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/opensmile/core/smile.py", line 171, in __init__
    self._feature_names(),
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/opensmile/core/smile.py", line 330, in _feature_names
    num_elements = smile.external_sink_get_num_elements(
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/opensmile/core/lib.py", line 440, in external_sink_get_num_elements
    self._check_smile_result(
  File "/home/trianand/local-work/-ModularAITaskTraining/.devenv/state/venv/lib/python3.10/site-packages/opensmile/core/lib.py", line 545, in _check_smile_result
    raise OpenSmileException(result, message.decode("ascii"))
opensmile.core.lib.OpenSmileException: Code: 4, Message: specified component does not exist

Note that I have opensmile-v2.5.0 and python-v3.10.11. The C++ opensmile appears to be v3.27.4

The ERR messages I get in the original issue only appear in the log

maxschmitt commented 1 month ago

How do you come across version v3.27.4 of openSMILE? I was not aware that a version like this exists (latest official release is 3.0.2).

Anyway, the fact that -sink is not found seems to be the main issue for now. Could it be that there is some conflicting installation of openSMILE? (You are working on Ubuntu, right?)

Could you also send me the modified config file for IS10_paraling to ensure that we are on the same page?

ATriantafyllopoulos commented 1 month ago

You are right about the C++ version, I have v3.0.2-1-g341aea9, the other number came from my shell, which shows versions for stuff, but apparently got it wrong.

But that is for the code which I use to reference my configs (i.e. what I cloned locally), the binary packaged with the python wrapper (v2.5.0) is v3.0.1. However, you are also using the same setup as I am.

Attaching my config: IS10_paraling.zip

maxschmitt commented 1 month ago

Sorry, I meant the modified config file for the feature set, not the package.

ATriantafyllopoulos commented 1 month ago

A misclick, sorry! Here's the correct zip

IS10_paraling.zip

maxschmitt commented 1 month ago

It seems option name is \{\cm[source{?}:include external sink]} again in line 59, but it should be \{\cm[sink{?}:include external sink]}.

After changing that, it is working fine for me.

ATriantafyllopoulos commented 1 month ago

Ah, I'm an idiot. Of course. Sorry, copy-pasting sometimes get you..it works now!