Re: [PD] tunetof scl2pd.py

2012-03-12 Thread Billy Stiltner
I changed
 pow( 2, (midinnote/notesperequivalenceinterval) )
to
pow( equivalenceinterval,  (midinnote/notesperequivalenceinterval) )

looks like it was changed in the newer version

its pretty cool to be able to change the base frequency on the fly.
I have some audiorate interpolated lookups into my old frequency tuning
tables in my patch
that is used for modulation values. I'm still using them in conjunction
with  tuntof.
so update of the basefrequency takes as long to write the tun table as well
as to write out  all the frequencies to another table. would be nice to
make tunetof as a tunetof~
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] tunetof scl2pd.py

2012-03-12 Thread Billy Stiltner
Actually the error I was getting in scl2pd.py was caused by a newline after
the last entry in the scl  file. I just checked my corrections to tuntof.pd
and it works correctly with non octave repeating scales. Word on the
Xenharmonic scene says octave is called equivalence interval.
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] tunetof scl2pd.py

2012-03-12 Thread Frank Barknecht
Hi,

On Sun, Mar 11, 2012 at 07:11:27AM -0400, Billy Stiltner wrote:
> No errors with sending the command to shell.
> 
> I did get some errors though with a few runs of it in a terminal here is an
> example.
> 
> ValueError: could not convert string to float:
> bj@bj-HP-Pavilion-dv5-
> Notebook-PC:~/Desktop/tunetof$ python scl2pd.py stiltnerphihr16.scl
> Traceback (most recent call last):
>   File "scl2pd.py", line 69, in 
> tab = convert_scala(file)
>   File "scl2pd.py", line 58, in convert_scala
> tab.append(ratio2float(l))
>   File "scl2pd.py", line 21, in ratio2float
> return float(r[0]) / float(r[1])
> ValueError: could not convert string to float:

This looks as if there's something strange in stiltnerphihr16.scl, where
stiltnerphihr16.scl probably contains a ratio. Make sure, the ratios don't have
any spaces, i.e. "2/3" is fine, "3 / 4" is not.

> also in tunetof.pd there was an error with nonoctave tunings
> here is a correction 

I think, you this is based on an outdated version of tunetof, the latest one
(though already 3 years old) doesn't have expr in it anymore. You can get it
here:
http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/abstractions/footils/tunetof/

I don't remember anymore if the latest version deals correctly with non-octave
tunings, it may not. What exactly did you change here?

Ciao
-- 
 Frank BarknechtDo You RjDj.me?  _ __footils.org__

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] tunetof scl2pd.py

2012-03-11 Thread Billy Stiltner
No errors with sending the command to shell.

I did get some errors though with a few runs of it in a terminal here is an
example.

ValueError: could not convert string to float:
bj@bj-HP-Pavilion-dv5-
Notebook-PC:~/Desktop/tunetof$ python scl2pd.py stiltnerphihr16.scl
Traceback (most recent call last):
  File "scl2pd.py", line 69, in 
tab = convert_scala(file)
  File "scl2pd.py", line 58, in convert_scala
tab.append(ratio2float(l))
  File "scl2pd.py", line 21, in ratio2float
return float(r[0]) / float(r[1])
ValueError: could not convert string to float:


also in tunetof.pd there was an error with nonoctave tunings
here is a correction #N canvas 478 73 737 667 10;
#X obj 526 362 table \$0-tuning;
#X obj 102 214 t a a;
#X obj 102 172 inlet;
#X obj 102 551 outlet;
#X obj 102 504 * 1;
#X obj 261 136 inlet;
#X obj 526 333 s \$0-tuning;
#X obj 447 155 inlet;
#X obj 102 403 tabread \$0-tuning;
#X obj 447 194 route symbol;
#X msg 556 306 const 0;
#X msg 447 237 read \$1;
#X obj 319 182 inlet;
#X obj 526 274 list prepend 0;
#X obj 526 228 t a b;
#X text 293 162 notes per octave;
#X text 234 116 base frequency;
#X obj 238 463 * \$1;
#X obj 281 373 div \$2;
#X obj 102 379 mod \$2;
#N canvas 0 0 450 300 length 0;
#X obj 126 70 inlet;
#X obj 161 209 + 1;
#X obj 72 183 b;
#X obj 116 249 f;
#X obj 116 276 outlet;
#X obj 148 183 1;
#X obj 132 211 f 1;
#X obj 206 213 0;
#X obj 126 104 t a b b;
#X text 37 37 list-len: calculate length of a list.;
#N canvas 0 0 533 407 drip 0;
#X obj 64 206 list split 1;
#X obj 64 123 until;
#X obj 64 181 list append;
#X obj 194 206 bang;
#X text 146 90 First store list \, then start the loop;
#X text 163 118 "until" bangs its output until told to stop by a "bang"
to its right inlet.;
#X text 182 160 Store the remaining list.;
#X text 239 205 third outlet of "split" tells us to stop.;
#X obj 64 243 outlet;
#X obj 64 57 inlet;
#X text 237 44 From list-help.pd;
#X obj 143 243 outlet;
#X obj 64 86 t b a;
#X connect 0 0 8 0;
#X connect 0 1 2 1;
#X connect 0 2 3 0;
#X connect 0 2 11 0;
#X connect 1 0 2 0;
#X connect 2 0 0 0;
#X connect 3 0 1 1;
#X connect 9 0 12 0;
#X connect 12 0 1 0;
#X connect 12 1 2 1;
#X restore 72 152 pd drip;
#X connect 0 0 8 0;
#X connect 1 0 6 1;
#X connect 2 0 6 0;
#X connect 3 0 4 0;
#X connect 5 0 6 1;
#X connect 6 0 1 0;
#X connect 6 0 3 1;
#X connect 7 0 3 1;
#X connect 8 0 10 0;
#X connect 8 1 5 0;
#X connect 8 2 7 0;
#X connect 10 0 2 0;
#X connect 10 1 3 0;
#X restore 414 302 pd length;
#X obj 414 324 - 1;
#X obj 521 510 symbol \$3;
#X obj 521 488 loadbang;
#X obj 521 539 select 0;
#X msg 572 567 read \$1;
#X obj 572 591 s \$0-tuning;
#X text 37 18 Arguments (all are optional):;
#X text 112 43 1) base frequency;
#X text 113 62 2) notes in octave;
#X text 112 81 3) filename of tuning table;
#X text 410 130 filename or float list to set tuning table;
#X text 482 464 Init tuning table from file \$3;
#X floatatom 414 343 5 0 0 0 - - -;
#X floatatom 281 430 5 0 0 0 - - -;
#X floatatom 238 482 5 0 0 0 - - -;
#X floatatom 325 382 5 0 0 0 - - -;
#X floatatom 105 423 5 0 0 0 - - -;
#X floatatom 107 526 7 0 0 0 - - -;
#X obj 398 459;
#X obj 414 361 tabread \$0-tuning;
#X obj 281 408 expr pow($f2 \, $f1);
#X connect 1 0 19 0;
#X connect 1 1 18 0;
#X connect 2 0 1 0;
#X connect 4 0 3 0;
#X connect 4 0 38 0;
#X connect 5 0 17 1;
#X connect 7 0 9 0;
#X connect 8 0 4 0;
#X connect 8 0 37 0;
#X connect 9 0 11 0;
#X connect 9 1 14 0;
#X connect 10 0 6 0;
#X connect 11 0 6 0;
#X connect 12 0 18 1;
#X connect 12 0 19 1;
#X connect 13 0 6 0;
#X connect 14 0 13 0;
#X connect 14 0 20 0;
#X connect 14 1 10 0;
#X connect 17 0 4 1;
#X connect 17 0 35 0;
#X connect 18 0 36 0;
#X connect 18 0 41 0;
#X connect 19 0 8 0;
#X connect 20 0 21 0;
#X connect 21 0 18 1;
#X connect 21 0 19 1;
#X connect 21 0 33 0;
#X connect 22 0 24 0;
#X connect 23 0 22 0;
#X connect 24 1 25 0;
#X connect 25 0 26 0;
#X connect 33 0 40 0;
#X connect 40 0 41 1;
#X connect 41 0 17 0;
#X connect 41 0 34 0;
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] tunetof scl2pd.py

2012-03-09 Thread Frank Barknecht
On Thu, Mar 08, 2012 at 01:10:34AM -0500, Billy Stiltner wrote:
>  what is the best way to run scl2pd.py from within pd? i forgot where shell
> is located.  i want an open file dialog then pass the file name to
> scl2pd.py. i probably ought to just rewrite in a languagei understand
> like java and have the ratios sent to a table through udp that way I can
> have a cool scala browser that displays info about the scale before
> selecting it to be used since there are over 4000 of them

You could use the [shell] external to quickly run the script, or rewrite it 
to be a Lua external, which shouldn't be hard. 

But scl2pd.py is intended to be run from the command line. With it, you can
convert all the scales that are part of the Scala software with a single
command:

 scl2pd.py *.scl

After that, you get one file ending in ".scl.tab" for every scale and don't 
need to run
scl2pd.py again.

Ciao
-- 
 Frank BarknechtDo You RjDj.me?  _ __footils.org__

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


[PD] tunetof scl2pd.py

2012-03-07 Thread Billy Stiltner
 what is the best way to run scl2pd.py from within pd? i forgot where shell
is located.  i want an open file dialog then pass the file name to
scl2pd.py. i probably ought to just rewrite in a languagei understand
like java and have the ratios sent to a table through udp that way I can
have a cool scala browser that displays info about the scale before
selecting it to be used since there are over 4000 of them
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list