Hi Xavier,

I figured out what the problem was a couple of hours ago. I hadn't called CanConsumeAndProduce() before calling SMSSynthesis and the audio outputs.

It's a bit strange though. Given the names of the methods, one would assume that if these objects couldn't consume and produce output that they'd throw an exception, but it seems that instead the objects continue to consume and produce anyway; they just do so out of sync with one another... (Or so it seems...) What exactly do these CanConsumeAndProduce() methods do?

Best,
Greg


On Jul 2, 2007, at 7:37, Xavier Amatriain wrote:

Greg, another "common" problem when using SMSSynthesis in stream is failing to update the CurrentTimeControl in that class. This is needed to generate the correct phase in the PhaseManagement processing. If you don't update this you will get artifacts.

Greg Kellum wrote:
Hi Xavier and Pau,

There actually shouldn't be any problem with the configuration of SMSSynthesis. I dumped the configuration of the SMSAnalysisCore and SMSSynthesis objects in the SMSTools application to XML files, and I have used these files to resynthesize a WAV from an SDIF file without any problems when I was using Segments. The problem I mentioned just sprung up when I started streaming the SDIF file. But nonetheless, I just tried a couple of alternative hop sizes, but it didn't help. When you look at the resynthesized output in an audio editor, one sees sudden jumps / discontinuities in the audio signal which would imply that a triangular window isn't being applied to the signal, because if it was, the signal would be 0 at the window boundaries. I'm looking at SMSSynthesis though at the moment to get a better idea of what is happening...

...

I just got Pau's mail. The problem you had running the example happened because it couldn't find the configuration file synthesis.xml. Just move that file out of the directory SDIFToWavStreaming into its parent directory, and it will find it, or give the relative path to the file: SDIFToWavStreaming/ synthesis.xml. I did that myself locally, but I forgot to add that moved synthesis.xml file to the SVN repository.

By the way so people in CLAM use tabs, not spaces? I thought it was the other way around...

Best,
Greg



On 6/29/07, *Xavier Amatriain* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Hi Greg,

> I've been having a problem with artifacts though that seem to be > coming from the overlapping of windows. My guess is that either a > triangular window is not being applied to the audio windows before
    > they are being overlapped or that the step-size is not correct.
I am almost sure that your problem is with the hop/size. If you use SMSSynthesis it is very unlikely that the triangular window is not
    applied.
> But even though I've played around with a lot of different parameter
    > values, I can't seem to make the problem go away.  Can someone
    tell me
> where exactly this overlap-adding is supposed to be taking place?
    > Which class is responsible for it?
The OverlapAdd takes place in the SMSSynthesis class lines 260 and
    268:

http://www.clam.iua.upf.edu/doc/CLAM-devel-doxygen/ SMSSynthesis_8cxx-source.html#l00200;

    And the class responsible for it is the OverlapAdd class

http://www.clam.iua.upf.edu/doc/CLAM-devel-doxygen/ classCLAM_1_1OverlapAdd.html

    A rule of thumb: synthesis hopsize and framesize should both be
    equal to
    analysis hopsize. (Synthesis hopsize defines how much the
triangular window advances and framesize is half of the triangular window size. Note that neither of them have anything to do with the
    analysis window size).

    Hope it helps.

    _______________________________________________
    Clam-devel mailing list
    Clam-devel@llistes.projectes.lafarga.org
    <mailto:Clam-devel@llistes.projectes.lafarga.org>
https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/ clam-devel


--------------------------------------------------------------------- ---

_______________________________________________
Clam-devel mailing list
Clam-devel@llistes.projectes.lafarga.org
https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/ clam-devel



_______________________________________________
Clam-devel mailing list
Clam-devel@llistes.projectes.lafarga.org
https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/clam- devel


_______________________________________________
Clam-devel mailing list
Clam-devel@llistes.projectes.lafarga.org
https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/clam-devel

Reply via email to