[Clam-devel] Re: asking for advice about a callgrind session (sms harmonizer)

Xavier Amatriain xavier at create.ucsb.edu
Tue Aug 7 01:05:04 PDT 2007


I think the important questions to answer in order to find the bug:

(1) Does it happen also with a simple pitch shift? The harmonizer is 
little more than a bunch of
pitch shifts put together, if the pitch shift does not fail on the same 
file you have limited the possibilities a lot!

(2) Does it happen also in non-network mode. Unfortunately the best way 
would be through smstools, I'll try
to see if it works in my machines.

Another thing you can do, especially if you suspect or find out the 
pitch shift works, is to take a look at the peak
array after the harmonizer. The artifact sounds a lot like a peak that 
has been added in the wrong place. This could
be  a bug, for instance, in the PeakAdder (or 
SpectralPeakArray::operator +), I think I already fixed something like this
in the past but you know bugs have a life of their own.  :-)

Hernán Ordiales wrote:
> On 8/4/07, Xavier Amatriain <xavier at create.ucsb.edu> wrote:
>   
>> Hernán Ordiales wrote:
>>     
>>> hi! I'm testing both with elvis demo voice at SMSTools and with mic input voice
>>>
>>> There are audible demos here: http://audiores.uint8.com.ar/blog/?p=124
>>>
>>>       
>> Sorry, I had not seen the demos in the post.
>>     
>
> Maybe because I've added online streaming for those and that only
> works from my blog, not from planet ( but links should be there from
> first, next time I'l try to be more explicit :-) ... well in fact I
> already changed it)
>
>   
>> Ok, this is for me a known problem meaning that I have experienced this
>> exact problem before. Unfortunately
>> this is all I remember now and I will have to dig in my memory. This is
>> definitely not related with performance
>> issues, it is a bug somewhere in the process. Again, it reminds me of
>> something I thought I fixed long time ago
>> but will have to check the logs (maybe something related with outputting
>> non-valid fundamental frequency
>> values would create a similar artifact...).
>>     
>
> I hope you can remember it :-)
> meanwhile i'll take that as a good clue... and i'll try to find
> something in the logs
>
>   
>> Do you have the same result
>> when you do a Harmonizer, or a PitchShift
>> in SMSTools.
>>     
>
> I'm still have to test it in SMSTools... it was very buggy to me and
> always crashing so because that, most of time I only read its code...
> :-)
>
> now, for example when i try to harmonize a sound, crashes again...
>
> btw: i was renaming some classes as i arranged with parumi because
> some conflicts between smstools and NE implementations, anyway, to
> avoid any conflict with that, i also tested with 1.1 version
>
> when i try to 'apply' a harmonizer transformation, i get:
>
> ##########################################################
> ################### ASSERTION FAILED #####################
> ##########################################################
> At file scons/libs/core/include/CLAM/Processing.hxx line 392
> Configuring a Processing with a configuration not being the proper type.
>
>  Backtrace:
>
> [0] /home/hordia/dev/local/clam_v110clean/lib/libclam_core.so.1(_ZN4CLAM13DumpBacktraceERSo+0x2c)
> [0xb75e3f9a]
> [1] /home/hordia/dev/local/clam_v110clean/lib/libclam_core.so.1 [0xb75e420d]
> [2] /home/hordia/dev/local/clam_v110clean/lib/libclam_core.so.1(_ZN4CLAM18ErrAssertionFailedC1EPKcS2_i+0x5f)
> [0xb75e3ebd]
> [3] /home/hordia/dev/local/clam_v110clean/lib/libclam_processing.so.1(_ZNK4CLAM10Processing20CopyAsConcreteConfigINS_25FrameTransformationConfigEEEvRT_RKNS_16ProcessingConfigE+0x6e)
> [0xb71c1f78]
> [4] /home/hordia/dev/local/clam_v110clean/lib/libclam_processing.so.1(_ZN4CLAM13SMSHarmonizer17ConcreteConfigureERKNS_16ProcessingConfigE+0x2f)
> [0xb71cd407]
> [5] /home/hordia/dev/local/clam_v110clean/lib/libclam_core.so.1(_ZN4CLAM10Processing9ConfigureERKNS_16ProcessingConfigE+0xed)
> [0xb7604b7d]
> [6] ./SMSTools [0x81cce80]
> [7] /home/hordia/dev/local/clam_v110clean/lib/libclam_core.so.1(_ZN4CLAM10Processing9ConfigureERKNS_16ProcessingConfigE+0xed)
> [0xb7604b7d]
> [8] ./SMSTools [0x81a02c7]
> [9] ./SMSTools [0x81a0413]
> [10] ./SMSTools [0x819ebec]
> [11] ./SMSTools [0x8199688]
> [12] ./SMSTools [0x81ef73a]
> [13] ./SMSTools [0x82020f2]
> [14] /usr/lib/libqt-mt.so.3(_ZN7QObject15activate_signalEP15QConnectionListP8QUObject+0x12f)
> [0xb7a3388b]
> [15] /usr/lib/libqt-mt.so.3(_ZN7QObject15activate_signalEi+0x162) [0xb7a34330]
> [16] /usr/lib/libqt-mt.so.3(_ZN7QAction9activatedEv+0x2e) [0xb7de8014]
> [17] /usr/lib/libqt-mt.so.3(_ZN7QAction18internalActivationEv+0x56) [0xb7b9db28]
> [18] /usr/lib/libqt-mt.so.3(_ZN7QAction9qt_invokeEiP8QUObject+0x14c)
> [0xb7de7d7a]
> [19] /usr/lib/libqt-mt.so.3(_ZN7QObject15activate_signalEP15QConnectionListP8QUObject+0x12f)
> [0xb7a3388b]
> [20] /usr/lib/libqt-mt.so.3(_ZN7QSignal6signalERK8QVariant+0xae) [0xb7dbfae0]
> [21] /usr/lib/libqt-mt.so.3(_ZN7QSignal8activateEv+0x86) [0xb7a5381e]
> [22] /usr/lib/libqt-mt.so.3(_ZN10QPopupMenu17mouseReleaseEventEP11QMouseEvent+0x509)
> [0xb7b59f1b]
> [23] /usr/lib/libqt-mt.so.3(_ZN7QWidget5eventEP6QEvent+0xf3) [0xb7a6a65d]
> [24] /usr/lib/libqt-mt.so.3(_ZN12QApplication14internalNotifyEP7QObjectP6QEvent+0x274)
> [0xb79caa60]
> [25] /usr/lib/libqt-mt.so.3(_ZN12QApplication6notifyEP7QObjectP6QEvent+0x578)
> [0xb79ccc1e]
> [26] /usr/lib/libqt-mt.so.3(_ZN12QApplication20sendSpontaneousEventEP7QObjectP6QEvent+0x5b)
> [0xb795d25d]
> [27] /usr/lib/libqt-mt.so.3(_ZN9QETWidget19translateMouseEventEPK7_XEvent+0xefb)
> [0xb795bb9f]
> [28] /usr/lib/libqt-mt.so.3(_ZN12QApplication15x11ProcessEventEP7_XEvent+0xbfc)
> [0xb7959fac]
> [29] /usr/lib/libqt-mt.so.3(_ZN10QEventLoop13processEventsEj+0x108) [0xb7971180]
> [30] /usr/lib/libqt-mt.so.3(_ZN10QEventLoop9enterLoopEv+0x70) [0xb79e5136]
> [31] /usr/lib/libqt-mt.so.3(_ZN10QEventLoop4execEv+0x32) [0xb79e4f46]
> [32] /usr/lib/libqt-mt.so.3(_ZN12QApplication4execEv+0x25) [0xb79cc609]
> [33] ./SMSTools [0x81f0822]
> [34] /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc) [0xb6b8debc]
> [35] ./SMSTools(_ZN7QDialog9qt_invokeEiP8QUObject+0x6d) [0x80d8da1]
> terminate called after throwing an instance of 'CLAM::ErrAssertionFailed'
>   what():  Configuring a Processing with a configuration not being the
> proper type.
> ./run_smstools.sh: line 3: 28440 Cancelado               (core dumped)
> ./SMSTools
>
>
> so, i could not compare them until now...
>
> any of you have SMSTools working with harmonizer or morph?
>
>   
>>> Analysis and Synthesis configurations are default ones...
>>>
>>> I've also tried with CLAM_OPTIMIZATION=1 but sound quaility turns very poor...
>>>
>>>       
>> That is very strange, I am using this flag on a daily basis with no
>> problems... on OSX though. We should put this
>> on the list of todos. Even if sound quality is very poor... how about
>> performance. Does the performance gain
>> seem to be good enough that this might deserve some investigation?
>>     
>
> i'll re-test it and provide audio examples and a better report about
> this (i didn't take care of performance, only about artifacts)
>
> thanks!
>   





More information about the clam-devel mailing list