• ahmetkizilay

    Hello,
    I have been trying to solve this problem for a couple of days by now. I am pretty sure that this is a simple pointer arithmetics error on my part, but still, this is driving me crazy and I hope you don't mind asking me this question here.

    I am writing a simple external which adds all the inlet signals. I expect to allow any number of inlets, so I am using the dsp_addv method. Here, for debugging purposes I am only using two inlets. When I access the inlets like in the example above everything works as expected.

    t_int *ak_addthese_tilde_perform(t_int *w) {
        int i, j;  
       t_ak_addthese_tilde *x = (t_ak_addthese_tilde *)(w[1]);  
       int n = (int)(w[2]);  
       t_sample * in1 = (t_sample *)(w[3]);  
       t_sample * in2 = (t_sample *)(w[4]);  
       t_sample * out = (t_sample *)(w[5]); 
    
       while(n--) { 
         *out++ = *in1++ + *in2++; 
       } 
    
       return (w + 6); 
    }
    

    When I access all input signals with an array of pointers, I cannot hear the rightmost signal in the output. So in this code above I only hear the signal from the first inlet. Like so,

    t_int *ak_addthese_tilde_perform(t_int *w) {
      int i, j;
      t_ak_addthese_tilde *x = (t_ak_addthese_tilde *)(w[1]);
      t_int n = (t_int)(w[2]);
    
      t_sample ** ins = getbytes(sizeof(t_sample *) * 2);
      t_sample * out = (t_sample *)(w[5]);
    
      for(i = 0; i < 2; i++) {
        ins[i] = (t_sample *)(w[3 + i]);
      }
    
      while(n--) {
        *out = 0.0;
        for(j = 0; j < 2; j++) {
    
          *out += *ins[j]++;
        }
        out++;
      }
    
      return (w + 6);
    }
    I would be grateful if you could point out where I am mistaken.
    Best[/i]

    posted in extra~ read more
  • ahmetkizilay

    I installed 0.43 vanilla from the source to check out the GUI functionalities. but I cannot get those functionalities I see on these screenshots.
    http://puredata.info/dev/PdGuiRewriteScreenshots/?searchterm=object%20category%20plugin

    I guess i should enable some GUI plugins before I could use them, but i could not figure out how..

    Any help on which file to modify etc. is greatly appreciated..

    thanks

    posted in technical issues read more
  • ahmetkizilay

    hello,

    this is a newbie question. is there such a method?
    an object that would give me the equivalent of [expr 1 - $f1]

    best

    posted in technical issues read more
  • ahmetkizilay

    hello,
    I created an external and it works fine. now I would like to call this object with a different name, such as "<><>".
    I changed the first argument in class_new method to gensym("<><>") but it did not work.
    I did not change anything else from the compilation steps, meaning I still create my old "myext.pd_linux" file and i copy it under extras.
    are there any restrictions against using operators like this in external files?
    any suggestions? thanks a lot.
    ahmet

    posted in technical issues read more
  • ahmetkizilay

    Hello,
    I am using ubuntu 10.10 with jack and I have the latest stable release of pd-extended (0.42.5). I am using M-Audio Fast Track Pro with 48000 sampling rate and I have set up the same sampling rate on pd.
    My problem is that when I accidentally blow up my patch, for example, by accidentally increasing the final amplitude number box to values like +10, the output begin to sound distorted. I test the sound with the Audio Tester patch and the simple osc tone sound distorted.
    I checked my sound levels, frame buffer rates, buffer size, turned on/off dsp, anything I could think of, but I still face the same error. I only get back to normal after I reconnect to jack.

    Anyone else encountered the same problem? Any help is greatly appreciated.

    Best,

    posted in technical issues read more
  • ahmetkizilay

    I asked this question on the pd-list and IOhannes gave an answer that worked.
    He explained that since signals can share memory, the code might overwrite the data in the last inlet.
    So changing the code like shown below solved the problem.

    t_sample temp;
    while(n--) {
       temp = 0;
       for(j = 0; j < 2; i++) {
           temp += *ins[j]++;
       }
       *out++ = temp;
    }
    

    Best

    posted in extra~ read more
  • ahmetkizilay

    as i figured it out, i just needed to find the corresponding tcl file for the plugin. and add its path to the pd.

    posted in technical issues read more
  • ahmetkizilay

    [wrap~] is useful especially when you need to offset your signal by certain amount. for example, suppose you want to play two instances of the same sound sample on top of each other with a little offset. (think it's gonna rain). then you can use something like this

    [phasor~]
    |\
    | \
    | \
    | \
    | [+~ 0.1]
    | |
    | [wrap~]
    |
    .....
    .....
    | |
    [tabread4~] [tabread4~]

    and both instances will play at the same speed but at different locations.

    check out the attached file...

    hope this helps...

    http://www.pdpatchrepo.info/hurleur/gonna_rain.pd

    posted in technical issues read more
  • ahmetkizilay

    clicks are to be expected if you use a phasor to modulate amplitude. (Clicks happen when phasor jumps from 1 to 0)
    Replace it with osc for example, and you won't hear any clicks.
    I hope this helps...

    posted in technical issues read more

Internal error.

Oops! Looks like something went wrong!