Parisson / TimeSide

scalable audio processing framework and server written in Python
https://timeside.ircam.fr/docs/
GNU Affero General Public License v3.0
372 stars 59 forks source link

parent and child analyzers both using yaafe #60

Closed DavidDoukhan closed 10 years ago

DavidDoukhan commented 10 years ago

Hi, I have troubles with the new management of yaafe in timeside. I consider 2 analyzers: LimsiSad and LimsiDiarization Both of these analyzers behaved correctly with the former realeases of timeside.

LimsiDiarization requires the output of LimsiSad (speech activity detection) Both of these analyzers use Yaafe, that may be configured with different feature extraction parameters (features, window sizes)

When I use LimsiSad alone, everything works fine. Using LimsiDiarization leads to the following problem: a = timeside.analyzer.limsi_diarization.LimsiDiarization() (d|a).run()

with error message: Traceback (most recent call last): File "diarisationdemo.py", line 10, in (d|a).run() File "/vol/homedir/doukhan/progsources/TimeSide/timeside/core.py", line 457, in run item.post_process() File "/vol/homedir/doukhan/progsources/TimeSide/timeside/analyzer/limsi_sad.py", line 195, in post_process mfcc = yaafe_result['yaafe.mfcc']['data_object']['value'] KeyError: 'yaafe.mfcc'

It seems the configuration of yaafe in limsidiarisation, overload the configuration done in limsisad... Any advice?

DavidDoukhan commented 10 years ago

you can have a look to the new diarisation code here: https://github.com/DavidDoukhan/TimeSide/blob/diadems/timeside/analyzer/limsi_diarization.py

thomasfillon commented 10 years ago

Hi David ! Thank you very much

I've just find the same issue this afternoon. It comes from the fact that there is now a way to prevent duplicated processors in the pipe. Duplicates are recognized as processors sharing the same Class and the same parameters. Unfortunately I've not update the Yaafe analyzer to include Parameters yet.

I will fix this as soon as possible.

thomasfillon commented 10 years ago

fixed by 3c34361fdfe4f0398330c4d

The changes have been applied to limsi_sad and, in the diadems branch, to limsi_diarization