Re: [PD] monitoring function REC-Play for looper

2018-11-09 Thread Dan Wilcox
This is also covered in section 2.3.3. "hot and cold inlets and right to left 
outlet order" in the manual which is included with Pd under the Help menu. Id' 
suggest reading through the manual as it covers most of the concepts you need 
to get a hang of patching.

> On Nov 9, 2018, at 8:58 AM, pd-list-requ...@lists.iem.at wrote:
> 
> Date: Fri, 9 Nov 2018 08:53:23 +0100
> From: Clemens mailto:reinkl...@online.de>>
> To: pd-list@lists.iem.at <mailto:pd-list@lists.iem.at>
> Subject: Re: [PD] monitoring function REC-Play for looper
> Message-ID:  <mailto:b4d6341d-8151-3d69-5d04-cc273fd02...@online.de>>
> Content-Type: text/plain; charset="utf-8"; Format="flowed"
> 
> Thank you very much for your detailed explanations,
> 
> they were very helpful for my understanding!!
> 
> Cheers Clemens
> 
> 
> Am 08.11.18 um 14:05 schrieb Roman Haefeli:
>> On Thu, 2018-11-08 at 13:23 +0100, Clemens wrote:
>>> But what do you mean with "fan-outs"?
>> A fan-out in Pd usually means that a single outlet is connected to two
>> or more inlets. IOhannes strongly advises you to get rid of them,
>> because the order the many inlets receive the message from the outlet
>> is not defined. This is the single-most frequent source of bugs in Pd
>> patches.


Dan Wilcox
@danomatika <http://twitter.com/danomatika>
danomatika.com <http://danomatika.com/>
robotcowboy.com <http://robotcowboy.com/>



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


Re: [PD] monitoring function REC-Play for looper

2018-11-08 Thread Clemens

Thank you very much for your detailed explanations,

they were very helpful for my understanding!!

Cheers Clemens


Am 08.11.18 um 14:05 schrieb Roman Haefeli:

On Thu, 2018-11-08 at 13:23 +0100, Clemens wrote:

But what do you mean with "fan-outs"?

A fan-out in Pd usually means that a single outlet is connected to two
or more inlets. IOhannes strongly advises you to get rid of them,
because the order the many inlets receive the message from the outlet
is not defined. This is the single-most frequent source of bugs in Pd
patches.



and how can I get rid of them?

Replace any occurrence of a fan-out by an appropriate [trigger] object.

Example:

[bla]
|\
| \
|  \
[y] [x]

should be replaced by:

[bla]
|
[trigger anything anything]
| |
[y]   [x]

(use mono space font for this ASCII-art to make sense)

Roman


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


Re: [PD] monitoring function REC-Play for looper

2018-11-08 Thread Roman Haefeli
On Thu, 2018-11-08 at 13:23 +0100, Clemens wrote:
> But what do you mean with "fan-outs"?

A fan-out in Pd usually means that a single outlet is connected to two
or more inlets. IOhannes strongly advises you to get rid of them,
because the order the many inlets receive the message from the outlet
is not defined. This is the single-most frequent source of bugs in Pd
patches. 


> and how can I get rid of them?

Replace any occurrence of a fan-out by an appropriate [trigger] object.

Example:

[bla]
|\
| \
|  \
[y] [x]

should be replaced by:

[bla] 
|
[trigger anything anything]
| |
[y]   [x]

(use mono space font for this ASCII-art to make sense)

Roman



signature.asc
Description: This is a digitally signed message part
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] monitoring function REC-Play for looper

2018-11-08 Thread Clemens

But what do you mean with "fan-outs"?

and how can I get rid of them?

The toogle is at the end of the line, no data continues through?

Could you send me an example?

Thanks for your support and for your suggestions !!

Cheers

Clemens

Am 07.11.18 um 22:45 schrieb IOhannes m zmölnig:

On 11/7/18 10:09 PM, Clemens wrote:

Hi list,

I found a way to switch on and off the toogle when you push rec or play

(see attached patch)

you still have fan-outs.
you should really get rid of them. *always*.

apart from that, once you click on "play", the two buttons will do the
same. is this what you want?


but if you press rec or play two times ( maybe by accident) the same is
happening

but I want to have a control unit, that the rec toogle is switch on only
when the looper is in rec mode

the same for the play mode


well, you should start thinking about what you actually mean by "record
mode" and "play mode".
e.g. when is the looper in "record mode", when is it not.
how are they mutually exclusive?
i which mode is the system if you press "record" and wait for 100seconds?
in which mode is the system, if you press "record" and 50ms afterwards
press "play"? what is the state after another 5000ms? after another
100seconds?
in which mode is the system, if you press "play" and 50ms afterwards
press "record"? what is the state after another 5000ms? after another
100seconds?
in which mode is the system, if you press "play" and 5000ms afterwards
you press "play" again?


but anyhow: if you send bang-messages to a toggle it will toggle. if you
don't want to toggle it, you have to set it to a fixed value (e.g. by
sending it that value)


i hope this helps.
gfamsdr
IOhannes


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


Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread IOhannes m zmölnig
On 11/7/18 10:09 PM, Clemens wrote:
> Hi list,
> 
> I found a way to switch on and off the toogle when you push rec or play
> 
> (see attached patch)

you still have fan-outs.
you should really get rid of them. *always*.

apart from that, once you click on "play", the two buttons will do the
same. is this what you want?

> 
> but if you press rec or play two times ( maybe by accident) the same is
> happening
> 
> but I want to have a control unit, that the rec toogle is switch on only
> when the looper is in rec mode
> 
> the same for the play mode


well, you should start thinking about what you actually mean by "record
mode" and "play mode".
e.g. when is the looper in "record mode", when is it not.
how are they mutually exclusive?
i which mode is the system if you press "record" and wait for 100seconds?
in which mode is the system, if you press "record" and 50ms afterwards
press "play"? what is the state after another 5000ms? after another
100seconds?
in which mode is the system, if you press "play" and 50ms afterwards
press "record"? what is the state after another 5000ms? after another
100seconds?
in which mode is the system, if you press "play" and 5000ms afterwards
you press "play" again?


but anyhow: if you send bang-messages to a toggle it will toggle. if you
don't want to toggle it, you have to set it to a fixed value (e.g. by
sending it that value)


i hope this helps.
gfamsdr
IOhannes



signature.asc
Description: OpenPGP digital signature
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread Clemens

Hi list,

I found a way to switch on and off the toogle when you push rec or play

(see attached patch)

but if you press rec or play two times ( maybe by accident) the same is 
happening


but I want to have a control unit, that the rec toogle is switch on only 
when the looper is in rec mode


the same for the play mode

any ideas?

any suggestions??

Thanks

cheers

Clemens



Am 07.11.18 um 11:41 schrieb IOhannes m zmoelnig:

On 07.11.18 10:17, Clemens wrote:

Nice,

well, in both #1 and #2, you are doing the very same, regardless of
whether the user pressed "play" or "record".
since both buttons trigger the same actions, it is not surprising that
you get the same result (actually, it would be very disturbing if you
didn't)
#3 correctly turns on the select toggle. so i don't know what is wrong
with that solution (apart from the fan-out)

so exactly what is the problem?


as a side-note, you should get rid of the fan-outs in all of your
attempts and replace them with trigger. always.

asdrm,
IOhannes


___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list
#N canvas 72 263 1031 384 10;
#X obj 211 85 adc~;
#X obj 270 116 bng 15 250 50 0 empty empty record 20 7 1 8 -262144
-1 -1;
#X obj 270 143 bng 15 250 50 0 empty empty play 20 7 1 8 -262144 -1
-1;
#X obj 229 112 vsl 12 48 0 1 0 0 empty empty gain 16 8 1 8 -262144
-1 -1 0 1;
#X obj 200 209 dac~;
#N canvas 96 181 925 431 sampler 0;
#X obj 78 28 sig~;
#X obj 78 52 lop~ 2;
#X obj 63 80 *~;
#X obj 207 6 inlet p;
#X obj 153 6 inlet r;
#X obj 31 6 inlet~;
#X obj 73 278 outlet~;
#X obj 78 6 inlet gain;
#X obj 64 105 tabwrite~ looper001;
#X obj 72 159 tabplay~ looper001;
#X obj 81 131 table looper001 2.646e+06;
#X text 240 132 60 sekunden;
#X obj 410 24 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X floatatom 469 154 0 0 0 0 - - -;
#X obj 469 62 line;
#X msg 469 39 0 \, 60 6;
#X obj 670 24 bng 15 250 50 0 empty empty play 17 7 0 10 -262144 -1
-1;
#X msg 670 111 0;
#X obj 469 129 spigot 1;
#X obj 410 91 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X msg 410 111 1;
#X floatatom 657 147 0 0 0 0 Laufzeit - -;
#X obj 552 353 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 552 249 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 573 246 bang: start;
#X floatatom 657 272 6 0 0 0 - - -, f 6;
#X obj 391 286 line;
#X msg 391 264 0 \, 60 6;
#X floatatom 391 346 5 0 0 0 - - -, f 5;
#X obj 391 319 spigot 1;
#X msg 472 301 0;
#X msg 442 300 1;
#X obj 552 300 delay 6;
#X obj 657 169 * 1000;
#X obj 575 336 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 575 365 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 657 190 + 5;
#X obj 330 144 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 73 251 *~;
#X msg 97 186 1 \, 0 100;
#X obj 113 233 line;
#X msg 113 208 0 \, 1 1000;
#X floatatom 226 298 0 0 0 0 - - -;
#X msg 226 271 60;
#X obj 226 320 -;
#X obj 226 216 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 226 254 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 226 234 metro 10;
#X floatatom 226 344 5 0 0 1 Restzeit - -, f 5;
#X floatatom 197 344 0 0 0 0 Laufzeit - -;
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 2 0 8 0;
#X connect 3 0 9 0;
#X connect 3 0 16 0;
#X connect 4 0 8 0;
#X connect 4 0 12 0;
#X connect 5 0 2 0;
#X connect 7 0 0 0;
#X connect 9 0 38 0;
#X connect 12 0 15 0;
#X connect 12 0 19 0;
#X connect 12 0 39 0;
#X connect 14 0 18 0;
#X connect 15 0 14 0;
#X connect 16 0 17 0;
#X connect 16 0 23 0;
#X connect 16 0 37 0;
#X connect 16 0 41 0;
#X connect 17 0 18 1;
#X connect 18 0 13 0;
#X connect 18 0 21 0;
#X connect 19 0 20 0;
#X connect 20 0 18 1;
#X connect 21 0 33 0;
#X connect 21 0 44 1;
#X connect 21 0 49 0;
#X connect 22 0 30 0;
#X connect 23 0 27 0;
#X connect 23 0 31 0;
#X connect 23 0 32 0;
#X connect 25 0 32 1;
#X connect 26 0 29 0;
#X connect 27 0 26 0;
#X connect 29 0 28 0;
#X connect 30 0 29 1;
#X connect 31 0 29 1;
#X connect 32 0 22 0;
#X connect 32 0 34 0;
#X connect 33 0 36 0;
#X connect 34 0 35 0;
#X connect 34 0 23 0;
#X connect 34 0 37 0;
#X connect 36 0 25 0;
#X connect 37 0 9 0;
#X connect 38 0 6 0;
#X connect 39 0 40 0;
#X connect 40 0 38 1;
#X connect 41 0 40 0;
#X connect 42 0 44 0;
#X connect 43 0 42 0;
#X connect 44 0 48 0;
#X connect 45 0 47 0;
#X connect 46 0 43 0;
#X connect 47 0 46 0;
#X restore 210 172 pd sampler;
#X obj 497 70 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X obj 625 70 bng 15 250 50 0 empty empty play 17 7 0 10 -262144 -1
-1;
#X obj 497 196 tgl 50 0 empty empty R 17 26 0 30 -258113 -257985 -262144
1 1;
#N canvas 0 50 450 250 (subpatch) 0;
#X coords 0 1 100 -1 400 250 1 0 0;
#X restore 389 38 graph;
#X obj 663 196 tgl 50 0 empty empty P 17 26 0 30 -4160 -258113 -262144
0 1;
#X obj 541 155 spigot;
#X msg 593 137 0;
#X msg 625 137 

Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread IOhannes m zmoelnig
On 07.11.18 10:17, Clemens wrote:
> Nice,

well, in both #1 and #2, you are doing the very same, regardless of
whether the user pressed "play" or "record".
since both buttons trigger the same actions, it is not surprising that
you get the same result (actually, it would be very disturbing if you
didn't)
#3 correctly turns on the select toggle. so i don't know what is wrong
with that solution (apart from the fan-out)

so exactly what is the problem?


as a side-note, you should get rid of the fan-outs in all of your
attempts and replace them with trigger. always.

asdrm,
IOhannes



signature.asc
Description: OpenPGP digital signature
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread Clemens

Nice,

thank you for your support!

Am 07.11.18 um 09:50 schrieb IOhannes m zmoelnig:

On 07.11.18 09:39, Clemens wrote:

The attached patch is the original patch.

so show us your attempts in solving the problem.
it's really hard to tell what you did wrong without seeing what you did.

gfamsdr
IOhannes


___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list
#N canvas 73 58 1225 712 10;
#X obj 211 85 adc~;
#X obj 270 116 bng 15 250 50 0 empty empty record 20 7 1 8 -262144
-1 -1;
#X obj 270 143 bng 15 250 50 0 empty empty play 20 7 1 8 -262144 -1
-1;
#X obj 229 112 vsl 12 48 0 1 0 0 empty empty gain 16 8 1 8 -262144
-1 -1 0 1;
#X obj 200 209 dac~;
#N canvas 0 58 1366 710 sampler 0;
#X obj 78 28 sig~;
#X obj 78 52 lop~ 2;
#X obj 63 80 *~;
#X obj 207 6 inlet p;
#X obj 153 6 inlet r;
#X obj 31 6 inlet~;
#X obj 73 278 outlet~;
#X obj 78 6 inlet gain;
#X obj 64 105 tabwrite~ looper001;
#X obj 72 159 tabplay~ looper001;
#X obj 81 131 table looper001 2.646e+06;
#X text 240 132 60 sekunden;
#X obj 410 24 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X floatatom 469 154 0 0 0 0 - - -;
#X obj 469 62 line;
#X msg 469 39 0 \, 60 6;
#X obj 670 24 bng 15 250 50 0 empty empty play 17 7 0 10 -262144 -1
-1;
#X msg 670 111 0;
#X obj 469 129 spigot 1;
#X obj 410 91 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X msg 410 111 1;
#X floatatom 657 147 0 0 0 0 Laufzeit - -;
#X obj 552 353 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 552 249 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 573 246 bang: start;
#X floatatom 657 272 6 0 0 0 - - -, f 6;
#X obj 391 286 line;
#X msg 391 264 0 \, 60 6;
#X floatatom 391 346 5 0 0 0 - - -, f 5;
#X obj 391 319 spigot 1;
#X msg 472 301 0;
#X msg 442 300 1;
#X obj 552 300 delay 6;
#X obj 657 169 * 1000;
#X obj 575 336 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 575 365 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 657 190 + 5;
#X obj 330 144 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 73 251 *~;
#X msg 97 186 1 \, 0 100;
#X obj 113 233 line;
#X msg 113 208 0 \, 1 1000;
#X floatatom 226 298 0 0 0 0 - - -;
#X msg 226 271 60;
#X obj 226 320 -;
#X obj 226 216 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 226 254 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 226 234 metro 10;
#X floatatom 226 344 5 0 0 1 Restzeit - -, f 5;
#X floatatom 197 344 0 0 0 0 Laufzeit - -;
#X obj 1198 272 tgl 30 0 empty empty R 10 15 0 15 -262144 -258113 -258113
0 1;
#X obj 1108 206 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X obj 1184 204 bng 15 250 50 0 empty empty play 17 7 0 10 -262144
-1 -1;
#X obj 1159 272 tgl 30 0 empty empty P 10 15 0 15 -262144 -4160 -4160
0 1;
#X obj 1078 505 f;
#X obj 1126 509 + 1;
#X obj 1078 456 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X obj 1078 574 mod 2;
#X floatatom 1078 624 5 0 0 0 - - -, f 5;
#X obj 1078 649 tgl 30 0 empty empty R 10 15 0 15 -262144 -258113 -258113
0 1;
#X obj 918 500 f;
#X obj 954 502 + 1;
#X obj 918 451 bng 15 250 50 0 empty empty play 17 7 0 10 -262144 -1
-1;
#X obj 918 548 mod 2;
#X floatatom 918 631 5 0 0 0 - - -, f 5;
#X obj 933 603 sel 1;
#X obj 1192 358 tgl 50 0 empty empty empty 17 7 0 10 -258113 -1 -1
0 1;
#X obj 978 567 sel 0;
#X floatatom 978 590 5 0 0 0 - - -, f 5;
#X msg 837 463 0;
#X obj 918 656 tgl 30 0 empty empty P 10 15 0 15 -262144 -4160 -4160
0 1;
#X msg 1106 483 bang;
#X obj 1091 597 sel 0;
#X obj 867 103 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 867 124 f;
#X floatatom 867 219 5 0 0 0 - - -, f 5;
#X floatatom 910 124 5 0 0 0 - - -, f 5;
#X obj 867 80 inlet;
#X text 862 49 Counter;
#X obj 866 289 outlet;
#X obj 866 270 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 970 85 bng 15 250 50 0 empty empty record 17 7 0 10 -262144
-1 -1;
#X obj 811 80 bng 15 250 50 0 empty empty play 17 7 0 10 -262144 -1
-1;
#X obj 817 325 tgl 50 0 empty empty empty 17 7 0 10 -4160 -1 -1 0 1
;
#X obj 936 291 outlet;
#X obj 936 272 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 887 327 tgl 50 0 empty empty empty 17 7 0 10 -258113 -1 -1 0
1;
#X obj 936 250 sel 1;
#X obj 866 248 sel 2;
#X obj 801 156 + 1;
#X obj 867 187 mod 3;
#N canvas 0 50 450 250 (subpatch) 0;
#X coords 0 1 100 -1 250 400 1 0 0;
#X restore 787 23 graph;
#X text 791 27 1.);
#X text 831 443 reset;
#N canvas 0 50 450 250 (subpatch) 0;
#X coords 0 1 100 -1 400 250 1 0 0;
#X restore 792 441 graph;
#X text 797 442 2.);
#N canvas 0 50 450 250 (subpatch) 0;
#X coords 0 1 100 -1 250 250 1 0 0;
#X restore 1047 173 graph;
#X text 1055 174 3.);
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 2 0 8 0;
#X connect 3 0 9 0;
#X connect 3 0 16 0;
#X connect 4 0 8 0;
#X connect 4 0 12 0;
#X connect 5 0 2 0;
#X connect 7 0 0 0;
#X 

Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread IOhannes m zmoelnig
On 07.11.18 09:39, Clemens wrote:
> The attached patch is the original patch.

so show us your attempts in solving the problem.
it's really hard to tell what you did wrong without seeing what you did.

gfamsdr
IOhannes



signature.asc
Description: OpenPGP digital signature
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread Clemens

The attached patch is the original patch.

Am 07.11.18 um 09:34 schrieb IOhannes m zmoelnig:

On 07.11.18 09:21, Clemens wrote:

I want to have a monitoring function to see if the looper is in record
mode or in play mode

and if the the looper is switched on or not.

The patch has got two bangs, one for rec and one for play and what ever
I tried, either both toogles are switched on or not any.

i don't see any toggles in your patch.

gasdmr
IOhannes


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


Re: [PD] monitoring function REC-Play for looper

2018-11-07 Thread IOhannes m zmoelnig
On 07.11.18 09:21, Clemens wrote:
> I want to have a monitoring function to see if the looper is in record
> mode or in play mode
> 
> and if the the looper is switched on or not.
> 
> The patch has got two bangs, one for rec and one for play and what ever
> I tried, either both toogles are switched on or not any.

i don't see any toggles in your patch.

gasdmr
IOhannes



signature.asc
Description: OpenPGP digital signature
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list