[CLAM] There may be a bug in "audio.cxx"

Xavier Amatriain xavier at create.ucsb.edu
Wed Jul 19 21:27:46 PDT 2006

Hi again Needis,

> That makes me hard to rebuild CLAM on windows, and the released 
> Windows version always crash in my laptop.
If you give us more information on the problems we might be able to 
help. The Windows version should be pretty stable so if it crashes the 
issue should be
"easy" to fix. Could you run it from the console and paste the message 
you get on the crash?

Also note that although most applications require of many  external 
libraries you can in fact use most of the framework without any library. 
I am, for instance, now
working on a project that uses CLAM without any external library.
> So I am now going to implement HNM in C code step by step, and 
> reference on CLAM. I have readed your thesis and know that you have 
> implemented a matlab prototype. If that matlab prototype can be 
> released out, it will be excellent even in matlab's ".p" type.
The matlab version you mention is pretty simple. It was released with 
the DAFX book (which I recommend because, apart from the code, has a 
good explanation). You
can actually download all the Matlab code for the book here 
http://www2.hsu-hh.de/ant/dafx2002/DAFX_Book_Page/matlab.html . We have 
tracked a couple of books
and I have a fixed version for our code somewhere. If you start getting 
into it I can send it to you.

In any case, this implementation is, again, very simple and I would 
recommend you use CLAM as a reference.

>     Now let's back to the shadiness code.
> 1.
> In "SpectrualAnalysis.cxx", line 136,
> in.GetAudioChunk(0,in.GetSize()-1 ,mAudioFrame,true );
> If the endIndex is non-inclusive, the why in.GetSize()-1? Is that 
> because the windows length is odd and throw the last sample?
Yes! That is the reason. We want to impose odd symmetry to the window 
but the last sample should not be used.
> 2.
> In the papers of Xavier et al ( there are two Xavier, opps ), the 
> window length is pitch-synchronized, but CLAM code seems not do that.
Very good point indeed! Having a pitch-synchronous window is very 
interesting indeed and in the list of todos for CLAM. Unfortunately doing
this is not immediate and requires of "smart" flow control strategies as 
the size of reading regions will then vary on run-time. This is all possible
and the only reason it is not implemented is lack of time... maybe you 
want to take on the challenge!
> 3.
> I want to do Voice Conversion. Could anyone help me to generate some 
> Analysis -> Transform -> Synthesis example output?
> "Elvis.wav" is too special. Two of my samples are in the following URL.
> http://neediss.googlepages.com/female.wav
> http://neediss.googlepages.com/aboutit.wav
What kind of transformations are you talking about? Any transformation?
> 4.
> Does anyone has console version of SMS? How can I get it?
You can build it yourself from the source. But if you are having 
problems with the libraries and also with the binary... we might try to 
build a
Windows version for you but I would be inclined to trying to fix 
whatever problems there are with the GUI version which is far more complete.
> 5.
> Congratulation on the win of ACM MM06 Open Souce Award.


More information about the clam-users mailing list