[PD] plot - 1000 element limit?

2020-07-22 Thread Derek Kwan
Hello list,

Long time, no e-mail.

It seems there's a limit in [plot] to only plot the first 1000 elements
of a struct's array (at least for me on Ubuntu 18.04, pd 0.51)? I was
wondering if there was a practical and/or performance-related reason to
that limit (and also if said limit could be raised).

I might have a weird use case, but I've been building a video player with
16-parameter biometric data associated with each frame so I've been
using arrays in [struct]s to store the data and [plot] to plot it all
out with a cursor drawn with [drawpolygon] to track the position in the
data with the current video position. I've been working with up to
10-12ish minute long videos so that's arrays of about length 11000 with
16 elements per entry each and so I've been breaking the data up into
1000-element to get around that 1000 element limitation.

On my 5-ish year old laptop and loading up the data from a text file and
plotting everything and togglinng and untoggling plotting certain
parameters, the performance isn't so bad, definitely usable (just end
up with a horizontally lng canvas that you have to navigate with a
fair bit of scrolling).
-- 
Derek Kwan
www.derekxkwan.com



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


Re: [PD] type size of a commentary

2018-09-21 Thread Derek Kwan
Clemens  writes:

> Hello list,
>
> is there a way to add some words to the surface of a patch like adding
> a commentary,
>
> but with a lager type size?
>
> Just for clarity reasons.
>
> Cheers
>
> Clemens

Check out [comment] in the Cyclone library.

Derek

-- 
Derek Kwan
www.derekxkwan.com



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


Re: [PD] Escaping/not resolving dollar argts in msgs/objects?

2018-05-21 Thread Derek Kwan
Ingo Stock <m...@ingostock.de> writes:

> On 05/20/2018 02:12 PM, Derek Kwan wrote:
>> As a side note, I don't really particular about this situation right now
>> and don't have a use case as of yet, but it looks like both the $$
>> approach and the tosymbol approach don't work with trying to insert
>> literal "$0, $1, $2" and so on in [text]s the "patching" sort of way via
>> [text insert]? You can enter those literals just fine via the popup Pd
>> text window and those will save just fine, but both the $$ and tosymbol
>> methods via [text insert] yield input that looks to be their escaped
>> \$0, \$1 versions within the popup Pd text window and then when you try
>> to save the contents of that window they get resolved (so $0 goes to 0
>> and $1 yields \\$1: argument number out of range warnings).
>
> Yes, the escape mechanism seems to be a bit quirky at times. For
> example, in the attached patch create-arrays5.pd, the array names are
> being created the way described above in the thread and put into a
> [text] object, where they occur escaped. The contents of the [text] can
> be saved with the patch. If you create the arrays from the [text] after
> writing to it, the arrays are created fine. But if you reload the patch,
> $0 is escaped in the array objects, although the contents of [text] look
> exactly the same. Maybe a bug, maybe some quirk.
>
> Anyhow, there is a solution for writing $0 into [text] and easily
> generate objects from there that is robust against saving the [text]
> contents with the patch, using [text fromlist], which is demonstrated in
> the attached patch create-arrays7.pd. :)
>
> best wishes, ingo
>
>
>
> ___
> Pd-list@lists.iem.at mailing list
> UNSUBSCRIBE and account-management -> 
> https://lists.puredata.info/listinfo/pd-list


ah, well that answers that hah. thx!

and yeah, i suppose its' a bit quirky given that at least functionally
texts are collections of lists but I suppose these sorts of things fall
more into the "not officially supported" category than not...

derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Data structures - delete specific scalar?

2018-05-20 Thread Derek Kwan
Roman Haefeli <reduz...@gmail.com> writes:

> Hey all
>
> Following up a thread from 2011:
> https://lists.puredata.info/pipermail/pd-list/2011-04/088306.html
>
> I would like to know whether it is impossible to delete a specific
> scalar, by pointer. If so, why is that? Does it use a design that makes
> it difficult to allow this? To my untrained eye there is no apparent
> reason why it is possible by editing the GUI graphically/manually, but
> not per message.
>
> Roman
> ___
> Pd-list@lists.iem.at mailing list
> UNSUBSCRIBE and account-management -> 
> https://lists.puredata.info/listinfo/pd-list

If I'm not mistaken, this relates to a thread I started in Jan 2017 and
I think this bit from Christof Ressi might prove releavant to these
discussions so hopefully this link could help with the current discussion:

https://lists.puredata.info/pipermail/pd-list/2017-01/117295.html

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Escaping/not resolving dollar argts in msgs/objects?

2018-05-20 Thread Derek Kwan
Ingo Stock <m...@ingostock.de> writes:

> Now this works without error messages, combining some of the approaches
> in this thread.
>
> ingo
>
>
> On 05/15/2018 03:47 PM, Ingo Stock wrote:
>> But it works by creating the message with set and changing messages!
>> 
>> [set obj 30 30 array define, adddollsym $2-$3( --> [( does the trick.
>> 
>> See also attached working demo.
>> 
>> 
>> On 05/15/2018 03:26 PM, Roman Haefeli wrote:
>>> On Tue, 2018-05-15 at 14:09 +0200, Christof Ressi wrote:
>>>>> [obj 20 20 array define $$1-snd0]
>>>>
>>>> this only works as long as you don't save and reopen the patch, where
>>>> "$$1" will become "$\$1" (which is resolved to "$\\$1" instead of
>>>> "\\$1").
>>>
>>> I see. Thanks for pointing it out.
>>>
>>> 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
>
> ___
> Pd-list@lists.iem.at mailing list
> UNSUBSCRIBE and account-management -> 
> https://lists.puredata.info/listinfo/pd-list

Thanks all, sorry for the delayed response, got tied up with a looming
deadline during the week... Good solutions to try out with the $$ and
the [list tosymbol] options.

Yep, essentially what I wanted to do is was create a bunch of array
defines with $0 in them and not care about saving the dynamic patching
machinery used to create them. I suppose it wasn't super necessary in my
use case, but just keeping up my usual practice of prepending everything
with $0-, I suppose I tend to be on the extra paranoid side of wanting
to keep everything patch unique. A use case I could definitely see
myself doing at some point is something that I would want to open
multiple instances of that involve large sample banks, like say a live
looping patch with 50 10 second recordable loops or even just a sound
launcher/processor patch have can draw from 100s of different loaded up
sounds. In those cases, again I wouldn't care so much about saving the
machinery used to make all those [array defines], but doing all of those
by hand would definitely be a pain and they would all need $0-s in their
names to avoid collisions when multiple instances are open...

As a side note, I don't really particular about this situation right now
and don't have a use case as of yet, but it looks like both the $$
approach and the tosymbol approach don't work with trying to insert
literal "$0, $1, $2" and so on in [text]s the "patching" sort of way via
[text insert]? You can enter those literals just fine via the popup Pd
text window and those will save just fine, but both the $$ and tosymbol
methods via [text insert] yield input that looks to be their escaped
\$0, \$1 versions within the popup Pd text window and then when you try
to save the contents of that window they get resolved (so $0 goes to 0
and $1 yields \\$1: argument number out of range warnings).

Again, don't particularly care that much about finding a solution to
this other issue at the moment, but figured I bring it up as a possible
branch of further discussion since the topic is open at the moment
anyways...

Thanks again for the help on the dynamically creating [array defines]
with literal $0s.

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


[PD] Escaping/not resolving dollar argts in msgs/objects?

2018-05-15 Thread Derek Kwan

Hello list,

Perhaps a bit of a long shot and pretty much the exact opposite of the $0
in messages conversations as of late: Is there a way to NOT resolve
dollar arguments in messages and/or objects?

Example case: Lately for a project I've wanted to create vast swaths of
[array define]s and I've done so with dynamic patching. Since I want
their bound symbols to be something like "$0-snd0", "$0-snd1"
$0"-snd2"... "$0-snd50", I DON'T want dollar arguments (particularly the
$0) to resolve to anything. Similarly, I store filepath + array symbol
pairs in texts to do a big load at the beginning and for right now and
can always add the $0-bit via passing that symbol through a
[makefilename], but I'm wondering if I can pass $0s unresolved into a
text without having to manually type it in via the popup window.

Of course I can always edit the patch in emacs/vim and do a
search/replace, but I'm looking for an in-Pd solutions... Also for the
array business I suppose I could do that via [clone], but that situation
doesn't seem ideal either...

Thanks!

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


[PD] GEM: text bounding boxes?

2018-05-04 Thread Derek Kwan

Hello list,

Is there a way to get the bounding boxes for [text2d/3d] objects in GEM?
Essentially what I want to do is have centered lines of text on a screen
and highlight words one at a time (so 2 text objects displaying the same
text, one for the highlighted words, one not, justified left and
centered manually).

It looks like [text2d/3d] have second outlets that output lists "bbox 0
0 0 0 0 0" (which I'm assuming means bounding box) but these bbox lists
for me only ever output 0s. This is from a build from the source on
github done within a week or so ago but maybe this could also be
something in the build not going right on my machine if nobody else is
having these issues...

Thx

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] suggestion: $0 in messages

2018-04-02 Thread Derek Kwan

> 
> like mostly, i'm opposing.  this has been discussed about 15 years
> ago, and my arguments still stand (mainly: consistency with
> dollar-parsing throughout Pd)

> Yes, but there is no consistency either now. So the question would be:
> is the current inconsistency a productive one (do people benefit from
> having a 0 there), or would people benefit more from having an
> inconsistency that provides them with a new useful feature?


I can see the argument (no pun intended, haha) here where $1 $2 (and $0
included) mean very different things in non-messages (patch arguments
where $0 is the internal/default argument) vs messages and having $0
resolve in messages as it would in objects could be quite confusing
as we're mixing two worlds (and then users would perhaps expect $1 $2
and so on to resolve similarly but they don't). So the matter of
consistency would be in message world and non-message world where $0
is just simply out of range in message world (as $100 would be if your
incoming list doesn't have 100 atoms).

Note that this opens the can of worms of not only message boxes but also
things like [text] where $0 behaves as it does in messages boxes.

>
> For me, I can't count how many times I had to add a [$0], or a pack or
> some extra workaround before a message so that I could send messages
> to my variables (I hardly use variables without a $0).
>
> Joao

I do face this too where I use $0 with all my [v]s and [s]s and [r]s and
it does get to be a bit tedious BUT I'm not quite sure if mixing the two
worlds and their rules are worth it...

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Discussing, exchanging pd-generated music

2018-03-26 Thread Derek Kwan
jlistshit <jlists...@kliklak.net> writes:

> OT question: What other list might exist to discuss/exchange etc
> mostly the music that people produce with PD, rather than the
> technical details? Open to all styles here, though with a focus on
> generative, electro-acoustic, composition, not very IDM interested.
>

Hopefully not super-offtopic from the offtopic, but here's my experience
with finding Pd-generated work in vaguely social media/forumy oriented
platforms:

Although not the most loved social networking platform in recent times,
there's an active Facebook group where people occasionally post things
they've made with Pd, including music, and I've posted new tunes
there...  I'd say a majority of the posts are technical help oriented,
but it seems to be one of the better bets for finding Pd-generated work.

The Pd Patch Repo forum has an "output~" section for Pd-generated work
but seems to be significantly less frequented.

There's a subreddit /r/puredata on Reddit that somewhat rarely has
Pd-generated works posted, most of the posts tend to be of the techincal
help variety, but the non-help posts are there...

I post things on SoundCloud and BandCamp I know many others do too with
the #puredata hashtag. Although not really forums, those are decent
resources to find Pd-related tunes.

Every now and then I look up the #puredata hashtag on various other
social networking platforms such as Instagram and Twitter and follow
other Pd users on there. Also not quite traditionally forum-y, but I've
found those platforms as good resources to see what other folks are
doing with Pd out there. I've been looking to branch out to other more
decentralized, open-source platforms like Mastodon and I think I found
posts with the #puredata hashtag on the art instance, but it didn't seem
all that active... at least when I checked.

These are the examples I can come up with off the top of my head
half-asleep at weird hours of the night. Interested to see where this
topic goes and what ideas/observations arise from it.. It's always nice
to find out what other folks are making with Pd...

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] bigger inlet/outlet size in 0.48.1 ...

2018-03-15 Thread Derek Kwan
Derek Kwan <derek.x.k...@gmail.com> writes:

> oliver <oli...@klingt.org> writes:
>
>> even if "uniform rendering across systems" is definitely a worthy goal,
>> are the bigger inlets really unavoidable ?
>>
>> no chance to at least hack a personal version of a tcl file to make
>> them thin again ?
>>
>> i for one like the slimmer inlets way better.
>
> I suppose I'm in the minority in the proceedings of this
> thread,... but I actually like the thick inlets/outlets =) I've never
> had the best eyesight (as evidenced by my ever-growing thickness of
> glasses lenses over my lifetime) so I like things big and
> high-contrasty (if anything, I could use another pixel-width thickness =P).
>
> I suppose to due my differing opinion, I would +1 the option to change
> inlet/outlet thicknesses, perhaps via TCL or .pdsettings.
>
> Derek

Sorry for the double posting in quick succession, but I've just noticed
that although these objects have the thicker inlets/outlets:

objects
number boxes
symbol boxes
message boxes


The following have the original THINNER inlets/outlets (perhaps due to
them being more "fullblown GUI elements")
:
number2 boxes
radios
sliders
bangs
toggles
VU meters

To sum up, everything in the first subdivision of the "Put" menu
(besides comments which don't have inlets/outlets) have the thicker
inlets/outlets, everything in the second subdivision has the smaller
ones. Which is a bit inconsistent. Personally, I have a really hard time
seeing those inlets/outlets in that second list, but from this thread,
there are differing opinions to be had on the subject.

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] bigger inlet/outlet size in 0.48.1 ...

2018-03-15 Thread Derek Kwan
oliver <oli...@klingt.org> writes:

> even if "uniform rendering across systems" is definitely a worthy goal,
> are the bigger inlets really unavoidable ?
>
> no chance to at least hack a personal version of a tcl file to make
> them thin again ?
>
> i for one like the slimmer inlets way better.

I suppose I'm in the minority in the proceedings of this
thread,... but I actually like the thick inlets/outlets =) I've never
had the best eyesight (as evidenced by my ever-growing thickness of
glasses lenses over my lifetime) so I like things big and
high-contrasty (if anything, I could use another pixel-width thickness =P).

I suppose to due my differing opinion, I would +1 the option to change
inlet/outlet thicknesses, perhaps via TCL or .pdsettings.

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] puredata parameters into HTML5

2018-03-07 Thread Derek Kwan
Hello,

I would have Pd talk to whatever's hosting your webpage using OSC.

I wrote a piece a few years ago that had SuperCollider (but I later ported
it to Pd) talking to a webpage I hosted on my computer via node.js via OSC
(I think I used the 'node-osc' library in
particular). So Pd talks to node via OSC and then node calls js functions
in your webpage's js files.

Then I targeted individual clients who connected to my page via soc ket.io
so I could pick out invidiual cell phones to trigger sounds on (but this
bit isn't necessary for the Pd -> webpage communication...)

I have the boilerplate from that piece abstracted out here:
https://github.com/derekxkwan/socketMusicBoiler . Haven't looked at that
repo basically since 2015 so not sure of the quality of the documentation...

Derek
-- 

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


Re: [PD] [PD-announce] Cyclone 0.3 beta 3 released!

2018-02-24 Thread Derek Kwan

> but we're facing technical difficulties uploading to deken :/ - a
> report was done at https://github.com/pure-data/deken/issues/178

everything should be up on deken now, thanks to iohannes for helping me
out with my deken issues.

derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] resizing object in abstraction+subpatch 0.48.1 weirdness - anybody else?

2018-01-24 Thread Derek Kwan
> It's not just you, as it's already been reported:
>
> #1306 subpatch object width moves to last created object in subpatch
> https://sourceforge.net/p/pure-data/bugs/1306/


Ah, thanks! Good to know...

Derek

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


[PD] resizing object in abstraction+subpatch 0.48.1 weirdness - anybody else?

2018-01-21 Thread Derek Kwan

Hello list,

Might be something going weird with my setup but wanted to check with
the list just in case this could be happening to anybody else...

I've been making abstractions and putting subpatches in abstractions and
then resizing the subpatch as it appears in the abstraction (meaning the
[pd subpatch] box) to make it wider and then saving the abstraction. I
can't point to any consistent behavior, but at times when I reopen the
abstraction after saving I'm seeing the [pd subpatch] object at its
normal width and something in the subpatch possibly taking on the
resized width that I wanted for the [pd subpatch] object (even message boxes).

Anybody else notice something like this or something similar?

Using Pd 0.48.1 and Linux (Ubuntu 16.04.3 LTS) and haven't built from
source since its release so maybe something has changed in the past
week or so...

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] extra folder should have search priority over externals

2018-01-12 Thread Derek Kwan
IOhannes m zmölnig <zmoel...@iem.at> writes:

> On 01/12/2018 03:11 AM, Alexandre Torres Porres wrote:
>> this could be fixed if extra had priority in the search, which I think it'd
>> be common sense, as Pd Vanilla objects actually do have priorities over
>> externals in general.
>
> no. definitely not.
> it's "common sense" to allow the user to override vanilla objects.


I would agree with IOhannes here about the ability to override vanilla
objects.

Say for some reason somebody really likes cyclone's hilbert~ and wants
to basically ignore the existence of vanilla's hilbert~ so they add
cyclone to their path and every time they type in [hilbert~] they want
the cyclone one. Under Alex's rules, they keep ending up with vanilla's
hilbert and they have no idea why and no good way to get around it,
short of deleting vanilla's hilbert~, which I'd argue would be the more
destructive and less optimal choice. I think the user should have the power
to do what they want. I've at least gotten frustrated using software that
overly restricts the user in terms of what they think is safe and proper
use case.

Object/method overloading is something not unique to Pd and you always
have to think carefully before dumping everything into the main
namespace. I don't like typing out extra long wordy names when I don't
have to and typing out [cyclone/frameacucm~] would be a pain to do each
and every time, but maybe there's a more subtle solution to this. I'm
fond of being able to alias imported modules in other languages like the
Python numpy example I brought up earlier like "import numpy as np", but
again it prob require a complete overhaul of object loading and break
everything... I suppose in the meantime we could rename folders or do
symbolic links to folders like "ln -s cyclone/ cyc" or something but we
can't expect the end user to do that...  But I suppose you and I Alex
has the same ideas in mind? Half the point of adding paths is to not
have to type out the library name each and every time...

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] declare vs. namespaces - current best practice

2018-01-06 Thread Derek Kwan

>> And to come back to my first remark here on this thread, if
>> [declare] cannot always force a priority, shouldn't it?
>
> I don't think so. [declare]'s job is to add paths to the search path
> and load libraries. it has nothing to do with namespacing.
>
> imagine you want to use both [foo/obj] and [bar/obj] in the same
> abstraction. how could you possibly force on or the other with
> declare?
>

Well, I suppose one way of forcing the use of cyclone's gate without
typing out the entire thing and dealing with this whole namespacing
thing is to basically use the -noprefs flag when launching pd (and
assuming the people you are distributing the patch to have Pd somewhere
in their path which might be a big if, you can send along a shell script
that launches pd with that flag for them) and using [declare] to control
what gets loaded and what paths are added (which actually might be
tricky depending on platform/how their system is set up). And of course
not loading the prefs file affects more than just paths/loading...

So maybe now that I type it out this isn't such a simple idea to
implement haha, but maybe it could be helpful for some use cases...

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] declare vs. namespaces - current best practice

2018-01-03 Thread Derek Kwan
"Christof Ressi" <christof.re...@gmx.at> writes:

>> and usually involves sort of prefixing or suffixing for every
>> abstraction/external. 
>
> I've also done this in the past. 
> namespacing by prepending the folder name has one advantage, though:
> it provides you the possibility to choose between the long (safe) and
> short (unsafe) name. short names are convenient in rapid prototyping
> while long names are preferable if things ought to be robust.
>
> but after all, it's a matter of taste I guess.
>

Interesting. I suppose this makes me think about more robust and defined
examples of namespacing. Taking python for instance where you can import
modules with shorter names with something like "import numpy as np" so
you can just type "np.array" instead of "numpy.array" each time or you
have the option to dump everything into the  global namespace which is
similar to the situation we have currently of just importing the path or
compiled library wholesale through "from numpy import *".

I'd imagine that implementing a system like this in Pd would be very^999 far
from trivial to implement, cause more confusion to the general end-user
than it's worth it just because users like me don't want to type
[cyclone/*] out every time (and there is already enough confusion about
not being able to instantiate anything in Gem/zexy/cyclone/etc.  even though
they've already installed them onto their computers), and probably break
everything which would be a huge no-no. but it is
interesting to think about =P.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] declare vs. namespaces - current best practice

2018-01-03 Thread Derek Kwan
João Pais <jmmmp...@gmail.com> writes:

> Dear list,
>
> I'm trying to make my abstraction library vanilla-compatible, but
> nevertheless I need to use some externals. Since I didn't keep up with
> the vanilla progress the last years, I wanted to ask what is the best
> method to make sure that all externals are loaded:
> - use [declare ]?
> - use namespaces such as [list-abs/list1]?

To jump into this discussion, I used to be a huge believer in doing the
[library/object] thing and I still try to do it with libraries that
aren't of my own creation because yes, there can be name collions and
it's good to take steps to try to avoid it.

On the other hand, it is a lot of typing so when I can afford not to
(usually with my own abstraction/external libraries and with my own
personal patchese I don't necessarily intend on having other people
use), I just forego that whole thing and either do a [declare] or just
import the paths in my preferences.

One strategy I try to follow with my own libraries and a strategy I have
seen others follow is to try to make the names as unique as possible
(which isn't as good as the [library/object] strategy but perhaps good
enough) and usually involves sort of prefixing or suffixing for every
abstraction/external. In my case, I usually just prefix dk to everything
so my bitcrushing abstraction becomes [dkbitcrush~]. Or I've sort of put
all my list abstractiosn in their own little library so I prefix
everything with pdkl- (pd + dk + l for list) so my mapping abstraction
is called [pdkl-map].

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [text define] functionality for text in structs?

2017-03-28 Thread Derek Kwan
Miller Puckette <m...@ucsd.edu> writes:

> There ought to be a way to do this - some other object than [text define]
> should be able to do 'read' and 'write' operations.  Perhaps this needs
> to be added to the [pointer] object somehow.  (For a long time I've wished
> for a better suite of objects to traverse data structures but can't find
> a good design :)
>
> Miller

I suppose since we're on the topic, it appears that [array] faces a
similar situation to [text].

Actually I haven't had a whole lot of issues with traversing data
structures yet, but that's probably because I haven't dealt with
gigantic lists of scalars yet. I made an abstraction to get the nth
scalar that basically jumps to the head and uses [until] to bang [next(
until it reaches the desired index, but that method probably becomes
less-than-ideal as the number of scalars increases. I haven't dug around
the source for structs much yet, but would perhaps having structs act
more like doubly-linked-lists rather than singly-linked be
possible/worthwhile? I suppose maybe the ultimate ideal situation would be to
be accessible by index, at least from a front-facing user perspective.

From my perusings of the pd-list archives, I know this definitely has been 
brought
up before, but probably one of the more clunkier things about dealing with data
structures is not being able to delete individual scalars.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [text define] functionality for text in structs?

2017-03-26 Thread Derek Kwan
Miller Puckette <m...@ucsd.edu> writes:

> Not sure if this really works yet but...
>
> You should be able to use [text tolist] and [text fromlist] to copy the
> entire contents of a text inside a scalar (struct) into a [text define] -
> and from there to/from a file.
>
> cheers
> Miller

Hello,

Correct, this works. I was just hoping for the ability to use these methods
"directly" on a text struct member without these extra steps or
overhead, but perhaps the text being a member of a struct makes things
a little bit more complicated... I could see an abstraction using a
"proxy" [text] instance and automating the [text fromlist/tolist] steps
helping out the situation though. Thanks!

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


[PD] [text define] functionality for text in structs?

2017-03-26 Thread Derek Kwan

Hey list,

Is there a way to get and/or simulate the functionality of [text define]
for texts in structs (ie [struct mystruct float x text t])? It seems
like you can't send pointers into [text define] and you can't use the -s
flag in [text define] (not that it'd make much sense since the text is
already there in the scalar), but I'm missing the reading/writing to
files and editing via popup window (which would be handier with larger
chunks of text). I've investigated alternatives using a proxy [text
define] and then [text fromlist] from it into a [text tolist] for the
scalar's text (which looks to be the best solution for now) and I
suppose it's also possible to add lines one by one (or in series in
one message with comma delimiters) or edit the .pd file directly.


I've been working with randomly choosing from groups of lists in stages
(say, choosing randomly from lists in group 1 in one stage, then group
2, etc.) and have been doing it with just working from one big [text]
instance but it looks like perhaps using structs with text members
(as in the mystruct example above) would be more suited for that sort
of thing with each scalar being a stage.


-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Laptop + interface suggestion

2017-03-23 Thread Derek Kwan
João Pais <jmmmp...@gmail.com> writes:

>
> I would be looking for a similar setup:
> - a robust laptop where to run w10. The less weight the better, even
> if it sacrifices some performance.

I'm a Linux user, but I've been using a Dell XPS 15 9550. The form
factor is nice, it's relatively thin and light. I'd say my biggest
complaint about it is that it's not the quietest laptop, particularly in
terms of coil whine. Mine isn't so bad, but in a quiet room I can hear
electronic whinings and chattering which are normally sounds I like but
only when I make them haha. I'm okay with my laptop, but I'd definitely
consider other brands in the future, those Lenovo Thinkpads look
appealing, although a bit pricier. My model has an NVidia card but I
think you can get them with just the integrated graphics as well,
particularly the 13 inch 9350 (now 9360) models. I think the Thinkpad X
series is comparable in form factor to mine? And I was looking at the T
series as well when I bought this about a year and a half ago by now. 

> - which audio interfaces are used nowadays, compared with the
> multiface? E.g. with at least 8 analog outlets (I don't need that many
> inlets), and also a digital outlet. Also the less weight and size the
> better - a half-case size such as the multiface is quite convenient.
> - the computer will be used for day-to-day activities: office,
> notation (sibelius/finale), and Pd audio programming. No games or too
> taxing environments, so some features such as a high-power graphics
> card or the latest ssd disk should be necessary.

I have an RME Fireface UCX. Half-rack size like you want. It does KINDA
have 8 analog outs, 7/8 are combined as a stereo out. 8 ins, 2 of which
are XLR combo jacks. It's been really solid for me. No TotalMix on Linux
and there are issues with all of that but you're on Windows so that
should be of no worry to you =). Sturdy as heck and reliable. I think it
has firewire but nowadays computers don't seem to come with those and
I've just been using the USB (2.0 I think) and even then you can get
pretty low latencies (and it's class compliant too!). I think there's a
new model of the Motu Ultralite these days that is also worth considering
(I vaguely remember Alex Porres posting something about it on Fb awhile
ago so he might want to chime in haha).

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Open source + musical composition?

2017-02-27 Thread Derek Kwan
On Feb 25, Alexandre Torres Porres wrote:
> I think open source people are more hacky and DIY and are less tied up,
> which has an impact on the result...

I do suppose that esp stuff like Pd vanilla with its small core
encourages more investment in the tools, but at least for me, it's
difficult to pin down stylistically what users of open-source tools such
as Pd and SC tend to produce. Not to denigrate four-on-the floor, I
think a lot of interesting things can be done around that, but I've
heard quite a lot of generic four-on-the-floory kinda stuff made in both
SC and Pd but then again you also have like Philippe Manoury stuff and
sonifications all sorts of less in-the-box stuff being made in Pd. And I
suppose Max is sort of the oddball out in terms of commercial music
composition tools, but it seems like there's quite a bit of a "maker"
scene around Max as well. Going through school (and I suppose it depends
on where you go to school), a lot more things revolved around Max more
than anything else: multimedia projects, any piece not mine I performed
or saw performed, (well, I used to use Max a lot for my stuff I suppose
too, but that was a long while ago =P).  

Outside of Pd and SC, there are stuff like DAWs and trackers that are
open-source like Ardour and LMMS and the Hydrogen drum machine which can
although be used for things that are less "tied up", but also lend
themselves easily toward more conventional music due to the griddiness
that I mentioned in my last e-mail and you can find a lot of examples of
this online.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Open source + musical composition?

2017-02-24 Thread Derek Kwan
> Hi everyone,
> 
> 
> I would love to know if anyone feels like there is a direct
> relationship between the music they make with Pd and the fact that
> Pd is open source. Do you compose music differently than you would
> with a purchased software package? Are your sonic standards higher /
> lower / unchanged? Are you more / less musically adventurous (what
> ever that might mean to you)? Are you more / less likely to use sounds
> from other users?

I suppose I pretty much exclusively work with open source tools so my
perspective is a bit skewed (I also went through school studying music so
this adds an additional bias), but I think paradigm and interface has much
much more to do with compositional style than software being open source
or not: DAWs and trackers emphasizing the metrical grid, while Pd and SC
being more freeform and sandboxy, SC having its extensive list of patterns
and tempo clocks (although I've been lately kinda doing this sort of thing
with in Pd with sequenced lists), Pd with its graphical dataflow interface,
perhaps emphasizing musical experiences that involve more pre-coded
modules hooked together and tweaked live via sliders and buttons (I
actually haven't thought about this much, forgive me, lol).

I suppose that perhaps there are folks who are comfortable with solely
using commercial products and folks who want to use open-source as much
as possible (and people in the middle) and definitely in the popular
music fields commercial products dominate. I'd say that open-source
programming-oriented music environments have been more historically
associated with academic institutions and thus "western art music" for
lack of better terms (although I'm not really fond of that term), but
there are folks leaning more on the "popular" side of things (not fond
of that term either...) that do use Pd. However, I'd also say Pd's
closest cousin Max/MSP has also been pretty historically tied to academic
institions and the genres associated with such as well, although there are
again folks who use Max/MSP for more "popular"-influenced music such as
Autechre. Also, I suspect that these conceptions are changing,
especially as the emergence of "creative coding" brings the expressivity
of computer-technology-powered art to more and more people.

I suppose since open-source software tends to be more community-driven
than there could be  more of a proclivity to share code and sounds and so
forth, but Max/MSP code also gets shared a lot and in terms of sampled
sounds, well,  sampling has been a thing for a long time... In my own
experience, study of Pd's source has allowed me to learn and develop my
own tools, but I wouldn't say that this necessarily leads to any sort of
style of music. I'd say that perhaps with commercial products, you would
expect more-polished and thorough documentation, but this isn't always
the case. I'm not sure if I answered your questions at all...

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Cross-platform uniform GUI rendering of patches.

2017-02-23 Thread Derek Kwan
> maybe makes sense to show a normal weight version of the patch for
> comparison...
> 
> quite less poluted if you ask me, and it's not like I cannot read the patch
> as well for not being bold too...

> >> I don't really have a strong point, at the same time I also do not
> >> think that one is much worse than the other.
> >>

I think the comments look better with the regular font but I think it's
fine to have the objects as bold. Esp with diff weights of fonts, it's
easier to pick out the objects at a quick glance. I think that could be
particularly helpful since Pd vanilla (at least without any tcl plugins)
doesn't distinguish objects from the rest of the other things on the
canvas with different colors or fills.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Proper method of package removal from pd.info/Deken server?

2017-02-22 Thread Derek Kwan
On Feb 22, zmoel...@iem.at wrote:
> 
> a) this *is* the proper way to remove things. (there just seems to be a
> bug in the deken-server that it didn't update the search-results)

Looks like it's gone now as hoped.

> b) i'm totally unconvinced that you should remove packages at all (apart
> from packages that you only uploaded in order to test deken).
> i think it is a disservice to your users to remove old versions of
> packages (even if they are outdated/buggy/...)

I am a bit wary of having millions of version of say, Cyclone, up on
Deken, especially alpha versions, but I suppose that can be remedied by
a more conservative approach to releasing/versioning so there SHOULDN'T
be millions of alphas in the first place, which I suppose would be a
sane approach to developing anyways. Anyways, I was just testing out
Deken so I wanted it to go. I'll put it back up eventually once I do stuff
like actual documentation...

> go to folder view ("contents"), select the files you want to move (via
> the checkboxes), click on the [Cut] button; navigate to the target
> folder and click the [Paste] button.
> if you only want to move a single file, the menu will offer a [cut] (and
> [paste]) option in the "Actions" dropdown.
> 
> 

Thanks, managed to move Cyclone into proper subfolders and downloading
from Deken still works.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


[PD] Proper method of package removal from pd.info/Deken server?

2017-02-22 Thread Derek Kwan
Hello,

I was wondering if there's a proper way of removing/deleting packages
from the puredata.info/Deken server. I uploaded our latest v0.3alpha1
Cyclone release using an older version of Deken from the Xenial repos,
which apparently didn't upload using the directory structure of the
newer Deken tool that creates subdirectories for library names and
versions. I confirmed this by uploading a little test consisting of list
abstractions I've been working on but hadn't really been planning on
"officially releasing" yet using the newer Deken copied from the GitHub
repo. After my little test, I deleted my test package via the
puredata.info web interface but a day later it still appears in the Pd
Deken library search tool, just with a dead link since it's no longer on
the server (it was called pdklist). Since that doesn't seem like a proper
way of removing libraries from Deken since whatever process Deken uses to
know what libraries are on the server hasn't noticed the change, is there a
proper way of doing this? 

Eventually, I do plan on removing the cyclone builds from Deken and
reuploading using the newer Deken tool. I couldn't find a way of moving
alread uploaded files into folders via the pd.info web interface but
perhaps that's a discussion for another time (but would also be a
solution for my eventual goal). Thanks!

Derek
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [coll] bug

2017-02-01 Thread Derek Kwan
> Lots of thoughts here, but little time. Here are the salient points to me:
> 
> 1. The best analogy to this in Pd is [soundfiler]. [soundfiler] stops the
> world in order to load the file, which routinely causes dropouts. This is a
> constant source of disappointment and frustration to students especially if
> they're coming from Max. But the point here is that [soundfiler] is a
> control object, and Pd guarantees deterministic behavior for control
> objects.

Hello,

After a few days away from it and coming back to discuss the issue, I
think threaded as the default makes sense GRANTED that it is well
documented and there's an included explanation of why this differs from
normal Pd usage. I wouldn't want users new to Pd expect all of Pd to
work the way [coll] does as a default then getting confused as to why it
isn't (also it looks like I accidentally left a post() in there from
debugging but that's a different matter).

I would even post something to the Pd window if the object is threaded
or not. I could seriously imagine if I had more patches depending on
[coll] and determinism and if I were in a crunch, going absolutely crazy
and frustrated as to why my patch broke. If the patch broke becaue of
order, that can be quite subtle and if i'm familiar with an object, my
instincts wouldn't say "hey let's go to the help file", esp if it's a
wall of text. I know Max doesn't tell you in the Max window if it's
threaded but this is Pd land here. So I would strongly side with well,
first getting rid of my stupid debugging post that shouldn't be there,
and putting in a post that says we're using threaded.

More on this, I think should be clear documentation outside of running
Pd, maybe even in the main README, even if it's a short blurb expanded
upon somewhere else, how this library in general differs from normal Pd
land.

Anyways, the decision is a bit easier with large text files that would
cause dropouts. Unthreaded would be unlikely to be used when you have live
audio going on because of the dropouts unless you're making the dropouts
part of your piece which I suppose could be pretty interesting but not a
likely use case. 

The issue is with the rest of the cases and I'm a little more torn
there. The fix is pretty clear although a pain in the butt. If your read
is in the middle of a trigger, then anything to the left of it depending
on the read happening first would get all kablunked. Then the fix would
be to have that read bang coming out from [coll] be in charge of
triggering that kablunked stuff in the proper order and this could be a
lot of rewiring... I suppose since we're going wtih a most Max-like
experience as possible, it would be confusing if one object wasn't as
Max-like as the others. Anyways, that's my two cents for now.

Derek

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


Re: [PD] [coll] bug

2017-01-29 Thread Derek Kwan
On Jan 29, Alexandre Torres Porres wrote:
> yeah, derek was talking about our current development, where we screwed up
> with the order of bangs in the unthreaded - but fixed now.
> 
> Derek, would you care to elaborate why you think unthreaded should be the
> default?
> 

I had some concerns with pthreads and Windows compat but it looks like
those aren't issues (? I don't have much experience with Windows dev) so
I think I would be fine either way.

> And is this threaded stuff only for multi threaded processors? How does
> this work on a single core rasbperry pi or something like that?
> 

It looks like threading works fine on single core, at least according to
my perusing Stack Overflow, it's just that running threads will be
paused for other threads.
(source: 
http://stackoverflow.com/questions/12997628/creating-threads-on-a-single-core-processor
 ).  So maybe something similar to unthreaded? And even then, only the Model 
As, first model Bs, 1st compute, and zero are single-core, all the rest are 
quad core. 

One issue that might be of concern is backwards compat with old versions
of Cyclone. Otherwise I'm fine with threaded as the default.

Derek




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


Re: [PD] [coll] bug

2017-01-29 Thread Derek Kwan
> 
> coll_bind, where msg is the thing returned by collcommon_doread:
> 
> if(msg->m_line > 0) clock_delay(x->x_clock);
> 
> but that may have been the thing that screwed up the correct order of
> things. In any case, I'll have to look at it more...

(apologies in advance for polluting the list with cyclone-dev stuff
but for those following along)

Oh, nm, it was something collcommon_doread and I fixed the unthreaded
order =) 

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


Re: [PD] [coll] bug

2017-01-29 Thread Derek Kwan
> But anyway, I also wonder if the threaded version shouldn't be the default
> behaviour of cyclone's coll, because we always have the bang output to rely
> on and tell us when it is done anyway. The whole purpose of its existence
> and design choice seems to be that anyway... it only makes sense if it is
> undetermined...
> 
> so I'm thinking that if one wants the pd related behaviour that you should
> add it as a flag, say "threaded 0"
> 

I don't think it should be threaded by default either. I think it came
up earlier on the list that Windows machines were having issues with
coll's threading? I remember reading somewhere that pthreads was unix
only and there's a separate Windows way of doing threading, which isn't
in coll quite yet. 

I did add back the bang out the 3rd inlet on instantiation when a file
argt is loaded. There was a clock x->x_clock that was only instantiated
in the threaded version that I needed to use because the methods that load
the file arg coll_bind -> collcommon_doread return before coll_new returns
so the object exist yet so there's no outlet to bang to (at least that's
what I think was going on...). I did this by adding a check in
coll_bind, where msg is the thing returned by collcommon_doread:

if(msg->m_line > 0) clock_delay(x->x_clock);

but that may have been the thing that screwed up the correct order of
things. In any case, I'll have to look at it more...

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Request - Deleting struct instances, progress?

2017-01-03 Thread Derek Kwan
Thanks! Didn't think about simulating motion and deleting the GUI way

And thanks about [scalar]. Seems like it might be a good way of doing
multidim arrays.

> yeah, "vis 1" and "vis 0" is necessary if the window is not visible. Forget 
> to mention that. Thanks!
>  

And it needs to be in edit mode, correct? So editmode 1 after vis 1,
editmode 0 before vis 0. Doesn't seem to work otherwise...

> regarding the drawing instruction, don't all scalars have the x y 
> coordinates, even if they're not defined in the template? in that case, the 
> scalars without a drawing should be automatically at the coordinates 0 0 - 
> which can be dangerous in case you use your scalars just to store (and not 
> display) data, because all of them will be positioned at 0 0.

if you're not using them to display, there's no drawing commands so it
wouldn't do anything anyways. If there is a draw command, then it looks
like you can't specify any particular element since they're all being
drawn on 0 0 and deleting at 0 0 deletes the head of the list since it's
at the top. So not particularly dangerous,... but not particularly
directable either =)

Derek


-- 
Derek Kwan
www.derekxkwan.com

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


[PD] Request - Deleting struct instances, progress?

2017-01-02 Thread Derek Kwan
I suppose since we're doing this about feature requests, I'd like to ask
about deleting instances of structs in linked lists =). 

I've read through the list archive and seen this pop up a few times,
one of the issues being brought up being stale pointers if I recall
correctly. Is there any progress on this? Would it be possible to
just copy over the data from the next node (if it exists) into the
requested deleted node and dealloc the original next node? And if
a current [pointer] is empty/stale, the next [pointer] the same, just
reset to the head as a failsafe? Admittedly, I'm not very familiar with
the mechanisms behind [pointer]s so I could be talking complete
nonsense so apologies in advance...

I suppose that this is a somewhat unrelated question, but what is the
[scalar] object supposed to do? Is it just a specific instance of a
struct in the linked list? 

I'd also echo William's words and say thanks for Pd, Miller =)

Derek


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


Re: [PD] USB foot switch

2016-12-18 Thread Derek Kwan
> 
> I am myself a Linux user and don't know a thing about peripherals in OS X,
> so would anyone have any advice concerning this situation? Would any of
> these generic USB HID devices work fine or should we better try getting
> something else?

I used a Logidy UMI 3 back when I was a OS X user, then I went Linux,
use the same pedal and works great. Has a jack for an expression pedal
but I haven't tried using that yet. Works out of the box for me in
Ubuntu, don't remember having problems using it under OS X. The little
configuration utility where you change the types of messages it sends
out only works in Windows and OS X I think, I haven't tried running it
in WINE but it isn't a huge deal. I think as a default, it send MIDI
notes 60 62 and 64. 

It's basically a little metal wedge with 3 metal push buttons,
aforementioned expression pedal jack in 1/8 inch form, USB-B port out
the back, little LED that lights up when you push the buttons. It is a
little noisy, but I haven't found it to be noticeable in my live
percussion/electronic activities (although you prob don't want a mic TOO
close to it). Durable as heck, no need for an external power source. 

I think they're around 70 or 80 bucks? 

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Getting pointer coords in patcher windows

2016-12-09 Thread Derek Kwan
> On 12/09/2016 06:24 AM, Derek Kwan wrote:
> > Hello,
> > 
> > external object class was instantiated. The latter sounds trickier and I
> > haven't got there yet, but for the former I'm trying [winfo pointerx
> > $::focused_window] 
> 
> check out iemgut's [canvasreceive].
> check out the pdtk_canvas_motion{} func, which does all the messaging of
> mouse-pointer coords from gui to core.
> 
> gfmasrd
> IOhannes

Thanks! I'm looking over [canvasreceive]'s code right now. I'm curious,
what's the point of the clock member of the proxy? I notice that
basically its only job is to call the proxy's free method when the
clock's delay gets set to 0 via the parent's free method. Are there
issues with freeing the proxy directly with the parent's free method?

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


[PD] Getting pointer coords in patcher windows

2016-12-08 Thread Derek Kwan
Hello,

Apologies in advance, bit new to Tcl/Tk, but I'm trying to get the
pointer coordinates of the mouse for an external (yes, Cyclone) via Tcl
for both the currently active patcher window and the window in which the
external object class was instantiated. The latter sounds trickier and I
haven't got there yet, but for the former I'm trying [winfo pointerx
$::focused_window] and it seems to just be spitting out screen coords.
I've tested out [winfo rootx $::focused_window] and that seems to be
sptting the proper top-left coords of the focused window so what am I
doing wrong? I suppose if nothing else works, I can just subtract the
rootx/y values from the screen values I'm getting and clip them to the
window's dimensions. If it helps, I'm testing in Ubuntu. Thanks in
advance!

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [text] editor window line numbers?

2016-12-05 Thread Derek Kwan
On Dec 05, Liam Goodacre wrote:
> What about prepending the line numbers on the way into [text]?

> Is there an "easy" way of getting line numbers in the editor window for
> [text] (the one that pops up with the "click" method), perhaps via tcl
> plugin or adding/editing methods in pdtk_textwindow.tcl? It'd be
> particularly helpful in jumping to specific line numbers when using
> [text sequence]. Thanks!

Hey Liam!

As in line numbers at the beginning of every text line? Unfortunately, I
don't think that works for things like [text sequence], particularly with
the -g and -w (symbol) flags, where -g allows you to use the first field
to act as [send]s and -w (symbol) for lines starting with (symbol) to
act as weights. 
-- 
Derek Kwan
www.derekxkwan.com

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


[PD] [text] editor window line numbers?

2016-12-04 Thread Derek Kwan
Hi list,

Is there an "easy" way of getting line numbers in the editor window for
[text] (the one that pops up with the "click" method), perhaps via tcl
plugin or adding/editing methods in pdtk_textwindow.tcl? It'd be
particularly helpful in jumping to specific line numbers when using
[text sequence]. Thanks!
-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Purr Data rc1

2016-11-25 Thread Derek Kwan
> 
> so, here's the deal, we haven't touched it, but we really needed to. I
> wanted to at least add a properties window and we really need to fix some
> issues it has in cross platforms
> 
> well, it seems some of the issues are exactly what we're facing now...
> 

yep, take my attached screenshot of the comment help file running on pd
vanilla. I've noticed that Alex's new help files (obv) look fine on his machine,
but then when it comes to my machine running Xubuntu,.. looks less than fine... 
weird
sizes and placement of comments. Especially that red one... 

Derek

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


Re: [PD] another cyclone0.3 pre-alpha

2016-11-23 Thread Derek Kwan

Haha, we'll be out of the pd-list's hair soon enough. Or perhaps are
better served by directing this talk onto the repo itself. btw nice to
meet you over at the pdcon =).

Derek

On Nov 22, Dan Wilcox wrote:
> Maybe cyclone needs it’s own mailing list :)
> 
> 
> Dan Wilcox
> @danomatika <https://twitter.com/danomatika>
> danomatika.com <http://danomatika.com/>
> robotcowboy.com <http://robotcowboy.com/>
> > On Nov 22, 2016, at 2:02 PM, pd-list-requ...@lists.iem.at wrote:
> > 
> > From: Lucas Cordiviola <lucard...@hotmail.com 
> > <mailto:lucard...@hotmail.com>>
> > Subject: Re: [PD] another cyclone0.3 pre-alpha
> > Date: November 22, 2016 at 2:02:13 PM MST
> > To: Derek Kwan <derek.x.k...@gmail.com <mailto:derek.x.k...@gmail.com>>, 
> > "por...@gmail.com <mailto:por...@gmail.com>" <por...@gmail.com 
> > <mailto:por...@gmail.com>>
> > Cc: "pd-list@lists.iem.at <mailto:pd-list@lists.iem.at>" 
> > <pd-list@lists.iem.at <mailto:pd-list@lists.iem.at>>
> > 
> > 
> > Hi Derek,
> > 
> > I used your “Makefile” and all objects compiled successfully on w32.
> > 
> > I put the binaries here:
> > 
> > http://lucarda.com.ar/x/cyclone.0.3prealpha5_Win32.zip 
> > <http://lucarda.com.ar/x/cyclone.0.3prealpha5_Win32.zip>
> > 
> > I moved all helps and used abs to the same dir as the objects, also moved 
> > there the two 3th party.dlls needed for w32 (libgcc_s_dw2-1.dll and 
> > pthreadGC-3.dll)
> > 
> > Salutti,
> > Lucarda.
> 

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [delwrite~], or "what Pd operations are/should be realtime?"

2016-11-23 Thread Derek Kwan
To chime in: 

I've done Stockhausen's Solo Nr. 19 and at least in the form scheme I
interpreted, there were at least 45.6 s delays, and in the other form
schemes there are bound to be longer delays... I suppose Stockhausen
isn't the normal use case though =). 

Derek

On Nov 23, Matt Barber wrote:
> I don't know about average, but I have heard "longest delay I use is maybe
> 30-60 seconds" a few times. The bass piece I presented at PdCon has up to
> 30 seconds of delay for a complex mensuration/transposition canon, and it
> would be very useful to be able to clear it for rehearsal purposes.
> 
> On Wed, Nov 23, 2016 at 12:35 PM, Jonathan Wilkes <jancs...@yahoo.com>
> wrote:
> 
> > > In this case, I'd probably rather see a hybrid approach where a second
> > buffer is already waiting. Then you could give "clear 300", and it would
> > switch to the empty buffer immediately while guaranteeing that the other
> > one is clear in 300ms. But this is maybe too complicated for the user, and
> > uses too much memory?
> >
> >
> >
> > Matt,
> > In the user reports, what is the average size of the buffer?  Are we
> > really talking about buffers greater than, say, 1000ms?
> >
> > This sounds like premature optimization to me.
> >
> > -Jonathan
> >
> >
> > On Tue, Nov 22, 2016 at 7:32 AM, Ivica Bukvic <i...@vt.edu> wrote:
> >
> > For clear, I can imagine having a second empty memory buffer being created
> > while delay continues to use the populated one until the memory allocation
> > is complete. At that point a simple change in the pointer should suffice,
> > after which the old buffer gets trashed. This would break determinacy, so
> > perhaps a separate argument could be used to enable this option in which
> > case the object could get another outlet that sends a bang when the
> > procedure is complete.
> > Best,
> > --
> > Ivica Ico Bukvic, D.M.A.
> > Associate Professor
> > Computer Music
> > ICAT Senior Fellow
> > Director -- DISIS, L2Ork
> > Virginia Tech
> > School of Performing Arts – 0141
> > Blacksburg, VA 24061
> > (540) 231-6139
> > i...@vt.edu
> > www.performingarts.vt.edu
> > disis.icat.vt.edu
> > l2ork.icat.vt.edu
> > ico.bukvic.net
> >
> > On Nov 22, 2016 00:07, "Matt Barber" <brbrof...@gmail.com> wrote:
> >
> > Hi list; thanks for a wonderful PdCon (to Stevens and NYU people
> > especially).
> >
> > I had a quick chat with Miller after the "future of Pd" discussion. I told
> > him there is one feature I've heard Pd users ask for many times: a "clear"
> > method for [delwrite~]. A [delwrite~] resize method is something I've heard
> > brought up a number of times as well, but I didn't mention it.
> >
> > Each of these has a runtime cost that could disrupt the realtime dsp
> > calculation. Clearing a [delwrite~] is a linear-time operation, and for
> > long delay lines it could cause audio dropouts; resizing is more
> > problematic because it's not clear what to do with samples already in the
> > delay line – probably it would need to be cleared as well, which would take
> > even more time (although there is already an indirect resize function when
> > sample rate is changed).
> >
> > On the other hand, Pd arrays can be resized and cleared (const 0) ad
> > libitum, which is more or less the same operation. We usually tell users
> > 'do this at your own risk when computing audio.'
> >
> > So what is the main difference? I think it's that [delwrite~] is a tilde
> > object that is supposed not to cause dropouts on its own. If clearing it
> > could cause a dropout, there are reasons for thinking of that as a bug
> > rather than simply a risk.
> >
> > Is there a compromise procedure? We could add an option to spread the
> > clearing out over time. For instance "clear 5000" would mean "clear the
> > delay line over the next 5000 ms." A second argument would let the user
> > choose whether to preferentially preserve the most recent samples or the
> > oldest samples. Given only a time argument, default would be to preserve
> > oldest samples (less work has to be done overall since the write pointer
> > would also be filling the line with zeroes). Without a time argument (i.e.
> > "clear" with no arguments), the default would be to clear it immediately
> > with the understanding that there could be a possible dropout.
> >
> > A broader topic for another time would be "what Pd operations are/should
> > 

Re: [PD] another cyclone0.3 pre-alpha

2016-11-22 Thread Derek Kwan


> cyclone_src/binaries/signal/play.o:play.c:(.text+0x117): undefined reference 
> to `forky_hasfeeders'
> collect2.exe: error: ld returned 1 exit status
> make: *** [play~.dll] Error 1
> 

On play~:

I think the issue is that I borked up the Makefile entry and didn't
account for the forky dependency. I fixed that and made a pull to Alex's
repo, but he's about to take a flight back home so you can either wait
for him to get back to merge the pull or use the Makefile here:

https://github.com/derekxkwan/pd-cyclone/blob/master/Makefile

I basically got rid of play~.class.sources line 374 from the scybuf bit
(the entire line) and added this bit after that scybuf chunk:

scybufforky := \
shared/unstable/forky.c \
shared/cybuf.c
play~.class.sources := cyclone_src/binaries/signal/play.c $(scybufforky)


Hopefully that works/unborks!

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] another cyclone0.3 pre-alpha

2016-11-22 Thread Derek Kwan
> 
> >Perhaps someone could do a windows binary for us like the last time? Lucas?

also btw I've just redone [average~] to have a signal outlet rather than
a float outlet if you want to check that out as well =), that change did
get merged into Alex's repo.  the new [play~] and [average~] haven't gone
through the thorough Porres-tests yet though.

Derek

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Deken library management. Was: [pdconv16_r] Topics: Deken/Core Objects/Website/Community Involvement

2016-11-01 Thread Derek Kwan
> > Deken as it is right now, you
> > pretty much have to know the name of the library you want to install,
> > and what it does/what it contains. As a new user, I'd find that pretty
> > daunting. 
> 
> very good point!
> 
> > Thus, I'd propose: a list of keywords for the library (including object
> > class names), version number, category (if applicable), author, and a
> > short description. 
> 
> that would make a lot of sense. maybe this info could then be synced with 
> https://puredata.info/downloads/by-category/library so there would also be an 
> up-to-date online ressource (without the need of running Pd)?
> 

Hello,

See IOhannes's reponse to me about the -objects.txt. Also, yes, it would
be good to have a centralized up-to-date resource with this information
but I think it's also important that the same information or near the
same information is available within Pd as well. Having to open a
web-browser and dig around the internet for the information (which
admittedly would be easier with an up-to-date centralized resource) just
adds extra steps to the process when it's so much more convenient and
intuitive to not have to leave Pd and get the information you want and
download the library with just a few clicks or so. 

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Deken library management. Was: [pdconv16_r] Topics: Deken/Core Objects/Website/Community Involvement

2016-11-01 Thread Derek Kwan
> On 2016-10-31 13:11, Derek Kwan wrote:
> > Thus, I'd propose: a list of keywords for the library (including object
> > class names), version number, category (if applicable), author, and a
> > short description. 
> 
> oh, you mean something like the "-objects.txt" file that you can upload
> alongside your deken package?
> https://github.com/pure-data/deken/issues/133
> 
> fgamsdr
> IOhannes

Yeah, something like that =). But also more info about the external
library as a whole (description, etc.) that's also viewable within the
plugin itself. I can search for something and come up with a big list of
libraries, but as an end-user I can't be certain what I've actually
found with libraryx-v0.2.0 and there isn't info that tells me why I
should download libraryx over libraryz that's also in the same list of
results and I can't see the -objects.txt from the plugin so I can't tell
how closely libraryx fits what I actually am looking for (although this
might be mitigated with a library description so I wouldn't actually
need to see the whole -objects.txt within the plugin window or some sort
of popup).

-- 
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Deken library management. Was: [pdconv16_r] Topics: Deken/Core Objects/Website/Community Involvement

2016-10-31 Thread Derek Kwan
cal vs global install issue , maybe this piece requires library3
v2.0 and doesn't work with the current library3 v3.0 because something broke.
I want to be able to use library3 v2.0 with this piece but I don't want to
screw up my Pd install and have both versions in my general Pd
searchpaths (there would also be potential nameclashes with the
the old and new objects but ignoring that for now... =P). Also maybe I use
the majority of the libraries with only this one piece only so I don't want
globally install these libraries.

--

Sorry if none of this made sense, a bit sleep-deprived and it's late
=) I think my updates argument was the weakest one and I'll have to
think about that more... And I suppose this discussion kinda is
tangentially related to pd-vanilla development, but Deken is a part of
the Pd Vanilla distribution now and I think library management in a
post-extended world is a worthwhile topic.

-- 
Derek Kwan
www.derekxkwan.com

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


[PD] [pdconv16_r] Topics: Deken/Core Objects/Website/Community Involvement

2016-10-29 Thread Derek Kwan
> Joe Deken and Jaime Oliver and I are interested in setting up a round table
> discussion to consider possible future developments for Pd vanilla.  I have a
> lengthy list of ideas and I'm sure many of you have ideas as well.  To prepare
> for this, it would be helpful to collect some of them in advance.  If you
> have a direction you'd like to see Pd development go in, please feel free to
> suggest it in a followup e-mail to this one.

Oh boy, I have a bunch bunch of ideas that are kinda sorta related to
each other sorta not. Here we go!:


DEKEN:
- I think library management is important to the future of Pd and
  I'd like to discuss idea of how to improve it. I basically think
  the current idea needs a bit more meat on its bones to truly be
  helpful and integral to the Pd experience. I'd like to discussion
  what sorts of metadata would be helpful to have, how updates to
  libraries can be handled (esp with previous versions on a user's
  computer), if perhaps it could handle package manifests ala
  Node.js so that projects are easier to distribute (which also
  brings up the issue of local project install vs global install)

CORE OBJECTS:
- I'd like to discuss if the core objects included with Pd Vanilla
  should be expanded and what they should be expanded with. I like
  the modularity of Pd (this aspect being reinforced by Deken), but
  I also think maybe including objects to increase the functionality
  to Pd could be added. Things such as additional GUI objects,
  multidimensional arrays, more powerful sequencing tools, global
  transport like functions, hash tables, etc. 

WEBSITE:
- I'd like to discuss the future of the website (not totally related
  to Pd Vanilla, but important to the Pd world as a whole). I think
  the Pd community lacks a good solid go-to resource on the web
  that's up to date. Puredata.info has been a great resources, but
  I'm not sure that the wiki format lends itself to simplicity and
  clarity, esp for Pd newbies. It also hasn't been the best at being
  up-to-date (I mean, there's still mentions of Pd-extended in
  several places) and it would stand a better chance of being more
  up to date if more people in the community could freely contribute
  to its upkeep. I also think that a centralized Pd website could
  potentially become a great showcase of what people have done with
  Pd and a resource for abstractions and example code and although
  that can be done with member pages, I don't think member pages are
  the best way to get this info across (although I'm not opposed to
  member pages, I have one!)

COMMUNITY INVOLVEMENT:
- I'm not sure if it's just me finally working on Pd community
  projects like Cyclone and writing on the list, but I have a
  feeling that the community has been grown and become more active
  and eager to be involved in the development and improvement of Pd
  and Pd-related projects and I'd like to explore perhaps if somehow
  more people could be involved in Pd Vanilla development, how that
  could be achieved, and how it can be made sure that development is
  focused and doesn't stray from a central idea of what Pd Vanilla
  should be.


Looking forward to some fruitful discussion!

Derek

======
Derek Kwan
www.derekxkwan.com


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


Re: [PD] Request for help investigating the xeq sequencer package

2016-10-21 Thread Derek Kwan
> hmm, it's got nothing to do with midi, right?
> oh...
> 

haha, it looks like there's plenty of midi in there =). if i'm reading
it correctly, it looks like it functions sort of like arrays? you bind a
sequence to some global symbol and access it by passing that symbol.

I'd be interested in more sequencer options for pd so it'd be nice to
have xeq or something like xeq available. i suppose i'm going off-track
a little, but it'd be nice to have something supercolliderish with
TempoClocks and Patterns where it's really easy to loop sequences,
randomize specific bits of a sequence, etc. and have that all bound to a
global transport (or two). A lot of the times I end up making my own hacky
transport with metro and sends and receives for beginnings of bars,
beats, etc and even then it's not the easiest to do say, quintuples
when I've got my global metro going in 16ths... 

I suppose xeq could potentially be revived with [text] compat since that
seems to be the successor to [qlist]? it seems like [text] solves a lot
of the issues xeq had with qlist, like global binding allowing multiple
objects to traverse a text file... 

Derek
======
Derek Kwan
www.derekxkwan.com


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


[PD] xticks/yticks sizes? also fontsizes

2016-10-21 Thread Derek Kwan
Hello,

Is there a way to make the xticks/yticks bigger in garrays? The large
ticks I can kinda see, but the small ticks I have to squint and bring my
face closer to the screen more. It seems like this is esp a problem on
the left hand vertical axis, the right hand vertical axis ticks seem to 
stick out more. The same seems to be true with the horizontal axes: the
ticks on the bottom horizontal axis stick out more than the ones on the
top horizontal axis.

Also, is it possible to achieve font size 11? It seems like through
setting the font size to 11 in the start up flag makes pd default to 10.
Is this a tk limitation? This bit isn't such a huge deal though. I usu
use 12pt, it's just part of me thinks maybe I can get away with using
11.

I'm using Linux if it makes any diff. Thanks!

Derek
==
Derek Kwan
www.derekxkwan.com


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


Re: [PD] efficient approximation of trig functions for hi pass formula

2016-10-20 Thread Derek Kwan
> 
> >> Does anyone know a tool that will display the line number of a vim session
> > why not just adding ":set number" into vimrc?
> Because it's tiny.
> 
> 

well, you can make change the color of them with
:highlight LineNr ctermfg=color
if that helps. cterm=bold seems to do the same thing but it might just
be my color scheme... you can make invert the colorsceheme for the line
number column with a cterm=inverse option, hmm, i actually kinda like
that one...

you can also get the line number at the bottom with :set ruler



==
Derek Kwan
www.derekxkwan.com


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


Re: [PD] cyclist

2016-10-17 Thread Derek Kwan
Also, adding on to this discussion:

The save format changed from Max 4 to Max 5 to a JSON-like text file
format. Since Cyclist was written to deal with Max 4 files, we cannot
guarantee compatibility with modern Max save files for at least the time
being as that would require rewrites (well actually, a brand new
script).

Derek

> Well, for those who don't know, cyclist converts binary max files to text
> so they could be opened in Pd.
> 
> >> Does anyone really use cyclist?
> >>
==
Derek Kwan
www.derekxkwan.com


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


Re: [PD] Question about the pd-extended history

2016-10-10 Thread Derek Kwan
> On 10/10/2016 2:07 PM, Jonathan Wilkes wrote:
> >> Does anyone have a link to a paper or a publication that documents the
> >
> >
> >> motivation behind and original initiators of the pd-extended? I traced
> >> releases back to 2003 but there is no info on who were original players
> >> who started it. Thank you.
> >
> >Didn't Hans start it?
> 
> That's what I thought but I am not 100% sure, so I am hoping the community
> will provide needed clarity.

I've been doing some mailing-list archive digging and so far this is the
earlier mention I've found of it on the oft-neglected pd-announce list
so it at least goes back to december 2002. 

https://lists.puredata.info/pipermail/pd-announce/2002-12/000178.html

In terms of pd-list, the earliest mention I've found goes back to May
2003.

https://lists.puredata.info/pipermail/pd-list/2003-05/011695.html

Derek

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


Re: [PD] how prevent Pd from registering traces

2016-09-20 Thread Derek Kwan
On Sep 16, ro...@dds.nl wrote:
> hello list,
> 
> i would like to prevent Pd from leaving 'traces' other then what is done by
> my patch.
> i guess that if the preferences are not changed nothing will be written
> about that.
> 
> but what about the 'recently opened patches'?
> 
> suggestions are welcome
> 
> rolf
> 
> 

At least in Linux, recent files are stored in
~/.config/pure-data/recentfiles.conf so if you get rid of that, you get
rid of your recently opened patches. 

Derek

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


Re: [PD] Yamaha UD-BT01 Wireless Midi Adapter (Bluetooth MIDI) with Linux

2016-09-20 Thread Derek Kwan
On Sep 12, IOhannes m zmoelnig wrote:
> On 2016-09-12 11:49, Derek Kwan wrote:
> > I use it with this
> > program a2jmidid which is at least in the Ubuntu repos, I think it's
> > supposed to bridge ALSA MIDI and Jack MIDI. Anyways, I then open up a
> > ALSA MIDI channel or two in Pd. I then connect the two graphically via
> > Jack using that nifty qjackctl program.
> 
> ahm, are you sure?
> does the device only have jack midi drivers? (i always thought that jack
> midi builds on top of alsa midi).
> 
> because if the device has alsa midi drivers, you can use the nifty
> qjackctl program to connect the two alsa midi devices directly (the
> "ALSA" tab should really read "ALSA MIDI", and the "MIDI" tab should
> read "JACK MIDI"), without needing a software proxy (a2jmidid)
> 
> fgamsdr
> IOhannes
> 

Oh, haha, so there is an ALSA tab and it works that way. I don't know
why I haven't noticed that before... I guess I figured out my way back
when I first switched to Linux a year and a half ago and it worked so I
didn't look back. Yeah, I suppose labelling the tabs MIDI and ALSA
aren't the most intuitive things in the world, esp since most of the
time you see ALSA you're dealing with soundcards so that tab is easily
skip-over-able. This simplifies things a bit, thanks man!

So to sum up for the list graphically, this better way is:

USB MIDI controller -> qjackctl (Connect -> ALSA tab) -> Pd (ALSA-MIDI)

Derek


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


Re: [PD] [coll] bug

2016-09-17 Thread Derek Kwan
> On first glance, it looks like 0.2beta has pthread stuff that
> 0.1-alpha55 has...

0.2beta has pthread stuff that 0.1-alpha55 DOESN'T HAVE, sorry for the typo

Derek

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


Re: [PD] [coll] bug

2016-09-17 Thread Derek Kwan
Hello,

Linux checking in. I can't seem to replicate the bug on my computer and
that third outlet seems to work fine to me.

Would that version with pd-extended be the one found on the
puredata.info page (0.1-alpha55)? It says it was included in 0.42.5.

On first glance, it looks like 0.2beta has pthread stuff that
0.1-alpha55 has... in particular the coll_free method (which I'd assume
would be called when PD quits) uses them... I suppose pthread deals with
multithreading? That's about all I know about it... suppose I can do some
reading though =).

Derek

On Sep 16, oliver wrote:
> hi, list !
> 
> i recently ran into a bug when i used the "coll" object from the BETA
> cyclone library.
> 
> simply put: when i create a coll object and quit PD, it throws a Microsoft
> Visual C++ Runtime Error (see image).
> 
> example patch is attached.
> 
> 
> the object seems to work though, as long as PD is running. only the 3rd
> outlet (bang when file read) doesn't work.
> 
> 
> i downloaded the cyclone 0.2 beta package with deken.
> the older pd-extended version (also from deken) works fine.
> 
> 
> PD 0.47-2, Windows 7 64 bit
> 
> 
> did anybody experience this as well ?
> 
> 
> 
> best
> 
> oliver

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


Re: [PD] bendin bug (?)

2016-09-12 Thread Derek Kwan
well, I guess I pretty much only use notein/out so I don't have a lot of
patches with bend info so IOhannes would be right in that regard. I
think keeping this inconsisent behavior in the current existing objects
would reinforce this behavior in future patches and then when this topic
comes up again x years later there's even more reason to not break
backwards compat since there'd be many more patches using these objects.

I do like the idea of new objects IF the old ones gradually get phased
out. I think it'd be confusing to new users (and old users) if there's
two pairs of objects in existence that pretty much do the same thing
with slight differences. Plus, I like the minimality/sleekness of Pd and
having two very similar objects kinda gunks it up and adds (although
admittedly a very minimal) added footprint. 

In terms of the actual scaling, I think I'd prefer the ints rather than
the floats scaled to [-1, 1). I suppose it's more safe to downscale from
ints rather than upscale from floats? Is there enough precision in a
32-bit float to store someting like 1./8192? I'm reading you can have up
to 9 digits of precision in the mantissa and 8192 being a power of 2
helps... admittedly I've been kinda fuzzy on these things...

Derek

On Sep 12, Alexandre Torres Porres wrote:
> > didn't want to cause disturbance.
> 
> please, this is no disturbance and I don't represent this list any more
> than you do, everything I say is also just my opinion and my two cents
> 
> > If we want to abstract from the implementation
> 
> well, if we don't then maybe we should have 2 inputs/output for the Most
> and Least significant bits from 0-127, cause that is what the specification
> is... and the '0' point is 64 / 0
> 
> anything else is an abstraction
> 
> cheers
> 
> 2016-09-12 16:52 GMT-03:00 Giulio Moro :
> 
> > > it is a "weird" inconsistent standard
> > I actually mean it is inconsistent with how the data is represented
> > according to the MIDI standard.
> >
> > > now i don't know if you're just pushing to make this point, when 3
> > people already manifested that this sounds reasonable and intuitive as well.
> >
> > Signed integer surely does sound more intuitive than unsigned integer, I
> > agree. My point is, if we want to program for intuitiveness, then
> > normalized float is good (possibly with a different rescaling for the
> > positive part, so that -1 ->  -8192 and 1 -> +8191, either way, it should
> > be clipped to range).
> >
> > If we want to abstract from the implementation (as both normalized float
> > and signed integer do), then I would advocate for the former, as it makes
> > more sense altogether. Going for the latter is, in my opinion, not much of
> > an improvement over the current situation and I would not bother,
> > ESPECIALLY if it is going to be a breaking change. But then, I only
> > recently subscribed to this mailing list, so I have no idea what practices
> > are already in place in the development of Pd, I was just sharing my
> > opinion on the subject, didn't want to cause disturbance.
> >
> > Best,
> > Giulio
> >
> > --
> > *From:* Alexandre Torres Porres 
> > *To:* Giulio Moro 
> > *Cc:* Miller Puckette ; "pd-list@lists.iem.at" <
> > pd-list@lists.iem.at>
> > *Sent:* Monday, 12 September 2016, 20:34
> > *Subject:* Re: [PD] bendin bug (?)
> >
> >
> >
> > 2016-09-12 16:14 GMT-03:00 Giulio Moro :
> >
> >
> > As far as intuitiveness is concerned, -1 to 0.999878 is the most intuitive
> > range for me.
> >
> >
> > You'll be glad to know that the update in cyclone will include also the -1
> > to 0.999878 range for you in midiformat/midiparse. I didn't mention, but
> > besides -8192 to 8191 they also included this - but there's no  0-16383
> > option though.
> >
> >
> > Just to make a point that intuitiveness is arbitrary.
> >
> >
> > now i don't know if you're just pushing to make this point, when 3 people
> > already manifested that this sounds reasonable and intuitive as well.
> >
> >
> > -8192 to 8191 sits somewhere in between, breaks free from the specs and
> > yet is not intuitive to use.
> >
> >
> > but this is widely used and I've seen it in different occasions. for
> > instance, it is actually even used in Pd's bendout... why? Cause it is
> > something that actually exists! Another example is that it was just
> > introduced in Max's midiformat/midiparse *instead* of the 0-16383 range.
> > I'm sorry but I have to disagree that it is a "weird" inconsistent
> > standard. It is actually the only standard I ever knew until I found these
> > issues. And it is widely used because it is in fact intuitive, 'coz '0'
> > means no pitch bend up or down...  Now, ask a newbie what's the middle
> > point in the 0-16383 range?
> >
> > cheers
> >
> >
> >

___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 

Re: [PD] Yamaha UD-BT01 Wireless Midi Adapter (Bluetooth MIDI) with Linux

2016-09-12 Thread Derek Kwan
On Sep 04, Ingo wrote:
> Hi everybody,
> 
> I was wondering if anybody has used the Yamaha UD-BT01 Wireless Midi Adapter
> (Bluetooth v4.0 MIDI) with Linux.
> I was wondering how you could get the MIDI data to get recognized by Pd.
> 
> Does anybody have any experience or know how to use it?
> I would like to use it with either Debian or Raspbian (or both).
> 
> Ingo

I haven't used that particularl midi adapter, but I use a USB MIDI
footswitch a lot with my stuff and I run Xubuntu. I use it with this
program a2jmidid which is at least in the Ubuntu repos, I think it's
supposed to bridge ALSA MIDI and Jack MIDI. Anyways, I then open up a
ALSA MIDI channel or two in Pd. I then connect the two graphically via
Jack using that nifty qjackctl program.

So to sum up:
Logidy footswitch -> a2jmidid -> JACK (qjackctl) -> Pd via ALSA. 

There prob is a way easier way to do it (mb I can get that footswitch in
directly to Pd via ALSA MIDI?) but I've found it to be reliable and
rock-solid in performance. Maybe you could follow a similar pattern with
your wireless MIDI adapter.

Derek

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


Re: [PD] vanilla 0.47.1 Bug?

2016-09-12 Thread Derek Kwan
> Thanks Alexander,
> 
> It seems to be the same kind of problem but not exactly it. Lets hope
> miller finds a possible solution for next version. My guess is that its the
> same issue that is causing similar behaviors.
> 
> Cheers
> 
> On Sep 11, 2016 10:41 PM, "Alexandre Torres Porres" 
> wrote:
>

I think I may have come across the not being able to drop into edit mode
too and I'm on Xubuntu 16.04.1. I was thinking this was because I'm on
my 6-year old laptop with somewhat sticky keys and a barely functioning
trackpad while I get my newer one fixed at some point, but it could
potentially be that too =P. I'm wondering if other Linux folks have come
across this or it's just this computer being temperamental...

Derek

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


Re: [PD] bendin bug (?)

2016-09-12 Thread Derek Kwan
On Sep 11, Alexandre Torres Porres wrote:
> But in pd it is 14-bits already
> 
> It's just that both counterparts are not in the same standard, a bug as i
> see it (bendout is -8192 to 8191 & bendin is 0 to 16383) - bendout is what
> I consider the usual way to deal with pitch bend, where 0 is no
> bend up/down.
> 
> cheers

oh, well in that case i think it'd be fine to outright change one and
break backwards compat =P yeah, the 0 being the middle spot sounds the
most intuitive. 

Derek

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


Re: [PD] Sending audio through net

2016-09-11 Thread Derek Kwan

> i can second johannes post regarding jacktrip.
>
> in june we did a network concert between cologne and taipei, streaming
> 4 channels of audio at 16/441 in either direction + a skype video feed
> for projection in the theatre in taipei.
> even with a non fixed IP on our side (client) and using the general
> internet of our school (IT had prepared a fixed IP address for us, but
> it failed on the weekend we wanted to use it), it worked without a
> hiccup for the hour or so we used it. i was very impressed with
> jacktrip.
>

(sorry for resend hans, forgot to cc the list...)

Thirding JackTrip, if that's even necessary haha

I think,.. 4 years ago now? Something like that, we did a telematic
concert between Stony Brook and UCSD and sent something crazy like 12
channels or something over JackTrip with relatively low latencies. Not
low enough to do crazily rhythmically intricate stuff between the two
sides, but low enough to feel like you're playing with the other side
and not a just a video,.. (well I'd assume, I was on the tech side of
things and didn't get to play). We also streamed video, it wasn't Skype,
I can't remember exactly what we used (gimme a break, it was years ago).
We did use fixed IPs and Internet 2, which prob helped the latency a
bit. We also recorded all the channels into Ardour. It was a pretty cool
experience, but long long days lol.

Derek

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


Re: [PD] bendin bug (?)

2016-09-11 Thread Derek Kwan

Hello,

Well, that's basically what Max does. It defaults to the original 0-127
and then you can specify a "hires" mode to use all 14-bits rather than
just 8-bits like 0-127 did. We just implemented this for midiparse and
midiformat in cyclone, the current version only had the 0-127. So yes,
it'd be pretty easy to do. Just default to the 0-127 and have a flag or
have a message change the mode to the "hires" mode. I think in terms of
a software's life cycle, if you want it to keep getting better and
better, something along the line has to break at some point when people
figure out better and more efficient ways of implementing things. Look
at Python 2 vs 3 or Lua. But I suppose that argument is for a different
time and a different thread and you wouldn't necessarily have to break
things here anyways =).

Derek


On Sep 04, William Huston wrote:
> I agree with Alexandre about what seems sensible, but introducing a change
> like this will break existing patches.
> 
> Is it possible (for all changes like this) to introduce a compatibility
> mode to get the old behavior?
> 
> Yes, any seasoned Pd hacker will know how to fix the scaling. I'm just
> imagining someone's patch breaks after upgrading and they just want a fast
> way to get old behavior.
> 
> Thanks,
> 
> On Sunday, September 4, 2016, Alexandre Torres Porres 
> wrote:
> >
> >
> > 2016-09-04 13:35 GMT-03:00 Giulio Moro :
> >>
> >> Is this a [bendin] or a [bendout]  bug?
> >> [bendin]'s current implementation is closer to the actual MIDI messages
> being transmitted.
> >
> > but in actuality, the not raw standard is from -8192 to 8191 right?
> > I just care they both are the same, but it seems to me that -8192 to 8191
> is the sensible choice
> > cheers
> 
> -- 
> --
> May you, and all beings
> be happy and free from suffering :)
> -- ancient Buddhist Prayer (Metta)

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


[PD] struct click extra info, (pointer) vs (gpointer)

2016-09-01 Thread Derek Kwan
Hello,

I've been experimenting with structs and I was wondering why for click
listener method, [struct] spits out extra info (particularly, it
seems to correspond to the float y portion of a [struct] if defined).
The select,deselect, and change listeners don't spit out this extra float. 
Despite this, it doesn't seem to affect me using [get] with click (which 
is to be expected).

When I route the results from the click listener using [route click] and
then [unpack p f], getting rid of the extra float, (pointer) gets
typecasted to (gpointer), but seems to be the same functionally (still
works with [get]) so I was wondering what the difference is and why it
gets typecasted (sorry, I haven't delved into the gui/tk areas of pd
quite yet so this question might be a bit noobish). Thanks!

Derek

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


Re: [PD] PdCon16 NYC Calls are open

2016-08-19 Thread Derek Kwan
> > Dear All, 
> >  
> > Please check out the calls for papers, works, and proposals for the 
> > upcoming Pd Convention.
> >  
> > http://www.nyu-waverlylabs.org/pdcon16/calls/ 
> > <http://www.nyu-waverlylabs.org/pdcon16/calls/>
> >  
> > All the best,
> >  
> > J

For fixed-media pieces, would you want a link to the
soundcloud/someotherstreamingservice with the application and a d/l link to
the lossless coming later if accepted, or just the lossless straight up
with the application?

Thanks!

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] puredata.info cleanup

2016-08-06 Thread Derek Kwan
> That all sounds great!
> 
> 1 minor edit - in the front page description of pd-extended, OSC is mentioned 
> as one of the differentiating features from Vanilla - but it's been a feature 
> built into Vanilla for awhile now. 
> 
> Also, I think the processing page is a great ui model.
> 
> -Jesse

Noted. Well, I took a bit more drastic changes this time to
http://puredata.info/ . Apologies for changing the text format from
reStructured text to HTML. reStructured text seemed kinda like markdown
but except the # sign for headers wasn't working and I'm familiar with
HTML so I just went with it (I also couldn't find any formatting guide
for reStructured text).

It's still pretty ugly but I think it's a bit more clear (I think it'd
be less ugly without text decorations for everything, I don't have
access to the CSS wherever that'd be and I didn't want to put
"text-decoration:none" for every hyperlink and it looks like I can't do
internal style sheets. There's also little icons next to every link that
IMHO is kinda distracting. I also might have went a little bold happy).
I tried to keep most of the blurbs from the old page and did a little
more cleaning up. I've also added links to pd-tutorial and pdpatchrepo
as well as the Facebook group and Pd subreddit. I was thinking of
putting a video (would that even work on a wiki page?) but I couldn't
decide on one. It seems that since it's a wiki page, what you can do
with it seems kinda limited but I can experiment more.

I've also archived the old reStructured text version on my computer. I
suppose I could attach it somewhere if somebody wants it. Basically, the
only links I didn't bring over from the old page are the downloads page
(well, you can access it pretty easily anyways), the Wikipedia links
for visual programming language and data flow programming (I think
there's enough links on that page but if people want I can put them back
in), and the links to distributions (also easily accessible anyways) and
Pd-extended (it's pretty much dead and buried anyways).

I've also noticed that the very top of the Downloads page mentions to
download Pd-extended for a quick start. I don't have write privileges on
that page so I can't change it but I definitely think it should be
gone... esp since there aren't any easily-accessible links to download
Pd-extended anymore.

Suggestions/feedback welcome!

Derek


=
Derek Kwan
www.derekxkwan.com

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


[PD] puredata.info cleanup

2016-08-01 Thread Derek Kwan
Hello,

I don't know if this is the proper list for this, I found there is a
pdweb mailing list but it looks to be quite inactive so I figure I start
the discussion here... 

I finally got an account on the puredata.info page so I took the liberty
of cleaning up/clarifying some of the writing on the front page if
nobody minds... I didn't want to do anything drastic, just try to make
things less wordy and clear up some things (like move the description of
deken to the Pd vanilla bullet, clear up the description of objects and
canvases, bold things like operating systems).

I don't want to attempt to do anything drastic without consulting the
list, but I feel that the front page could use some changing up. When
you load up puredata.info, you're immediately hit with this wall of
text, which can be quite overwhelming (especially for newbies).
Pd-vanilla and Pd-l2ork are featured downloads to the right of the page,
but you have to wade through the wall of text to actually figure out
what they are. Taking a page (haha, pun) from the processing.org
website, it's clearly marked where to download Processing right near the
top (in a larger font even, along with a link to tutorials and an object
reference guide) with a video above it explaining exactly what
Processing is and what it does (and what's new with Processing 3).
Granted, historically we've had two main distributions of Pd with vanilla
and extended so perhaps there needs to be a little more words explaining
which is what (adding on to that, since extended is defunct and l2ork
isn't ready for multi-platform yet, would it be helpful just to point
everybody to Pd as the main distribution?). Describing Pd and what it
does might be shortened up (and perhaps if you want the longer
description, make an About link on the sidebar) and perhaps throwing a
few pictures and/or visual eye candy while remaining relatively
lightweight/datafriendly could help  Also, posting the current versions 
next to the download links (can this be automated?) would be helpful.

Summing up, I just think the front page of puredata.info isn't as
clear/user-friendly as it could be and it's not particularly helpful in
welcoming new users. Thoughts?

(Also, how do things get added to the News list? The last entry is from
2015 and things such as Pd updates and the NYC conference on there would
be nice.)

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] 3D tabplay?

2016-07-14 Thread Derek Kwan
On Jul 14, José Rafael Subía Valdez wrote:
> Hello List,
> 
> I am trying to implement an FFT Spectral Freeze patch based on "A Tutorial
> on Spectral Sound Processing Using Max/MSP and Jitter", Jean-Francois
> Charles. In the project, Charles uses the jitter objects to solve this.
> 
> I am starting to play around with some ideas, but I was wondering if this
> is implemented somewhere.
> What is interesting in these patches is that the spectral freeze is dynamic
> so it sounds more organic.
> 
> any thoughts?

(oops, forgot to cc the list, sorry for the double e-mail jose. it's a
little late...)

Hello,

Not sure what the 3D bit is about and it's been a long while since I've
used Max so I'm kinda fuzzy on what jitter objects there are... could
you expand on the 3D bit?

Anyways, you might want to look into paulstretching. It's basically like
phase vocoding but you throw out the phases. I'm pretty sure the mmb
library has something like that because I've modified it and abstracted
it for my own use here:
https://github.com/derekxkwan/pure-data-abstractions/blob/master/paulstretch%7E.pd

Derek

=

Derek Kwan
www.derekxkwan.com

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Granular Synthesis External

2016-07-06 Thread Derek Kwan
> >Thank you Oscar for this contribution; it's a very helpful external.
> >
> >I'm curious what else is out there to compare.  Is anyone following this 
> >thread aware of other granular synthesis externals out there for PD that are 
> >worth considering?
> what does a granular synthesis patch should offer?
> i've made a basic one, that offer all mandatory functionalities, but i never 
> manage to be happy with the sound produce.
> I still don't know if it's only me that did not like granular synthesis, my 
> patch that did not offer enough functionalities, or the sound-file i'm using.
> 
> sorry for the large or generic question.
> 
> cheers
> Cyrille

Well, I guess since there's a thread going I should throw something into
the mix. Sorry in advance for the lack of documentation, they've been
mostly personal projects...

I've been slowly building my own little external library that has a
granular external: https://github.com/derekxkwan/dxkpure , which is
based on a more basic abstraction fgrainstr2~ that needs fgrain2:
https://github.com/derekxkwan/pure-data-abstractions/tree/master/fgrain
. I don't really have any demo of it by itself, but I used it to stretch
the ambient background noises in this:
https://soundcloud.com/dxkzh/airportmusic . You can best hear it at the
1:45 mark.

I tried to model them after what I thought SuperCollider's Warp2 UGen
did. I made them to substitute for Warp2 when i was porting a piece of
mine from SC to PD, where I'm using attack detection to stretch the
sound of a kalimba to 100x its normal duration.

Basically each grain, windowed with either hanning or tukey
envelopes in the external version, starts one after the other at semi
regular intervals (with a bit of variation to avoid a pitch) and are
long enough to overlap each other by some crazy number (64, I think). I
tried to make them lower, I think Warp2 does an 8x overlap, but it just
didn't sound continuous to me. Each grain's duration is always varied a
little bit to avoid a pitch arising from the grain windows. I also
randomized their amplitudes. I think it's synchronous granular
synthesis? 

You basically used them as you would tabread4~. fgrainstr2~ has few
options, basically can only change the "grain rate" while in the
external you can change the overlap, window type, amount of
randomization for transposition, grain size, amplitude, where each grain
starts in the soundfile relative to the phasor indexing, hopsize, I
think that's it. 

I'm relatively happy with the sound of them. the external one dxkgrnrd~
glitches a bit compared to the abstraction and I never got the
transposition to really sound right...


I guess I do like the sound of granular synthesis. For sounds that
aren't pitched, I prefer granular synthesis to phase vocoding. I feel
that it's a bit truer to the original timbres of a soundfile (even
though attacks gets smeared). I suppose it's because it's using the
actual original sound rather than a sine tone resynthesis...
I like all those YouTube videos where they take songs that perhaps I
wouldn't normally like such as Justin Bieber songs (no offense meant
to pd-list Bieber fanatics) and stretch them out something like 1000x times
and all of a sudden you have this beautiful, ambient drony soundscape.
I forget if they're using granular synthesis or paulstretching though so
maybe it's not proper evidence to support me liking granular synthesis...
Like any other technique, they can suffer if overused though...

Derek



=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] a multislider GUI as abstraction

2016-06-28 Thread Derek Kwan
Hello,

I suppose this response is to no one in particular but I like talking to
Alex so I'll reply to him =).

As per the abstraction vs externals for gui stuff debate, I have a few
general thoughts/observations:

At least in my personal experience, I haven't had much luck with GUI
abstractions. It seems like a lot of them that I at least have
investigate date back to the pd-extended era of things and thus rely a
lot of all the libraries provided with pd-extended, which loaded all the
libaries as a default so they didn't have follow an
libraryname/objectname convention of declaration. So I have to find out
all the library dependencies and get them on my computer and if I don't
want to automatically load all the libraries at start, I have to dig
through and try to find where all these objects are within the
subpatches of subpatches of abstractions to where these objects are and
add the libraryname/ (or I suppose I could do a [declare -lib
libraryname] too, I suppose that makes more sense). At least to me, not
just externals but abstractions suffer from maintenance issues as well.
At least with externals, compilation lends itself to more of a
standalone mindset without this pure data library dependency hell
(although of course externals upon compilation can suffer from this as
well). Perhaps this is a historical issue though and now that
PD-extended is being phased out, this situation going forward would be
less of an issue. 

Also, perhaps it is just my own failing as a PD programmer, but I've
never felt entirely comfortable with multiplicity in a graphical
programming language. Like say, I want a 100x120 grid of toggle boxes
that fits within a 640x480 rectangle and all their backgrounds are black
and their Xs are yellow and each toggle box is hot so when you select
one, it dumps out a list of all the values. Plus, every 500 ms I want
the backgrounds of all the toggle boxes to flash blue so it's a clear
visual cue that's where a downbeat is. It feels like in this case, I'm
going to be making a lot of objects and connecting a lot of cords or do
a clickable canvas or use structs (I think there was an abstraction that
did this?) or something like that. At least for me, it feels way more
natural to use a text-based language vs a graphic-based language to do a
whole lot of one particular thing and keep track of it all and thus I'd
lean more towards external vs abstraction. Plus with an external you get
more flexibility with what you can do rather than be limited to using
Pure Data objects to try to achieve your goals, although I can see that
perhaps in a lot of cases this flexibility is not needed. 

I don't know, I'm sort of rambling and losing my train of thought here
lol. I'm glad this topic is being brought up though, it's making me
reconsider abstractions and costs and benefits or doing abstractions vs
externals. Maybe I just need to familiarize myself more with things you
can do with canvases and how to do iteration in Pure Data =).

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Best way to install Pd on Raspberry Pi

2016-06-22 Thread Derek Kwan
hello,

you should move the pd binary to /usr/local/bin/

That directory should already be in your PATH and typically binaries any
user can run are put there (if you make install from source, it goes
there as well).

Once you've moved the pd binary to /usr/local/bin, you can type pd not
matter what directory you're in and it'll run.

Derek

> Yep,
> 
> Raspberry Pi 3
> Raspbian Jessie
> ++
> 
> Jack
> 
=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Proposal new default linux desktop config path

2016-05-19 Thread Derek Kwan
On May 09, Winfried Ritsch wrote:
> This is not urgent and can wait until next version but since already 
> discussed, here my proposal:
> 
> Like discussed in "[PD] Preferred/best practice for loading external objects" 
> thread also config files should be made to freedesktop standard conform
> like described in
> 
>  https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
> 
> from 
> $(HOME)/.pdsettings to
> 
> (suggestion)
> $(HOME)/.config/pd/settings.conf
> 
> so configs from one computers home can be copied to another on migration, 
> upgrade.
> 
> mfG 
>  Winfried Ritsch
> 

Hello,

Sorry for jumping on this late but I'm on a Linux box as well and it
looks like pd already makes a folder pure-data in .config and stores
a list of the recently opened files to recentfiles.conf so I'd like to
slightly modify your suggestion to:

${HOME}/.config/pure-data/settings.conf

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [OT] choice of sound cards for 16 output channels

2016-05-07 Thread Derek Kwan
On May 07, Jaime Oliver wrote:
> Hi Derek, 
> 
> Do you have the UFX working properly in Ubuntu?
> 
> Are you able to control the hardware from there? like setting the gain or 
> compressor or phantom power for a mic for example?
> 
> best,
> 
> J
> 

Hello,

I have the little brother UCX with less ins/outs but it's only halfrack
size instead of full rack (handy for throwing into an old GPS device
case and taking to gigs!), but I'm assuming that the software situation
will be similar. The way to control these interfaces from the computer
is TotalMix and as far as I know, RME only makes these for Windows and
OS X only and there's no Linux clone. Looking on my install of Ubuntu
Studio, there's Linux clones of the software for the Hammerfall devices,
but the UC* series isn't a part of that (and the original UC without the
X isn't even class compliant). I haven't really done any massive
multichannel recording stuff, I'm a percussionist by training so I
usually use the UCX for live processing myself with Pure Data or
Supercollider or on the rare occassion record myself so at most the
number of mics I have going in at one time have been about two or three.
I could imagine it being a hassle if you're trying to close-mic a
chamber to even larger ensembles if you're stuck with adjusting the
gains of even 8 separate inputs with just the knob...

Here's the big problem (even outside of that) though and imho a pretty
big design flaw: you CAN'T set phantom power to the individual XLR ins
from the interface itself. I remember spending hours trying to figure it
out... What the interface allows though is to set separate presets so
what I did is I went on a friend's Mac, opened up TotalMix and saved all
the possible 2^2 = 4 phantom power combinations for the 2 XLR ins of my
interface (off/off, on/off, off/on, on/on). So I just set the preset
combo in the knob I want. The UFX has 4 XLR ins = 4^2 = 16 possible
combinations for phantom on/off... I just looked it up and it notes that
it has 16 presets for EQ/Low cut but I'm assuming you can use those to
set phantom as well since the UCX can? I'm not sure since I don't have
access to a UFX so you might have to investigate that further...

I got my UCX when I was still a OSX user so I didn't consider these
options at the time... but I'm pretty happy with using the interface
under Linux with the minor (for my small-scale stuff) hassle of only
being able to control settings via the one knob on the device.

I'm hoping that with the (very) slowly growing popularity of the Linux
desktop via Steam games and dissatisfaction with W10/OSX that pro audio
companies will pay more attention to Linux in the future. We finally got
our first commercial DAW in Bitwig a while back and I think Reaper is
finally making its way to Linux. Until then, it's sort of like being a
second-class citizen in the pro audio world using Linux, but I'd much
rather use it over the two major alternatives... There's great
open-source options for Linux, but the larger commercial software
companies don't pay us much attention just yet... 

Hope this helps!

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [OT] choice of sound cards for 16 output channels

2016-05-07 Thread Derek Kwan
> Hello,
> 
> With the following configuration :
> Ubuntu 16.04
> Pd-0.47.0
> 
> I need to find a solution to send sounds on 16 different speakers.
> What is your advice regarding the purchase of USB sound cards under
> Linux with this configuration ? For you, which sound cards are more
> willing to do this job ?
> 
> 


I'm running Ubuntu 16.04 and I have an RME UCX that I pretty much love.
It's got 8 analog outs built into the device (well, 7 and 8 are mashed
together in the form of a stereo quarter inch out) but then you get 8
more with ADAT and 2 with SPDIF. The UCX has a big brother UFX that has
even more outs. I use my UCX with the JACK Audio Connection Kit and then
use Pure Data (or SuperCollider, or Ardour, or Audacity, or,.. pretty
much anything) to talk to JACK. JACK is basically a middle man between
your soundcard and everything else and it works great.

Well, pretty much all you need is a class compliant audio interface so
be on the lookout for those. Unfortunately, audio interface companies
don't like to make drivers for Linux but with the interface being class
compliant, that doesn't matter.I think it was mentioned earlier that the
Focusrite Scarlett 18i20 is an option. There's a handful of them out
there.. hope this helps!

Derek
 
=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [PD-announce] Oops, test3 bad, test4 up now

2016-05-06 Thread Derek Kwan
> Sorry for the noise -
> 
> I broke the variable delay reader in 0.47-0test3 - I've uploaded test4
> to replace it... http://msp.ucsd.edu/software.htm etc. as usual.
> 
> cheers
> Miller
> 

Hello,

I'm not sure if it matters all that much but "DSP" in the Pd window next
to the checkbox is different from previous versions. It's of a smaller
font and not bolded. I've actually been using that to tell the
difference between your test I compiled from source and the older
apt-get installed one =P. I like it better the old way (always helpful
when things are easier to read) but it's no huge deal if you feel
strongly otherwise.

Also, in terms of the file prompts for openpanel/savepanel/open/save, is
it possible to have a "Create New Folder" button? Also, a detailed list
view option (name/size/type/date) would be nice at some point but it sounds
like a whole lot more work and it's not exactly something I've been
absolutely dying without... but the new folder button would be nice =).
Thanks for all your hard work!

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [PD-announce] Oops, test3 bad, test4 up now

2016-05-02 Thread Derek Kwan
Hello, 

Is it possible to have a finer-grained zoom? 

Forgive the toy metaphors, but at least on my setup (Ubuntu
Studio/basically Xubuntu 15.10, 1920x1080 res), there's only two zoom
levels: the regular Lego size, and the pretty huge Duplo size. Ideally
it'd be useful to have some steps in the middle, some transitionary
Lego/Duplo hybrid steps. Thanks!

Derek

> Sorry for the noise -
> 
> I broke the variable delay reader in 0.47-0test3 - I've uploaded test4
> to replace it... http://msp.ucsd.edu/software.htm etc. as usual.
> 
> cheers
> Miller
> 

=====
Derek Kwan
www.derekxkwan.com

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


[PD] A_DEFSYM/A_SYMBOL A_DEFFLOAT/A_FLOAT differences?

2016-05-01 Thread Derek Kwan


Hello list,

What are the differences between A_DEFSYM and A_SYMBOL and also
A_DEFFLOAT and A_FLOAT?

In my situation, I'm updating an object that used to take A_DEFSYM as a
first argt and A_FLOAT as a second argt, but I want to take a variable
number of arguments now so I'm just replacing those with A_GIMME in
class_new (and then passing t_symbol *s, int argc, t_atom *argv instead
of t_symbol *s, t_floatarg f into the class's _new). Then I'm
type-checking each argt of the t_atom by A_SYMBOL and A_FLOAT and
getting their contents with atom_getsymbolarg and atom_getfloatarg
respectively. However, things seem not to work the same... It could be
other bugs I've introduced but could this be also due to going from A_DEFSYM
to A_SYMBOL (and perhaps the same for float)? If so, is there a way to
typecast to the DEF versions?

Thanks!

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [PD autotools on debian 8.4 broke

2016-04-26 Thread Derek Kwan
> > apt-get build-dep puredata
> > finds no puredata source package
> 
> you probably need a `deb-src` line in your /etc/apt/sources.lists file.
> 

This is somewhat related... I haven't updated to the new Ubuntu 16.04
LTS yet (still on 15.10), but are there plans of doing snappy packages
as well as debs?

Derek

=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Good Time Stretching patches/advice?

2016-04-21 Thread Derek Kwan
On Apr 21, S.E.P. wrote:
> Hey Derek (and list)
> 
> Thanks for the clarification. I put together a test patch for your
> fgraintstr~ (tesuto.pd) and tested it with the attached .wav file (you need
> to click on the "read" message). It would seem it works without inputting
> any values into the left inlet, which is tantamount to a freeze, I
> assume...?
> 
> I'm not sure what a good grain rate is... maybe in the 20s or 30s. In
> general, it sounds a bit fuzzy and electronic and the harmonic spectrum is
> very unstable... but I'm probably doing something wrong. Any more tips?
> 

Hey, 

I've attached a patch for you to test out. It sounds fine with smaller
soundfiles, but kinda gets unstable with larger soundfiles due to the
heaviness of the abstraction...I wrote the abstraction originally for a
piece that I ported from supercollider that live-stretches a kalimba to
something like 100 times it's original length so I didn't have to use
super long soundfiles. I also had the grainrate around 5 ms so that
means grains at length 5*32  = 160 ms. Also I didn't do any
normalization in these abstractions (but in my external version I do) so
note in the test patch I've attached I multiply the outputs of the
fgrainstr abstractions by 0.25. Note that fgrainstr2 doesn't do any
transposition, but it deals better with longer sound files due to
indexing and float precision. 

If you know how to compile stuff, you can also check out my external
version that's also on my github page in the dxkpure repository. That
whole thing is sort of in a pre-release stage because I haven't figured
out the build process quite yet and my main machine runs ubuntu so I can
only provide externals built for linux so far... I've kind of moved my
efforts from making abstractions to making externals in interests of
efficiency...

Derek

=
Derek Kwan
www.derekxkwan.com
#N canvas 293 330 747 610 10;
#X obj 165 126 soundfiler;
#X obj 169 358 dac~ 1 2;
#X obj 177 62 openpanel;
#X obj 183 36 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 519 76 vsl 15 128 0.01 1 0 0 empty empty rate 0 -9 0 10 -262144
-1 -1 12700 1;
#X floatatom 508 217 5 0 0 0 - - -, f 5;
#X obj 183 326 *~ 0;
#X obj 189 228 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 571 78 vsl 15 128 -12 12 0 0 empty empty transposition 0 -9
0 10 -262144 -1 -1 6350 1;
#X floatatom 560 217 5 0 0 0 - - -, f 5;
#X msg 569 40 0;
#X msg 512 36 1;
#X obj 533 13 loadbang;
#X obj 329 26 loadbang;
#X obj 83 227 table test1;
#N canvas 1 59 912 532 phreadabstract 0;
#X obj 336 28 inlet;
#X obj 467 28 inlet;
#X obj 336 50 t b f;
#X obj 242 126 samplerate~;
#X obj 296 187 /;
#X obj 293 297 phasor~;
#X obj 296 228 * 1;
#X obj 350 172 t b f;
#X obj 293 341 outlet~;
#X text 385 28 sample size;
#X text 508 27 rate;
#X text 34 17 PHASREAD~: sample indexer abstraction;
#X obj 577 31 inlet;
#X text 614 32 phase;
#X text 30 75 in1: sample size;
#X text 28 94 in2: rate;
#X text 29 114 in3: phase;
#X text 28 154 DEREK KWAN \, 2016;
#X text 36 35 using phasor~;
#X obj 293 319 *~ 1;
#X connect 0 0 2 0;
#X connect 1 0 7 0;
#X connect 2 0 3 0;
#X connect 2 1 4 1;
#X connect 2 1 19 1;
#X connect 3 0 4 0;
#X connect 4 0 6 0;
#X connect 5 0 19 0;
#X connect 6 0 5 0;
#X connect 7 0 6 0;
#X connect 7 1 6 1;
#X connect 12 0 5 1;
#X connect 19 0 8 0;
#X restore 205 190 pd phreadabstract;
#X obj 172 244 fgrainstr2~ test1 10;
#X obj 347 247 fgrainstr~ test1 10;
#X text 393 223 SOUND ON/OFF;
#X obj 325 309 *~ 0;
#X obj 377 225 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X text 214 225 SOUND ON/OFF;
#X msg 158 91 read -resize -maxsize 4e+06 \$1 test1;
#X obj 151 292 *~ 0.25;
#X obj 363 274 *~ 0.25;
#X text 48 26 Derek Kwan \, 2016;
#X text 47 42 fgrainstrtest;
#X connect 0 0 15 0;
#X connect 2 0 22 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 4 0 15 1;
#X connect 6 0 1 0;
#X connect 6 0 1 1;
#X connect 7 0 6 1;
#X connect 8 0 9 0;
#X connect 8 0 17 2;
#X connect 10 0 8 0;
#X connect 11 0 4 0;
#X connect 12 0 11 0;
#X connect 12 0 10 0;
#X connect 13 0 11 0;
#X connect 15 0 16 0;
#X connect 15 0 17 0;
#X connect 16 0 23 0;
#X connect 17 0 24 0;
#X connect 19 0 1 0;
#X connect 19 0 1 1;
#X connect 20 0 19 1;
#X connect 22 0 0 0;
#X connect 23 0 6 0;
#X connect 24 0 19 0;
___
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list


Re: [PD] Good Time Stretching patches/advice?

2016-04-20 Thread Derek Kwan
On Apr 20, S.E.P. wrote:
> @Derek Kwan Many thanks for your reply and your patches. I confess that I
> have a poor understanding of arrays and the related object and tend to use
> objects/abstractions that take an audio/open panel input. With your
> patches, as with some others I've seen, I need to put "pos (samples)" into
> the inlet and I'm not sure what that means. Also, while the 1st argument is
> the name of the array to be read, I don't know what "catchname" means for
> the 2nd argument.

Hey,

Sorry, I should get around to documenting these abstractions a bit more.
fgrainstr2 is a bit more well documented than fgrainstr and I'll get
around to specifying things more clearly, which I will do right now...

THe first inlet in both are like tabread4~ in that you index into your
soundfile (loaded by soundfiler) by sample. A normal sample rate Pure
Data is run at is 44100 Hz (you can find this value by banging
samplerate~) so to read through a soundfile at a normal rate, you'd
index into the object (tabread4 or my fgrainstr) from 0 to 44100 over 1
second to play back the first second at a normal speed and from 0 to
22100 over 1 second to play through the first half second at half speed.
You could do this indexing by using something like phasor~ or even
easier, line~ by first sending the message 0 to line~ then the message
"44100 1000" to ramp to 44100 over 1 second.
The audio examples included with Pure Data (namely the ones at the
beginning of B) and the help file for soundfiler explain how PD deals
with soundfiles more clearly that I just did... 

As for the specifics in dealing my abstractions, you only really need to
deal with fgrainstr and fgrainstr2 (but make sure that
fgrain/fgrain2/tukeymaker are in the same folder). You don't even need
to open those other abstractions, they're just there to help the main
abstractions fgrainstr and fgrainstr2 do their business.

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] Good Time Stretching patches/advice?

2016-04-19 Thread Derek Kwan
> Obviously, I'd prefer a unified solution that works for a wide variety of
> samples. Any advice?

Hello SEP (and list),

Another route is the granular route. 

I've got a bunch of abstractions that attempt to replicate
SuperCollider's Warp1 UGen. Basically the idea is to have grains occur
one after another in a more-or-less fixed rate (with some randomness
thrown in so you don't get a pitch from the grains themselves) and
choosing the duration of each grain so that they overlap each other (I
can't remember what I chose, I think something like 32x overlap? I think
the default rate in Warp1 is 8x but I never managed to get it sounding
good with that low of an overlap). I think as well as time-stretching,
you have the option of pitch shifting (at least in fgrainstr).

fgrainstr needs fgrain (which is a "grain voice") and tukeymaker (which
defines the window shape of each grain) and uses tabread4 if I remember
correctly. 

fgrainstr2 needs fgrain2 and tukeymaker and uses tabplay to get around
the issue of very large index numbers.

With these abstractions, you can go down to a playback rate of 0. I
didn't really code these abstractions with other eyes in mind, but I
think they're commented enough to be useful.

I've also started making these into externals but I'm not sure if they
sound as good as the abstraction versions quite yet (still working out
the kinks). Instead of a Tukey window, I opted in this case to use a
standard cosine window. 

Here's the link to the abstractions on my github:
https://github.com/derekxkwan/pure-data-abstractions/tree/master/fgrain

Derek Kwan


=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] [Scope~] (was Re: can signal inlets that aren't the main inlet have float or message methods?)

2016-04-09 Thread Derek Kwan
> On Fri, Apr 8, 2016 at 10:52 PM, IOhannes m zmölnig <zmoel...@iem.at> wrote:
> > On 04/08/2016 10:29 PM, Alexandre Torres Porres wrote:
> >> Then, cyclone does not come as a library for a long time, and "Scope~" is
> >> not part of a "-lib"
> >
> > but it is!
> > it is part of a library named "Scope~.pd_linux" which contains a single
> > object "Scope~".
> 
> He's building 'scope~.pd_linux'. With a symlink 'Scope~.pd_linux' and
> the alias in the C code, wouldn't that be all right?
> >
> > mdsf
> > IOhannes
> >
> 

Hello,

I'll chime in here because I've been working on this cyclone update as
well (Alexandre, hop in here if I'm wrong about any of this). To my
knowledge, there isn't any symlinking going on in the build process. I'm
using Ubuntu on my machine and I just built it myself and all I get out
for scope is scope~.pd_linux. All references to Scope has been changed
to scope in Makefile and the source (sickle/Scope.c) got changed to
sickle/scope.c. There's no symlink to scope~.pd_linux at all. Do we want
to change the Makefile to build a symlink to the built scope~ (and also,
what are the reasons for doing so)? Also. is there a symlink equivalent
for Windows machines? I'll be honest, I'm not really familiar with
Makefile building beyond the very basic stuff (I didn't even know you
could make symlinks in Makefiles for instance)...

Derek

=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-30 Thread Derek Kwan
> > an example of an object that uses it? where exactly is this function?
> Scope~ itself uses sic_setup (for the leftmost inlet).
> -Jonathan 


Hello,

So I gave using class_domainsignalin() and class_addfloat() a shot in
the setup of both main and proxy classes in my test external which is what
sic_setup() is doing for audio rate objects with separate float methods and it
does work for the main inlet (which was never an issue) but produces the
same results as before for the proxy inlet. Maybe I'm not using the
proxy class correctly? And sic_inlet is just a wrapper around
inlet_new() and sets a default value of the signal via pd_float() so
that's no help to me either.

Basically what connects the proxy inlet to the main class from what i've
found here:
http://puredata.info/Members/mjmogo/proxy-example-for-pd.zip/view is
that the proxy class is declared as a member in the main class's struct
(t_proxy pxy for example) and serves as the dest for a new inlet
declared in the main class's new method through:

inlet_new( -> x_obj,  -> pxy.l_pd, 0, 0);

which creates a control inlet but all of the proxy's class's methods are
accessible (besides dsp methods since it's a control inlet, I've
tried...) or this other way I've tried:

inlet_new( -> x_obj,  -> pxy.l_pd, _signal, _signal);
or
inlet_new( -> x_obj,  -> pxy.l_pd, _signal, 0);

both of which create an audio inlet and none of the proxy class's
methods are accessible (including the class_domainsignalin() and
class_addfloat() methods declared in the proxy class) but you can get
the signal value going into the second inlet from the main class's perform 
method. 

The other things that sic_setup does is if passed SIC_NOMAINSIGNALIN,
just make's a float inlet and if passed no float function, makes just a
regular signal inlet that interprets floats as signals via
CLASS_MAINSIGNALIN().

I'll do more digging...

Derek
=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-29 Thread Derek Kwan
> 
> Actually after looking deeper I have no clue.  It looks like cyclone has 
> some helper functions to set a separate float method for the leftmost signal 
> inlet.  If you can figure out how it works perhaps you can try doing the same 
> for a secondary inlet.

Hello Jonathan,

Yeah, scope's setup calls sic_setup (defined in shared/sickle/sic.c)
which takes in a dsp function and a float function as input. Looks like
if there is a float function passed, the signal stuff gets handled by
class_domainsignalin() while floats are handled by class_addfloat() and
there isn't a float function passed, it's just all handled by
CLASS_MAINSIGNALIN(). I know CLASS_MAINSIGNALIN() and class_addfloat()
are called from input into the main inlet, and i suppose
class_domainsignalin() is too? There's another function sic_inlet() in
sic.c but it looks like just a wrapper around inlet_new() and
pd_float().

Derek
=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-29 Thread Derek Kwan
(oops, forgot to cc the list, sorry iohannes, still getting a handle on
this...) 

> did i miss something?
> why would it not work with proxy inlets?
>

With the code I found here:
http://puredata.info/Members/mjmogo/proxy-example-for-pd.zip/view
tackling proxy inlets (basically making a proxy class and pointing the
destination of inlet_new to it), declaring inlet_new with 0's
as the selectors (as in the example code) would result in a control
inlet (when I'm wanting a signal inlet)  but methods like class_addfloat
declared in the proxy class's setup would work.

Passing _signal as the first selector in inlet_new
would result in a second inlet, but the values of the signal were only
accessible within the main class's dsp/perform methods and not within
dsp/perform methods declared in proxy's setup but more importantly, the
class_addfloat and so on methods declared in proxy's setup aren't
callable.

Derek
-- 
=====
Derek Kwan
www.derekxkwan.com

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


Re: [PD] garbled list digests?

2016-03-28 Thread Derek Kwan
Hello Dan,

I get plaintext digests and I haven't noticed any inconsistencies,
although I admit I haven't paid too close attention to the formatting.
Perhaps that's an option? Although you do miss out on the benefits of
MIME...

Derek
=
Derek Kwan
www.derekxkwan.com

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


Re: [PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-28 Thread Derek Kwan
Thanks, John, I'll take a look myself and yeah, I'm not super-optimistic
either. There are calls to class_addcreator for "scope~" and
"cyclone/scope~" but yeah, "Scope~" is a weird one...

Derek

=====
Derek Kwan
www.derekxkwan.com

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


[PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-26 Thread Derek Kwan
Hello,

Thanks for pointing me to the concept of proxy inlets.

I've tried to implement a test external using this code:
http://puredata.info/Members/mjmogo/proxy-example-for-pd.zip/view

In the linked code, they're basically making another class of type t_proxy:

typedef struct _proxy {
t_pd l_pd;
// if you want to maintain a pointer to your main class,
// if not, besure to change the 'init' function
void *yourclass;
} t_proxy;

This struct is declared as a member of the main class's struct:

typedef struct _yourclass {
t_object x_obj;
t_proxy pxy;
} t_yourclass;

and the new inlet is created in the "new" method of the main class
(yourclass_new) but with the destination pointing to the proxy rather than
the main class. This is done via:

inlet_new( -> x_obj,  -> pxy.l_pd, 0, 0);
with no selectors passed. However, this only makes a control inlet.

Trying out:

inlet_new( -> x_obj,  -> pxy.l_pd, _signal, _signal);
makes a signal inlet, but it seems like the signal values are only
accessible via the main class's dsp/perform methods and not via the
dsp/perform methods i tried to make for proxy (I call CLASS_MAINSIGNALIN in
both the setup of the main class and the proxy class). That's not a huge
deal, but I also declared a float method within proxy's setup via
class_addfloat(proxy_class, (t_method)proxy_post); where proxy_post just
posts to the pd window whenever it receives a float and this method only
seems to be called when I declare the inlet the first way with no selectors
(when it's a control inlet) and not the second way passing the signal
selectors (making it a signal inlet). In the second way, the float just
acts like a substitute for a signal (which is what I don't want).

My main goal is to have a second signal inlet that can also accept floats
not as a substitute for a signal but calls a separate method. Any ideas?
Thanks!

Derek
-- 

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


[PD] can signal inlets that aren't the main inlet have float or message methods?

2016-03-25 Thread Derek Kwan
Hey y'all,

I'm actually the one that needs this, I've been working with Alexandre on
updating Cyclone.

If further info is needed, the method I've been trying to use is inlet_new.

The part of documentation that seems to drive the nail in the coffin is
this bullet-point:

"It is not possible to add methods for more than one selector to a right
inlet. Particularly it is not possible to add a universal method for
arbitrary selectors to a right inlet."

found on this page:
http://pdstatic.iem.at/externals-HOWTO/pd-externals-HOWTOse8.html#x10-41000C



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


[PD] Nettles. Was: Cyclone: List of Issues with existing objects by Alexandre Porres

2016-02-21 Thread Derek Kwan
Hello all,

Long time lurker, first time e-mailer. I get the digest version of these
e-mails so apologies if I'm not responding to the thread correctly.

I'm mostly active on the PD FB group and have been working with Alexandre
on updating cyclone, I've done a control rate pong so far and I'm finishing
up control and audio rate rounds, and he suggested I poke my head in. I
haven't been keeping up with the list that well but he gave me a gist of
the ongoings of this thread.

I used to use OS X mainly and used Max a lot (last version I heavily used
was 6) but about a year/year and a half ago got bit by the open-source bug
in a major way, wiped my hd, installed Ubuntu and never looked back. I do
miss a lot of features of Max (particularly matrixctrl, but I really don't
know how the GUI side of PD works) but at the same time appreciate that PD
is its own beast. I don't quite remember how soundfiles worked in Max, but
I really dig the PD approach to them in that everything is an array and I
like the C-like structs, although I haven't quite utilized them in my own
work quite yet. Maybe it's because PD is more spare object-wise or maybe
it's just that I've had more time to learn about programming and
DSP-related things, but working in PD feels less boxing-glovesy than
working in Max. That being said, I don't necessarily advocate an
object-by-object port of any version of Max, I don't want to see PD become
a Max ripoff, but at the same time I think PD can take a lot of inspiration
from some of the functionality of Max, esp. GUI-wise. Furthermore, it would
be nice to have some of that Max-inspired functionality centered in a
common library easily available to PD users. I remember in older days
making patches for people and just telling them to download PD-extended
since I knew all the objects I used were included in that particular
flavor. Anyways, I digress. I think it'd be a good idea to at least
maintain libraries like Cyclone and make sure that their documentation is
clear and accessible and while we're at it, update Cyclone with some of the
newer Max ideas, either direct ports or inspired by objects. The graphical
programming paradigm and Max have evolved a lot since Max 4 and I don't see
the harm in taking advantage of these new developments and putting them
into PD.

Derek

-- 

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